摘 要: 具有CAD功能的軟件系統(tǒng)都會面臨模型文件的處理問題,探討了在HOOPS\ACIS平臺下搭建具有CAD功能的軟件系統(tǒng)以及如何實現(xiàn)CAD文件模型處理的問題,闡述了CAD文件模型處理系統(tǒng)的模塊劃分,簡述了主要模塊的實現(xiàn)功能和采用的技術(shù)實現(xiàn)方式。
關(guān)鍵詞: ACIS;InterOp;PMI;模型分析;模型管理;模型處理
0 引言
基于HOOPS\ACIS搭建的具有CAD功能的軟件系統(tǒng)可以方便實現(xiàn)軟件系統(tǒng)的CAD功能,但在模型數(shù)據(jù)處理上,它只提供了幾種通用的數(shù)據(jù)格式和簡單的數(shù)據(jù)訪問接口,這對于需要對模型數(shù)據(jù)進(jìn)行進(jìn)一步處理的軟件系統(tǒng)來說是無法滿足要求的。
CAD文件模型處理系統(tǒng)從兩個應(yīng)用層次設(shè)計了獨立的模型數(shù)據(jù)處理系統(tǒng),來滿足不同軟件系統(tǒng)的不同需求?;竟δ軐?,滿足軟件系統(tǒng)對模型數(shù)據(jù)的基本操作、顯示和數(shù)據(jù)訪問功能,它分為3個基本模塊來實現(xiàn),分別是模型數(shù)據(jù)導(dǎo)入/導(dǎo)出模塊、模型數(shù)據(jù)管理模塊、模型操作界面模塊;高級功能擴展層,主要實現(xiàn)模型數(shù)據(jù)分析、PMI信息分析,再根據(jù)模型數(shù)據(jù)分析結(jié)果擴展應(yīng)用,它分為兩個基本模塊來實現(xiàn),分別是PMI數(shù)據(jù)處理模塊和模型數(shù)據(jù)分析模塊。
1 模型處理系統(tǒng)架構(gòu)
CAD文件模型處理系統(tǒng)是搭建在HOOPS\ACIS平臺基礎(chǔ)之上的模型處理系統(tǒng),它利用InterOp組件的最新功能和技術(shù)實現(xiàn)導(dǎo)入/導(dǎo)出功能,使用ACIS的實體數(shù)據(jù)組織和存儲CAD模型文件數(shù)據(jù),統(tǒng)一管理模型文件對應(yīng)CAD界面的HOOPS段值,實現(xiàn)了PMI信息分析和提取工作,為用戶提供深入分析模型數(shù)據(jù)的數(shù)據(jù)分析接口,建立了CAD多個模型文件的處理機制,設(shè)計了統(tǒng)一的用戶界面實現(xiàn)模型處理系統(tǒng)與用戶的交互[1]。
依據(jù)CAD文件模型處理系統(tǒng)需要實現(xiàn)的功能需求,把該系統(tǒng)劃分為以下5個子模塊進(jìn)行具體實現(xiàn):
?。?)模型數(shù)據(jù)文件的導(dǎo)入/導(dǎo)出模塊:主要實現(xiàn)模型文件的導(dǎo)入、導(dǎo)出功能。
?。?)PMI數(shù)據(jù)處理模塊:主要實現(xiàn)PMI數(shù)據(jù)分析、PMI數(shù)據(jù)存儲、PMI數(shù)據(jù)處理功能。
(3)模型數(shù)據(jù)管理模塊:主要實現(xiàn)模型數(shù)據(jù)的存儲、模型數(shù)據(jù)的訪問、多文件處理機制、模型數(shù)據(jù)的操作功能、模型數(shù)據(jù)畫圖控制。
(4)模型數(shù)據(jù)分析模塊:主要實現(xiàn)模型數(shù)據(jù)的深入分析、分析數(shù)據(jù)的存儲、分析數(shù)據(jù)的處理功能。
?。?)模型操作界面模塊:主要完成CAD文件模型處理系統(tǒng)與用戶操作的交互工作。
模型處理系統(tǒng)包圖如圖1所示。
2 模型處理系統(tǒng)模塊功能簡述
下面介紹模型處理系統(tǒng)中各個模塊要實現(xiàn)的功能和采用的技術(shù)實現(xiàn)方式。
2.1 模型文件的導(dǎo)入/導(dǎo)出模塊
模型文件的導(dǎo)入/導(dǎo)出模塊主要實現(xiàn)模型文件導(dǎo)入和導(dǎo)出功能,它分為導(dǎo)入接口、導(dǎo)出接口、轉(zhuǎn)換參數(shù)處理三類接口。此模塊使用Spatial公司提供的InterOp組件實現(xiàn)[2]。
InterOp組件基本支持主流工程應(yīng)用程序所需的所有主流3D數(shù)據(jù)交換格式,如IGES格式、STEP格式、UG的prt、ProE的prt、CATIA的CATIA V4、CATIA V5、SolidWorks的sldprt、SAT格式等[3]。如圖2所示,利用InterOp組件實現(xiàn)的導(dǎo)入/導(dǎo)出模塊支持的數(shù)據(jù)接口。
2.2 PMI數(shù)據(jù)的分析、處理模塊
工業(yè)產(chǎn)品制造信息(Product Manufacturing Information,PMI)是管控工業(yè)產(chǎn)品制造的重要方式,目前大的汽車、飛機制造商都在通過CAD中PMI數(shù)據(jù)實現(xiàn)工業(yè)產(chǎn)品生產(chǎn)、檢測自動化,減少人為因素的影響,提高生產(chǎn)、檢測效率。目前支持PMI格式的CAD平臺有CATIA V5、NX、SolidWorks、ProE[3]。此模塊通過InterOp組件實現(xiàn),在老的版本只提供語義PMI功能,在新版本中增加了圖形PMI功能,通過此模塊分析后PMI數(shù)據(jù)解析為語義PMI信息、圖形PMI信息,為后續(xù)CAD圖形操作、檢測分析提供數(shù)據(jù)依據(jù)。PMI支持的制造信息有:標(biāo)注、尺寸公差、幾何公差、形狀公差、位置公差、粗糙度等。
2.3 模型數(shù)據(jù)的處理模塊
模型數(shù)據(jù)的處理模塊,此模塊是模型處理系統(tǒng)的核心模塊,主要提供模型數(shù)據(jù)的存儲、模型數(shù)據(jù)的訪問、模型數(shù)據(jù)的處理等功能,此模塊利用HOOPS\ACIS提供的相關(guān)功能和數(shù)據(jù)格式實現(xiàn)。模型文件通過導(dǎo)入模塊導(dǎo)入CAD文件數(shù)據(jù),如果存在PMI數(shù)據(jù),會通過PMI數(shù)據(jù)分析/處理模塊提取PMI數(shù)據(jù)信息,最后把幾何實體數(shù)據(jù)存儲在處理模塊的ENTITY_LIST數(shù)據(jù)列表中[4]。模型數(shù)據(jù)的訪問和處理功能操作都是圍繞ENTITY_LIST數(shù)據(jù)列表進(jìn)行的。
模型數(shù)據(jù)處理模塊實現(xiàn)了多個模型文件管理功能,是通過數(shù)據(jù)結(jié)構(gòu)map<wstring,ENTITY_LIST*>實現(xiàn)的,這里需要做兩個工作,一是用數(shù)據(jù)結(jié)構(gòu)建立CAD文件與CAD數(shù)據(jù)的對應(yīng)關(guān)系;二是根據(jù)文件結(jié)構(gòu)建立HOOPS中段的對應(yīng)關(guān)系[5]。有了上述兩步的支持就可以方便實現(xiàn)CAD視圖多文件操作,模型數(shù)據(jù)的訪問功能通過數(shù)據(jù)結(jié)構(gòu)訪問對應(yīng)的ENTITY_LIST進(jìn)行操作;CAD界面的操作根據(jù)不同段對應(yīng)的不同KEY值進(jìn)行操作。
在分配HOOPS的KEY值時參考多文件的結(jié)構(gòu)去建立,這是實現(xiàn)CAD圖形操作的基礎(chǔ)。圖3所示為CAD多文件KEY值分配邏輯。
2.4 模型數(shù)據(jù)分析模塊
模型數(shù)據(jù)的處理是由分析模型實體列表來完成的,如果用戶需要進(jìn)一步對模型文件進(jìn)行分析,就需要對所得到的實體做進(jìn)一步的處理,模型數(shù)據(jù)分析模塊就是用來完成此項功能的。
模型分析依據(jù)模型實體的拓?fù)浣Y(jié)構(gòu)來進(jìn)行,拓?fù)鋵ο蟀w(Body)、塊(Lump)、殼(Shell)、子殼(Subshell)、線框(Wire)面(Face)、環(huán)(Loop)、有向邊(Coedge)、邊(Edge)、頂點(Vertex)[6]。利用拓?fù)浣Y(jié)構(gòu)找到對應(yīng)的幾何,然后通過分析幾何提供的幾何信息進(jìn)行相關(guān)處理。
模型分析模塊包含兩類數(shù)據(jù)的分析,一個是幾何分析,它是通過實體的拓?fù)浣Y(jié)構(gòu)分析來完成的;另一類是PMI信息的分析,它是結(jié)合PMI信息分析和幾何信息分析一起來完成的。
2.5 模型操作界面模塊
模型操作界面模塊是模型處理系統(tǒng)的人機交互系統(tǒng),這里用樹形控件實現(xiàn),模型信息數(shù)據(jù)的顯示和操作基于樹形結(jié)構(gòu)之上,便于操作和擴充功能。圖4為模型操作樹形界面。
模型操作界面實現(xiàn)了三類數(shù)據(jù)的操作,第一類是模型數(shù)據(jù)的操作,在模型導(dǎo)入后,根據(jù)模型處理模塊的實體列表,顯示模型數(shù)據(jù)的樹型結(jié)果;第二類是PMI數(shù)據(jù)的操作,它是在存取PMI數(shù)據(jù)時,根據(jù)PMI數(shù)據(jù)處理模塊的PMI數(shù)據(jù),顯示相關(guān)PMI信息;第三類是模型數(shù)據(jù)分析的操作,它是對模型數(shù)據(jù)或者PMI數(shù)據(jù)分析處理后生成的處理結(jié)果的顯示。
3 結(jié)論
基于HOOPS\ACIS的CAD文件處理系統(tǒng)簡要描述了文件模型處理系統(tǒng)的架構(gòu),此架構(gòu)結(jié)合了最新的CAD技術(shù),考慮了模型后續(xù)處理的擴充性,介紹了主要模塊的功能和技術(shù)實現(xiàn),對采用類似技術(shù)和搭建類似模型處理系統(tǒng)有積極的借鑒作用。
參考文獻(xiàn)
[1] 金鑫,王曉英,魏紹榮,等.一種數(shù)據(jù)自動轉(zhuǎn)化軟件的構(gòu)思與設(shè)計[J].微型機與應(yīng)用,2014,33(1):14-17.
[2] 張雯,王守尊.ACIS幾何平臺及其應(yīng)用模式的研究[J].微計算機信息,2006,22(10):253-255.
[3] Spatial Technology. 3D InterOp supported file formats [EB/OL]. [2015-05-25]. http://www.spatial.com/.
[4] 石曉宇A(yù)CIS幾何平臺及其開發(fā)應(yīng)用[J].機電技術(shù),2011(2):22-24.
[5] 吳敏,黃峻森.3D應(yīng)用程序開發(fā)的強大動力——可視化組件HOOPS[J].CAD/CAM與制造業(yè)信息化,2006(7):50-52.