




已閱讀5頁,還剩61頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
ACIS基礎(chǔ)培訓(xùn)課程安排(第二天),細(xì)節(jié):ACISScheme編程,初始化acisinit.scm布爾類型Boolean字符串類型String列表類型List列表操作Listoperation條件語句ConditionalStatement循環(huán)語句IterationStatement,初始化:acisinit.scm,Scheme程序運(yùn)行時(shí)首先讀acisinit.scm文件,然后執(zhí)行該文件中的配置。由于該文件中需要調(diào)用其他相關(guān)文件,如果這些相關(guān)文件在其定義的路徑“l(fā)oad-path”中沒有找到,那么應(yīng)用程序?qū)⒎祷劐e(cuò)誤環(huán)境變量“A3DT”和“ARCH”需要事先定義Acisinit.scm允許定義和執(zhí)行指定的命令,布爾類型:Boolean,Scheme提供特定的符號來表示布爾值#t-true#f-false可以用在條件語句或循環(huán)語句中,字符串類型:String,字符串類型(String)常量用雙引號包含“sampletext”換碼符是右斜杠“”“C:testsample.sat”所有的路徑都用左斜杠來表示,從而支持Windows和Unix,列表類型:List,(list)創(chuàng)建一個(gè)列表對象acis(list“abc”123(and#t#f)(“abc”123#f)Scheme列表對象包括Scheme對象,列表操作(ListOperation),(car)返回列表中的第一個(gè)Scheme對象acis(definemylist(list“abc”123#t#f)mylistacis(carmylist)“abc”(cdr)返回列表中除第一個(gè)外其余Scheme對象acis(definemylist(list“abc”123#t#f)mylistacis(cdrmylist)(123#t#f)car和cdr也可以結(jié)合使用,列表操作(ListOperation),(length)得到列表中元素的個(gè)數(shù)acis(length(list“abc”123“xyz”567)4(list-ref)返回指定序號的元素(從“0”開始)acis(definemylist(list“abc”123“xyz”567)mylistacis(list-refmylist0)“abc”acis(list-refmylist2)“xyz”,條件語句(Conditionalstatement),(cond)條件語句(cond(conditioncommand)(conditioncommand)(elsecommand)條件運(yùn)算符(或命令)=,=negative?positive?even?odd?zero?not示例(defineA10)(cond(=A10)(print“A=10”)(else(print“A!=10”),Do循環(huán)語句,(do)循環(huán)語句示例(do(i0(+I1)(i9)“finished”)(printi)(print(*ii),有用的ACISScheme,刪除PART中特定的元素(entity:delete(filter:apply(filter:type“edge?”)(part:entities)設(shè)置視圖Camere的目標(biāo)點(diǎn)位置(view:set-target(c)(view:set-target(e),練習(xí):CMN-01.scm,;CMN-01(view:dl)(iso)(defineblk(solid:block(position-50-10-10)(position501010)(definecpyblk(entity:copyblk)(entity:transformcpyblk(transform:rotation(position000)(gvector001)45),練習(xí):CMN-02.scm,;CMN-02(view:dl)(iso)(definep1(position000)(do(i0(+i10)(=i100)(begin(position:set-x!p1i)(solid:spherep15)(iso)(zoom-all),練習(xí):CMN-03.scm,;CMN-03(view:dl)(iso)(defineblk(solid:block(position-25-25-25)(position252525)(zoom-all)(defineedg(pick-edge)(definep1(curve:start-posedg)(definep2(curve:end-posedg)(definerad(/(curve:lengthedg)2)(defiencyl(solid:cylinderp1p2rad)(zoom-all),練習(xí):CMN-04.scm,;CMN-04(maview:delete(part:views)(part:clear)(view:dl)(definewire(wire-body:points(list(position-30100)(position-30-100)(position0-200)(position0200)(position-30100)(definesld(sweep:lawwire(gvector0010)(iso),練習(xí):CMN-05.scm,;CMN-05(maview:delete(part:views)(part:clear)(view:dl)(definewire(wire-body:points(list(edge:circularposition(000)20)(definemyopt(sweep:options“draft_angle”-20)(definesld(sweep:lawwire(gvector0020)myopt)(iso),細(xì)節(jié):ACISWin32控制臺應(yīng)用程序,ACIS_NEW,ACIS_DELETE“outcome”類獲取出錯(cuò)信息,ACIS_NEW和ACIS_DELETE,ACIS_NEW和ACIS_DELETE宏可以提高平臺之間的兼容性和ACIS的內(nèi)存管理機(jī)制幾何提高了性能跟蹤內(nèi)存分配和釋放可以監(jiān)測內(nèi)存泄漏當(dāng)用ACIS_NEW創(chuàng)建的簡單數(shù)據(jù)類型(如枚舉,結(jié)構(gòu)和矩陣等)在用ACIS_DELETE進(jìn)行內(nèi)存釋放時(shí)需要使用STD_CAST來修飾,“outcome”類,ACISAPI返回“outcome”類型的對象“outcome”類包含了下列信息API調(diào)用的結(jié)果,成功/失敗歷史信息-用于UNDO/REDO操作在API_BEGIN宏中,定義了”outcome”類型的變量result在API_END宏中,檢查result,通常用到的成員函數(shù)outcome:ok()outcome:error_number()outcome:bb()/公共板,獲取出錯(cuò)消息,獲取出錯(cuò)消息的函數(shù)find_err_mess(),outcomeresult;result=api_xxxxxx();if(!result.ok()constchar*text=find_err_mess(result.error_number();printf(text);,練習(xí):FromSchemetoC+,創(chuàng)建一個(gè)新的Win32ConsoleApplication(工程名稱:Gear32)參考Scheme聯(lián)系中如何創(chuàng)建齒輪的程序,新建一個(gè)cxx文件,并在其中實(shí)現(xiàn)創(chuàng)建齒輪的API函數(shù)api_make_gear(BODY*elist.add(ENTITY*);得到ENTITY*用重載操作符,就像和使用數(shù)組一樣方便ENTITY_LISTelist;result=api_get_edges(pBody,elist);EDGE*myedge=(EDGE*)elist0;使用索引ENTITY_LISTelist;result=api_get_edges(pBody,elist);elist.init();EDGE*myedge=(EDGE*)elist.next();,ENTITY_LIST類,remove(ENTITY*)只是將之標(biāo)記為Tombstonecount()和iteration_count()count()返回列表中包括標(biāo)記了Tombstone的元素個(gè)數(shù)iteration_count()不包括那些標(biāo)記了Tombstone的元素add(ENTITY*)如果是新添加,返回添加為止的索引編號如果ENTITY_LIST中已存在該ENTITY,則返回該ENTITY在ENTITY_LIST中的位置add(ENTITY*,FALSE)不檢查該E
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年音響調(diào)音員高級技師職業(yè)能力考核試卷
- 從“察”字看中華文化中的洞察與認(rèn)知智慧
- 2025年小學(xué)教師《綜合素質(zhì)》職業(yè)道德考試真題匯編及答案詳解
- 石油化工公司管理制度
- 網(wǎng)吧公共衛(wèi)生管理制度
- 禮品公司電腦管理制度
- 社區(qū)共用空間管理制度
- 職工車輛停放管理制度
- 維護(hù)內(nèi)部穩(wěn)定管理制度
- tcl籌資管理制度
- 呼吸衰竭診療規(guī)范
- MOOC 化工熱力學(xué)-鹽城師范學(xué)院 中國大學(xué)慕課答案
- (高清版)DZT 0064.88-2021 地下水質(zhì)分析方法第88部分:14C的測定合成苯-液體閃爍計(jì)數(shù)法
- 《農(nóng)村小學(xué)生自主閱讀能力培養(yǎng)的策略研究》課題結(jié)題報(bào)告
- 2024年汽車駕駛員(技師)理論考試題及答案
- 四川省宜賓縣2024屆語文八下期末聯(lián)考試題含解析
- 醫(yī)務(wù)人員手衛(wèi)生規(guī)范培訓(xùn)課件預(yù)防醫(yī)院感染的手衛(wèi)生措施
- 電纜敷設(shè)專項(xiàng)施工方案
- 兒童下支氣管肺炎護(hù)理查房課件
- 機(jī)車高壓電器-高壓連接器
- 【課件】Unit+1Reading+and+thinking說課課件人教版必修第二冊
評論
0/150
提交評論