DXF是AutoCAD提供的一種開放的數據格式,是AutoCAD與外部進行信息交換的接口方式,在工程制圖中應用廣泛四。其他較為流行的CAD/CAM(計算機輔助設計/計算機輔助制造)軟件如Solidworks, Pro/Engineer, CATIA, UGNX, Mastercam等均能生成DXF圖形文件,DXF圖形文件已成為公認的工程圖形文件標準之一。DXF圖形文件中信息的存儲形式有二進制和ASCII兩種二進制格式的文件雖然占用存儲空間少,但二進制是機器語言非人類所能直觀讀懂;而ASCII格式的文件以字符串的形式存儲,直觀易讀,便于編程處理。因此,本文使用ASCII格式的DXF圖形文件作為圖源文件,下文提到的DXF文件皆指ASCII格式的DXF圖形文件。 netDxf是針對C#開發的.NET庫[[24],用于在C#中讀寫DXF文件。netDxf可以完整的讀取DXF文件的標題段(HEADER)、表段(TABLES)、塊段(BLO CK) ,實體段(ENTITIES)、物體段(OB7ECTS)等模塊的信息。使用時只需將netDxf. dll文件放入項目文件夾中,編程時添加引用即可使用netDxf的netDxf.DxfDocument類讀取DXF文件信息。使用實例如下:
正因為netDxf使用方便,可完整的讀取DXF文件信息,本文使用netDxf讀取DXF文件實體段(ENTITIES中線型圖元信息:圓弧(ARC、圓(Circle ) ,橢圓(Ellipse、直線(Line、優化多段線(LwPolyline、多段線(Polyline ) ,樣條曲線(Spline)等圖元信息,讀取的圖元類型及圖元信息[[25]如表3.1所示,讀取文件的顯示結果如圖3.1所示。
表3.1中,優化多段線(LwPolyline)為平面多段線其Z坐標值恒為零;多段線(Polyline)為三維多段線;樣條曲線(Spline)為三維非均勻有理B樣條曲線即NURBS曲線;其他圖元皆為三維圖形。
