中文字幕无码日韩视频无码三区

一種GIS與AutoCAD數據交換方法及中間文件的制作方法

文檔序號:9750912閱讀:599來源:國(guo)知(zhi)局
一種GIS與AutoCAD數據交換方法及中間文件的制作方法
【技術領域】
[0001 ]本發明涉及一種GIS與AutoCAD數據交換方法及中間文件,屬于地理信息數據交換領域。
【背景技術】
[0002]近年來,GIS技術已經廣泛應用于經濟社會的各個方面。然而在GIS項目中數據錄入與建庫流程往往要花費大量時間,而且相當耗費精力。鑒于此將現有的地圖和圖形數據進行格式轉換成為GIS數據已經成為GIS行業的普遍要求。GIS地圖數據絕大多數來源于測繪部門,由于傳統測繪行業大都使用計算機輔助設計CAD類軟件,其中AutoCAD是最普遍最常用的CAD軟件,這就出現了從AutoCAD到GIS的數據格式轉換問題。而且在基礎數據的生產過程中,也有必要將與地理信息相關的GIS數據轉化為CAD數據。
[0003]CAD數據與GIS數據的相互轉化可以為數據采集節省大量的人力、物力和時間。盡管大部分GIS軟件都提供了從CAD數據轉化到GIS數據的功能,然而由于不同GIS平臺間的壁皇,當前不同GIS軟件在數據存儲,元數據定義存在不同,缺乏統一的空間數據標準。商業GIS軟件廠商已將各自對空間數據的定義、存儲方式,文件組織結構,和數據轉化的方法等視為其核心技術加以保護,開發和應用人員往往只能通過系統提供的函數接口來操作和訪問數據,而且在GIS數據和CAD數據的相互轉化過程中普遍存在特征丟失、特征變形、數據冗余坐標轉換偏差等問題。
[0004]為解決上述問題AutoCAD提供了與外界進行數據交換的文件(Drawing ExchangeFormat )DXF文件,DXF文件可以存儲為二進制格式或ASCII碼格式,一個完整的DXF文件由標題段(HEADER)、類段(CLASSES)、符號表段(TABLES)、塊段(BLOCKS)、圖元段(ENTITIES)、對象段(OBJECTS)、文件結束符號(組碼為O,組值為EOF)。其中包含了所繪圖形的基本信息,應用程序定義的類的信息,圖形元素的坐標和屬性信息、非圖像對象信息。DXF文件由多行"碼一值〃記錄組成各個段,DXF在表現圖形要素方面以十分精確,由于AutoCAD現在是最流行的cad系統,DXF也被廣泛使用,成為事實上的標準。然而DXF文件的結構較為復雜,完整讀取DXF文件也是一項異常繁瑣的工程。

【發明內容】

[0005]為了解決現有技術的不足,本發明提供了一種GIS與AutoCAD數據交換方法及中間文件,通過定義一個中間文件的標準,中間文件只包含了需要數據交換的基本信息,保留了圖形要素的空間坐標信息和需要的屬性信息,結構簡明,存儲量小,利用該中間文件,在實際的數據交換過程中可根據需要隨時進行拓展,從而能較好的適應實際數據交換的需要。
[0006]本發明為解決其技術問題所采用的技術方案是:提供了一種GIS與AutoCAD數據交換方法,包括以下步驟:
[0007](I)調用ArcGIS平臺的 geodatabase 接口、geometry 接口、car to接口和display 接口從GIS系統的空間數據庫或SHP文件中提取圖形要素的空間信息、屬性信息和矢量符號信息,所述圖形要素包括點、線、面和注記點,空間信息為圖形要素的空間坐標,屬性信息包括圖形要素編碼oid、樣式信息和注記點屬性信息,所述注記點屬性信息包括注記文本字符串和旋轉角度,所述矢量符號信息包括矢量符號編號和矢量描述格式;
[0008](2)生成空的中間文件,調用文件1流接口將步驟(I)提取到的圖形要素的空間信息和屬性信息按照中間文件的格式寫入生成的中間文件中各子文件,包括以下過程:
[0009]點、線、面和注記點的要素編碼oid分別寫入中間文件中點文件、線文件、面文件和注記文件的要素實體號字段;
[0010]點、線、面和注記點的空間坐標分別寫入中間文件中點文件的點xy坐標字段、線文件的線上點坐標串字段、面文件的點坐標序列字段和注記文件的注記點Xy坐標字段;
[0011]點、線、面和注記點的注記文本字符串和旋轉角度分別寫入中間文件中注記文件的注記文本字符串字段和角度字段;
[0012]矢量符號編號和矢量描述格式分別寫入中間文件矢量符號描述文件的子圖號字段和矢量描述字段;
[0013]點、線、面和注記點的樣式信息分別寫入中間文件中點樣式描述文件、線樣式描述文件、面樣式描述文件和注記樣式描述文件的各字段,中點樣式描述文件、線樣式描述文件、面樣式描述文件和注記樣式分別通過各自的樣式ID分別與點文件、線文件、面文件和注記文件關聯;
[0014]將各點文件、線文件、面文件和注記文件的文件名寫入工程圖層總體描述文件;
[0015]上述點文件、線文件、面文件、注記文件、點樣式描述文件、線樣式描述文件、面樣式描述文件、注記樣式描述文件和工程圖層總體描述文件均為中間文件的子文件;
[0016](3)調用1流接口從中間文件各子文件各字段提取待導入的信息,所述待導入的信息包括點文件、線文件、面文件和注記文件中分別記錄的要素實體號,點文件的點Xy坐標、線文件的線上點坐標串、面文件的點坐標序列和注記文件的注記點Xy坐標、注記文本字符串和角度,點文件、線文件、面文件和注記文件中的樣式ID,以及樣式描述文件中的樣式信息;
[0017](4)調用AutoCAD的二次開發接口將步驟(3)提取出的待導入的信息導入AutoCAD的dwg文件,完成數據交換。
[0018]本發明同時提供了一種用于所述數據交換方法的中間文件,所述中間文件由工程圖層總體描述文件、樣式描述文件、點文件、線文件、面文件以及注記文件組成;其中,
[0019]工程圖層總體描述文件用于記錄點文件、線文件、面文件和注記文件的文件名;
[0020]樣式描述文件包括以下子文件:點樣式描述文件、線樣式描述文件、面樣式描述文件、注記樣式描述文件和矢量符號描述文件;其中,
[0021 ]點樣式描述文件用于記錄各個點要素實體的樣式信息,點樣式描述文件的字段包括樣式ID、類型、點大小、顏色、旋轉角度、基點坐標、字體索引、字體名和符號圖片;
[0022]線樣式描述文件用于記錄各個線要素實體的樣式信息,線樣式描述文件的字段包括樣式ID、線類型、線寬和顏色;
[0023]面樣式描述文件用于記錄各個面要素實體的樣式信息,面樣式描述文件的字段包括樣式ID、填充顏色、線型、線寬和邊線顏色;
[0024]注記樣式描述文件用于記錄各個注記要素實體的樣式信息,注記樣式描述文件的字段包括樣式ID、字體名、字大小、角度和顏色;
[0025]矢量符號描述文件的字段包括子圖號和矢量描述,矢量描述包括以下格式:多邊形、線、圓和圓弧;
[0026]點文件用于存儲GIS文件中點的坐標和樣式信息,點文件的字段包括要素實體號、點xy坐標和樣式ID;
[0027]線文件用于存儲組成線要素實體的點的坐標和線的樣式信息,即線的起點和終點的坐標和線的樣式信息,線文件的字段包括要素實體號、線上點坐標串和樣式ID;
[0028]面文件用于存儲組成面要素實體的點的坐標信息和面的樣式信息,面文件的字段包括要素實體號、點坐標序列和樣式ID;
[0029]注記文件用于存儲注記要素實體的坐標信息、注記文本、旋轉角度和注記樣式,注記文件的字段包括要素實體號、注記點Xy坐標、注記文本字符串、樣式ID和角度。
[0030]圖層總體描述文件的后綴名為ly,點樣式描述文件、線樣式描述文件、面樣式描述文件和注記樣式描述文件的后綴名均為sym,矢量符號描述文件的后綴名為sub,點文件的后綴名為pnt,線文件的后綴名為lin,面文件的后綴名為pgn,注記文件的后綴名為anno。
[0031]本發明基于其技術方案所具有的有益效果在于:
[0032](I)本發明通過定義一個中間文件的標準,中間文件只包含了需要數據交換的基本信息,保留了圖形要素的空間坐標信息和需要的屬性信息,結構簡明,存儲量小,在實際的數據交換過程中可根據需要隨時進行拓展,從而能較好的適應實際數據交換的需要;
[0033](2)本發明的中間文件舍棄了與圖形實體坐標幾何和屬性信息無關的其它描述信息,而這些舍棄的信息也是與實際數據轉化無關的;本發明將交換文件DXF由單一文件變成一個中間文件系統,該文件系統自然區分的各圖形實體的類型,在圖形實體的記錄中一個實體為一條記錄,文件結構清晰;
[0034](3)本發明提供的中間文件是通過編程的方式進行AutoCAD和GIS數據的交換、對中間文件的存儲類型沒有做硬性規定,在實際編程過程中所述中間文件可以是文本文件、二進制文件或其他文件類型,而且在中間文件中并沒有定義圖形實體類,用戶可以根據實際需要編寫程序。
【具體實施方式】
[0035]下面結合實施例對本發明作進一步說明。
[0036]提供了一種GIS與AutoCAD數據交換方法,包括以下步驟:
[0037](I)調用ArcGIS平臺的geodatabase 接口、geometry 接口、car to接口 和display 接口從GIS系統的空間數據庫或SHP文件中提取圖形要素的空間信息、屬性信息和矢量符號信息,所述圖形要素包括點、線、面和注記點,空間信息為圖形要素的空間坐標,屬性信息包括圖形要素編碼oid、樣式信息和注記點屬性信息,所述注記點屬性信息包括注記文本字符串和旋轉角度,所述矢量符號信息包括矢量符號編號和矢量描述格式;
[0038](2)生成空的中間文件,調用文件1流接口將步驟(I)提取到的圖形要素的空間信息和屬性信息按照中間文件的格式寫入生成的中間文件中各子文件,包括以下過程:
[0039]點、線、面和注記點的要素編碼oid分別寫入中間文件中點文件、線文件、面文件和注記文件的要素實體號字段;
[0040]點、線、面和注記點的空間坐標分別寫入中間文件中點文件的點xy坐標字段、線文件的線上點坐標串字段、面文件的點坐標序列字段和注記文件的注記點xy坐標字段;
[0041]點、線、面和注記點的注記文本字符串和旋轉角度分別寫入中間文件中注記文件的注記文本字符串字段和角度字段;
[0042]矢量符號編號和矢量描述格式分別寫入中間文件矢量符號描述文件的子圖號字段和矢量描述字段;
[0043]點、線、面和注記點的樣式信息分別寫入中間文件中點樣式描述文件、線樣式描述文件、面樣式描述文件和注記樣式描述文件的各字段,中點樣式描述文件、線樣式描述文件、面樣式描述文件和注記樣式分別通過各自的樣式ID分別與點文件、線文件、面文件和注記文件關聯;
[0044]將各點文件、線文件、面文件和注記文件的文件名寫入工程圖層總體描述文件;
[0045]上述點文件、線文件、面文件、
當前第1頁1 2 
網友詢問留(liu)言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1