資源描述:
《dxf文件實體解析及其java最小包絡(luò)矩形的實現(xiàn)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、DXF文件實體解析及其Java最小包絡(luò)矩形的實現(xiàn)摘要:分析AutoCAD圖形的DXF(DrawingInterchangeFile)文件,提取坐際信息,為實現(xiàn)一個Java程序接口對不同版本的DXF文件的解析,將幾何實體進行分類整合,其中重點介紹了實體P0YLTNE的解析過程。Java對解析結(jié)果的圖形顯示過程中,解決了AutoCAD坐標(biāo)系向Java也標(biāo)系的圖形轉(zhuǎn)換,并實現(xiàn)了包絡(luò)矩形敁小化,簡化了排樣優(yōu)化過程。通過實例驗證上述方法的可行性和有效性,對DXF文件進行排樣優(yōu)化的應(yīng)用起到了東要的啟迪作用。關(guān)鍵詞:0XE;組碼;
2、Java;實體;多段線;解析;坐標(biāo)轉(zhuǎn)換;包絡(luò)矩形中圖分類號:TP391獻標(biāo)識碼:AEntityanalysisofDXFfileanditsJavaimplementationofthesmallestrectangularenvelopeAbstract:DXF(DrawingInterchangeFile)filesofAutoCADGraphicswasAnalyzed,andcoordinateinformationwasextracted,inordertorealizetheanalysisofdiffe
3、rentversionsofDXFfilebyaJavaprogramminginterface,geometryentitieswereclassifiedandintegrated,ofwhichanalyticalprocessofentityPOYLINEwasemphasized.InthegraphicaldisplayprocesstotheanalyticalresultsusedbyJava,graphicconversionfromtheAutoCADcoordinatesystemtotheJa
4、vagraphicscoordinatesystemwasresolved,andalsominimumrectangularenvelopewasachieved,processoflayoutoptimizationissimplified.Throughexamples,itshowsthattheabovemethodisfeasibleandeffective,anditplaysanimportantinspirationontheapplicationoflayoutoptimizationtoDXFf
5、iles.Keywords:DXF;groupcode;Java;entity;polyline;analysis;coordinatetransformation;rectangularenvelope0引言排樣優(yōu)化應(yīng)用范圍非常廣泛,在工程應(yīng)川領(lǐng)域中,型材和棒材卜料、沖裁件排樣、玻璃切割、報刊排版、家具下料、服裝裁剪、皮革裁剪、造船、車輛和發(fā)電設(shè)備生產(chǎn)中都存在大量的下料問題[11。隨著計算機圖形學(xué)和計算機輔助技術(shù)的發(fā)展,人們不斷地研宂各種排樣算法
6、21,從計算復(fù)雜性理論上,優(yōu)化排樣問題是具有最島復(fù)雜性的NP完全問題
7、,由于異形件外形不規(guī)則,旋轉(zhuǎn)方向多樣,排列組合復(fù)雜,傳統(tǒng)方法較難解決其布局,而目前己有一些解決矩形件排樣的成熟算法,因此,將異形件用它們的最佳包絡(luò)矩形來替代,從而把不同樣件的排樣問題最終歸結(jié)為大小不等的矩形排樣優(yōu)化問題,不但能夠使問題得到簡化,并保證求解效率較高[31。每一個DXF文件作力樣料,要想對這呰樣料進行排樣優(yōu)化,首先將每一個樣料的幾何信息進行解析,對解析結(jié)果進行最小矩形包絡(luò)。DXF文件的結(jié)構(gòu)、具體DXF版本的具體實體的解析過程在大量的文獻中已經(jīng)多次出現(xiàn),對此不做贅述。對幾何圖形的組碼介紹盡管多次出現(xiàn),由于不
8、系統(tǒng),不企面,筆者首先將兒何實體歸納總結(jié),以此進行Java解析并分類處理,以實現(xiàn)一個Java程序接口對不同DXF版本文件的解析,接下來對解析結(jié)果進行Java畫圖實現(xiàn),筆者將樣料旋轉(zhuǎn)、包絡(luò)為最小矩形,并做了實例進行對比,通過實例證明此方法簡單、有效地節(jié)省了樣料,提高了工業(yè)原料的利用率。1DXF實體組碼DXF包含的信息數(shù)量極大,由七個段(SECTION)組成,按順序為HEADER(標(biāo)題段)、CALSSES(類段)、TABLES(表段)、BLOCKS(塊段)、ENTITIES(實體段)、OBJECTS(對象段)和THUMB
9、NSILIMSGE(圖形預(yù)覽段),用程序處理DXF文件時,須跳過不必關(guān)心的段,文章按順序提取需要的組處理。在AutoCAD的閣形數(shù)裾庫屮,任何一個圖形實體都是按一定的格式存放的,這種格式就是DXF組碼和組值。圖形對象的幾何信息主要出現(xiàn)在DXF文件的ENTITIES區(qū)域中,筆者針對二維平而圖形,在ENTITIES區(qū)域中對常見曲線的組碼信息進行說明