一、引言
在工程設(shè)計(jì)過(guò)程中我們經(jīng)常會(huì)碰到一些點(diǎn)數(shù)據(jù),其基本數(shù)據(jù)結(jié)構(gòu)就是x,y,z三個(gè)坐標(biāo)值。這些數(shù)據(jù)點(diǎn)的來(lái)源一般有這幾種情況:1、由程序算出,一般以data文件格式存放;2、工程藍(lán)圖,一般以數(shù)據(jù)表格形式呈現(xiàn)或者有EXCEL格式文件;3、激光掃描儀掃描的點(diǎn)云文件,一般以asc等格式存放。這些點(diǎn)的使用大體分兩種情況,一種是將每個(gè)點(diǎn)按真實(shí)的點(diǎn)(CATIA中的point元素來(lái)處理,比如飛機(jī)蒙皮界面輪廓;另一種是將大量點(diǎn)總體看成點(diǎn)云數(shù)據(jù)來(lái)進(jìn)行逆向處理,比如汽車車身曲面的逆向工程點(diǎn)云。本文將重點(diǎn)介紹處理這些點(diǎn)的幾種方法:
二、 手工輸入數(shù)據(jù)
這種方法當(dāng)然是最直接有效,也最容易想到的方法。直接在CATIA的part文件中創(chuàng)建幾何圖形集,然后用“點(diǎn)”工具的三坐標(biāo)項(xiàng),手工輸入數(shù)據(jù)。當(dāng)然這種方法面對(duì)上百個(gè)以上的點(diǎn)效率就會(huì)顯得非常低。點(diǎn)工具坐標(biāo)輸入如1圖所示:

圖1 點(diǎn)工具坐標(biāo)輸入
宏程序法
CATIA支持幾種宏程序語(yǔ)言,如Basicscript,Vbscript,Jscript。我們這已Vbscript腳本語(yǔ)言宏程序來(lái)講講如何用宏程序輸入數(shù)據(jù)點(diǎn)。宏程序法優(yōu)點(diǎn)在于因?yàn)槭鞘止ぞ幊趟运x入數(shù)據(jù)的可控性,靈活度很高,后期處理數(shù)據(jù)點(diǎn)也可以結(jié)合程序處理。
1) 創(chuàng)建宏
創(chuàng)建過(guò)程是:首先打開(kāi)CATIA,新建一個(gè)文件,然后進(jìn)入菜單Tools,打開(kāi)子菜單Macro下的Macros。
在MacroName下的輸入框中命名一個(gè)宏的名字,如Macro1。然后按Creat按鈕,此時(shí)打開(kāi)MacroEditor窗口。在此窗口的文本框內(nèi)輸入宏的代碼,保存后,該宏就創(chuàng)建完成了。

圖2 宏程序創(chuàng)建
2) 運(yùn)行宏
首先選擇宏,因?yàn)楹昕杀4嬗趦?nèi)部文件,也可保存于外部文件,所以首先在宏窗口的左下角的下拉框中選擇是內(nèi)部文件還是外部文件。如果是內(nèi)部文件,則在宏窗口的文本框中會(huì)顯示已創(chuàng)建的一系列宏,選擇需要的宏,按下Run按鈕,宏結(jié)果就可顯示于窗口內(nèi)。如果是外部文件,則選擇宏窗口左側(cè)的Select按鈕,選擇宏所在的文件目錄,按下Run按鈕,同樣,宏結(jié)果也顯示于窗口內(nèi)。
3) 數(shù)據(jù)輸入宏程序代碼
已有數(shù)據(jù)存于Excel文件中,利用宏來(lái)讀取Excel文件中的數(shù)據(jù)。如果數(shù)據(jù)以其他文件格式保存,如dat文件格式,可轉(zhuǎn)換為Excel文件格式,或者直接更改代碼,從其他文件中直接讀取。代碼如下:
Language="VBSCRIPT"因?yàn)楸静僮飨到y(tǒng)是windows2000,所以此宏是用vbscript編寫(xiě)的
SubCATMain()
DimpartDocument1AsDocument創(chuàng)建文件
SetpartDocument1=CATIA.ActiveDocument
Dimpart1AsPart創(chuàng)建部件
Setpart1=partDocument1.Part
dimexcelasobject調(diào)用excel對(duì)象
setexcel=getobject("d:外形數(shù)據(jù).xls")飛機(jī)外形數(shù)據(jù)存于d:數(shù)據(jù).xls文件下
利用循環(huán),讀入excel中的數(shù)據(jù)。此數(shù)據(jù)為飛機(jī)外形上的一些點(diǎn)的坐標(biāo)值,這些值分別存于excel的表單1中的B、C、D中,把這些值分別賦給變量x,y,z
i=1
dowhilexlt;gt;””
x=excel.worksheets(1).cells.range("B"trim(cstr(i))).value
y=excel.worksheets(1).cells.range("C"trim(cstr(i))).value
z=excel.worksheets(1).cells.range("D"trim(cstr(i))).value
定義點(diǎn)坐標(biāo)
DimhybridShapePointCoord1AsHybridShapePointCoord
SethybridShapePointCoord1=hybridShapeFactory1.AddNewPointCoord(x,y,z)
輸入點(diǎn)
hybridBody1.AppendHybridShapehybridShapePointCoord1
part1.InWorkObject=hybridShapePointCoord1
i=i+1
loop
part1.Update
Endsub
按照創(chuàng)建和運(yùn)行宏的步驟,把以上代碼輸入到自定義的一個(gè)宏的代碼區(qū)中,保存并運(yùn)行。這樣,“數(shù)據(jù).xls”文件中的所有外形數(shù)據(jù)都被讀取出來(lái)。CATIA系統(tǒng)為這些點(diǎn)自動(dòng)編號(hào),設(shè)計(jì)人員可從當(dāng)前界面左側(cè)的樹(shù)形擴(kuò)展目錄中看到所有的點(diǎn)。
三、點(diǎn)云數(shù)據(jù)處理法
可以將點(diǎn)文件視為點(diǎn)云文件,如果是EXCEL文件需轉(zhuǎn)換為txt文件,然后改后綴為ASC等格式。然后在DSE模塊,用導(dǎo)入數(shù)據(jù)功能將其導(dǎo)入。導(dǎo)入的數(shù)據(jù)在模型樹(shù)中將以“cloud”特征呈現(xiàn)。如圖3所示。

圖3 點(diǎn)去數(shù)據(jù)處理
圖4 集合圖形集
然后用“cloud/point”命令,可將“云特征”輸出為一個(gè)集合圖形集,幾何圖形集內(nèi)存放的是點(diǎn)信息。如下圖所示。這種方法最為有效,但“cloud/point”只有在CATIAV5R20以上版本才有。早期版本只能使用前兩種方法。
相關(guān)文章
- 2021-09-08BIM技術(shù)叢書(shū)Revit軟件應(yīng)用系列Autodesk Revit族詳解 [
- 2021-09-08全國(guó)專業(yè)技術(shù)人員計(jì)算機(jī)應(yīng)用能力考試用書(shū) AutoCAD2004
- 2021-09-08EXCEL在工作中的應(yīng)用 制表、數(shù)據(jù)處理及宏應(yīng)用PDF下載
- 2021-08-30從零開(kāi)始AutoCAD 2014中文版機(jī)械制圖基礎(chǔ)培訓(xùn)教程 [李
- 2021-08-30從零開(kāi)始AutoCAD 2014中文版建筑制圖基礎(chǔ)培訓(xùn)教程 [朱
- 2021-08-30電氣CAD實(shí)例教程AutoCAD 2010中文版 [左昉 等編著] 20
- 2021-08-30電影風(fēng)暴2:Maya影像實(shí)拍與三維合成攻略PDF下載
- 2021-08-30高等院校藝術(shù)設(shè)計(jì)案例教程中文版AutoCAD 建筑設(shè)計(jì)案例
- 2021-08-29環(huán)境藝術(shù)制圖AutoCAD [徐幼光 編著] 2013年P(guān)DF下載
- 2021-08-29機(jī)械A(chǔ)utoCAD 項(xiàng)目教程 第3版 [繆希偉 主編] 2012年P(guān)DF