acis的實例代碼

acis的實例代碼

ID:26875444

大小:220.50 KB

頁數(shù):39頁

時間:2018-11-29

acis的實例代碼_第1頁
acis的實例代碼_第2頁
acis的實例代碼_第3頁
acis的實例代碼_第4頁
acis的實例代碼_第5頁
資源描述:

《acis的實例代碼》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、第十八章ACIS的實例代碼18.1用Scheme語言生成ACIS程序18.2用Windows控制臺環(huán)境編譯ACIS程序18.3用ACISAppWizard生成應(yīng)用程序框架18.1用Scheme語言生成ACIS程序ACIS從實用角度而言(不準(zhǔn)確地說),是一個大型的專門用于幾何造型的類庫,而它的運行環(huán)境正如上一章所述,是Scheme和C++;本章將就ACIS的Scheme程序、C++的Windows控制臺程序和C++的AppWizard應(yīng)用程序,進(jìn)行實例講解。用Scheme語言生成ACIS程序本節(jié)主要介紹Scheme語言的使用規(guī)則,簡要講解其基本概念如表達(dá)式、變量、函

2、數(shù)、簡單幾何造型功能等,并附有可以直接運行的例程代碼。Scheme語言基礎(chǔ)語法ACIS中的Scheme解釋器是用C++設(shè)計的,ACIS中的幾何造型功能通過對標(biāo)準(zhǔn)Scheme命令的擴展實現(xiàn),這些擴展命令也是用C++設(shè)計的,它們支持ACIS中的高級造型功能,如模型著色和零件管理功能。與C++相比,Scheme是一種快速程序設(shè)計語言,而且簡潔易學(xué)。Scheme語言的語法規(guī)則很少,總結(jié)如下:通過交互地調(diào)用Scheme過程來執(zhí)行程序;Scheme過程及其參數(shù)都被包含在一對圓括號里;圓括號里的部分被稱為Scheme表達(dá)式;表達(dá)式中包含過程名稱和過程參數(shù),具體格式如下:(過程名

3、稱〈參數(shù)1,參數(shù)2,…〉)分號“;”引導(dǎo)的部分為程序注釋。(如何運行ACISScheme解釋器,請參看17.3.1節(jié))表達(dá)式由于Scheme是一種解釋型的程序開發(fā)語言,其表達(dá)式只能在解釋器中執(zhí)行。運行ACIS的SchemeAIDE解釋程序后,就可以在它的“acis〉”提示符下輸入表達(dá)式,在表達(dá)式的結(jié)束處按回車就可以執(zhí)行該表達(dá)式。以下是幾個典型的算術(shù)表達(dá)式:acis〉輸入:(*56)回車輸出:30acis〉(*567)210在Scheme的表達(dá)式中,操作符(如*)后面可以跟任意多個參數(shù),但是其間一定要用‘空格’隔開;并且一個表達(dá)式里可以包含一個或者多個表達(dá)式,如:a

4、cis〉(*(+12)(*56))90理論上,表達(dá)式之間互相嵌套的層數(shù)是沒有限制的,程序員只要匹配好括號就行了。上面表達(dá)式的例子中使用了兩個標(biāo)準(zhǔn)的Scheme內(nèi)部過程進(jìn)行乘法和加法運算,而ACISScheme還擴充了ACIS造型器專用的過程,用戶可以按照上述標(biāo)準(zhǔn)Scheme過程方法調(diào)用這些造型過程,如下面命令可產(chǎn)生立方體:acis〉輸入:(solid:block(position000)(position101010))回車輸出:#[entity10]上述命令產(chǎn)生了一個正方體,如圖17.1.1,共調(diào)用了兩個ACISScheme過程(position和solid:b

5、lock),#[entity10]是該正方體的默認(rèn)名稱。外部描述符Scheme表達(dá)式產(chǎn)生的每個對象都有一個外部描述符和一個內(nèi)部描述符。雖然外部描述符看上去比較簡單,它在與用戶交互過程中有重要作用。它會將一個過程的執(zhí)行結(jié)果反饋給用戶,例如我們前面舉的一些例子中,如果表達(dá)式的計算結(jié)果不被用作其他表達(dá)式的參數(shù),也就是說該表達(dá)式未被嵌套在其他表達(dá)式中,則Scheme解釋器自動將表達(dá)式執(zhí)行結(jié)果的外部描述符輸出,對于算術(shù)運算來說其外部描述符只是一些簡單的數(shù)字,如30,210,90等。ACIS的對象也具有外部描述符,當(dāng)一個含有ACIS造型功能的過程被調(diào)用后,它所產(chǎn)生的ACIS對

6、象的描述符就會被解釋器輸出,其一般格式如下:#[type_of_object<參數(shù)>]下面,我們看一個關(guān)于ACIS對象的例子:;產(chǎn)生一個position對象acis〉(position10,20,30)#[position10,20,30]這個position對象的外部描述符表示了一個x=10,y=20,z=30的坐標(biāo)點。從ACIS的ENTITY類派生的對象的外部描述符與position對象的外部描述符類似,稍微復(fù)雜之處就是,這些東西被組織到所謂的零件(PART)單元中。在ACISScheme解釋器開始運行時,它會自動產(chǎn)生一個編號為1的默認(rèn)零件。下面就是關(guān)于ACI

7、S的ENTITY對象的Scheme例子:;產(chǎn)生一個長方體acis〉(solid:block(position000)(position101010))#[entity10]過程solid:block產(chǎn)生了一個ACIS實體對象,#[entity10]是它的外部描述符,該描述符由兩部分組成,即實體號(1)和零件號(0),實體號可以作為其他過程的參數(shù)。下面就是一個使用實體號的例子:;刪除一個實體acis〉(entity:delete(entity1))()注意:“()”表示空元素,Scheme語言的列表結(jié)構(gòu)中會自動地在列表末尾增加它。變量在Scheme語言中可以用變量名

8、稱記錄變量

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。