亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于AutoCad和OracleSpatial建立地形圖數(shù)據(jù)建庫

        2017-06-09 10:10:05周義軍
        科技資訊 2017年11期

        周義軍

        摘 要:一直以來,基礎地形圖在建庫時,都需要將DWG格式文件轉(zhuǎn)換為SHP格式文件。該文從另一個角度,利用AutoCAD Map和Oracle spatial的二次開發(fā),探索出一種DWG數(shù)據(jù)直接建庫的方法,并且嘗試的解決了歷史數(shù)據(jù)的存儲、更新和分析等問題。

        關鍵詞:Oracle Spatial REALDWG ODP.NET

        中圖分類號:TP311 文獻標識碼:A 文章編號:1672-3791(2017)04(b)-0022-03

        目前,基礎地理信息數(shù)據(jù)建庫的思路和方案有很多,多數(shù)以GIS數(shù)據(jù)作為基本數(shù)據(jù)進行數(shù)據(jù)庫建設。但就我國的具體情況來看,各個城市院多沿用以前的作業(yè)模式,繼續(xù)采用AutoCAD生產(chǎn)地理信息數(shù)據(jù),在建庫前,需將DWG數(shù)據(jù)轉(zhuǎn)化成GIS數(shù)據(jù),這樣一來建庫的效率就降低了。

        該文從另一個角度,利用AutoCAD Map和Oracle spatial的二次開發(fā),探索出一種DWG數(shù)據(jù)直接建庫的方法,并且嘗試的解決了數(shù)據(jù)的存儲、更新和分析等問題。

        1 Oracle Spatial及其在空間數(shù)據(jù)存儲方面的應用

        1.1 Oracle Spatial簡介

        Oracle是一種對象—關系數(shù)據(jù)庫,它支持自定義的數(shù)據(jù)類型,可以用數(shù)組、結(jié)構(gòu)體或者帶有構(gòu)造函數(shù)、功能函數(shù)的類來定義自己的對象類型。這樣的對象類型可以用于定義屬性列的數(shù)據(jù)類型,也可以用來創(chuàng)建對象表。而Oracle Spatial也正是基于此種特性所開發(fā)的一套空間數(shù)據(jù)處理系統(tǒng)。Oracle Spatial定義了一套用于存儲和操作空間數(shù)據(jù)的對象,可以存儲點、線、面和多點、多線、多面及弧、圓或者混合對象。Oracle定義的空間數(shù)據(jù)存儲對象與OGC定義的簡單要素規(guī)范一致,對象涵蓋了空間對象的各種類型。

        1.2 Oracle Spatial用于空間數(shù)據(jù)存儲

        Oracle Spatial主要通過元數(shù)據(jù)表、包含空間數(shù)據(jù)字段的要素類表和空間索引來管理空間數(shù)據(jù),在此基礎上提供一系列空間查詢和空間分析的函數(shù),讓用戶進行深層次的GIS開發(fā)。

        Oracle Spatial使用元數(shù)據(jù)表來記錄存儲每個要素類的表,元數(shù)據(jù)表存儲了空間數(shù)據(jù)的數(shù)據(jù)表名稱、空間字段名稱、空間數(shù)據(jù)的坐標范圍、坐標參考信息以及坐標維數(shù)說明等信息。用戶必須通過查詢元數(shù)據(jù)表才能知道是否存在某個用于存儲空間數(shù)據(jù)的表。而每個存儲空間數(shù)據(jù)的表除了包括各個屬性字段以外,必須包括一個類型為SDO_GEOMETRY的字段,用于存儲要素類的空間數(shù)據(jù)。如圖1所示,SDO_GEOMETRY里面的元素包括:要素的類型( SDO_GTYPE) ;要素的坐標(SDO_ORDINATES或是SDO_POINT) ;要素坐標的解析方式( SDO_ELEM_INFO);要素的空間坐標參照系(SDO_SRID) 。SDO_GEOMETRY數(shù)據(jù)類型是存儲空間數(shù)據(jù)的關鍵,通過對這一數(shù)據(jù)類型的解析,可以把坐標還原為要素,并顯示出來。

        每個要素類除了對應一個存儲該要素類型表以外,還需要有對應的索引表,采用R樹索引或四叉樹索引的方式對該要素類建立索引,用來提高空間查詢和空間分析的速度。

        1.3 Oracle Spatial空間數(shù)據(jù)訪問方法

        Oracle除了提供Oracle Spatial用于存儲空間數(shù)據(jù)以外,對Oracle Spatial也提供多種訪問方法,主要包含OCI、OO4O、ODP.Net等。

        OCI是Oracle調(diào)用接口(Oracle Call Interface)的簡寫,它是ORACLE提供的面向C語言程序員的編程接口,同時提供了用于Boland C++和MicrosoftVisual C++的庫。

        OO4O是Oracle本身所提供的OLE對象(OracleObjects forOLE) ,可以用來快速訪問Oracle Spatial數(shù)據(jù)。

        ODP.Net是Oracle調(diào)用接口(Oracle Data Provider for.NET)的簡寫,是ORACLE提供的面向C#語言程序員的編程接口,同時提供用于C#.Net的庫。

        該文采用通過ODP.Net進行二次開發(fā),可以實現(xiàn)Oracle Spatial空間數(shù)據(jù)的解析、讀取和保存,并實現(xiàn)與客戶端所處理數(shù)據(jù)的交互,從而可以在多個客戶端實現(xiàn)對空間數(shù)據(jù)的互操作。

        2 AutoCAD Map與Oracle Spatial互動原理

        Autodesk軟件提供了強大的ReaLDWG組件庫為二次開發(fā)提供了便利,通過二次開發(fā)可在脫離AutoCADMap軟件環(huán)境下讀取、修改dwg格式的數(shù)據(jù)文件的功能定制,在運行時裝入自定義開發(fā)的應用程序,可實現(xiàn)與AutoCAD Map的交互。而我們也可以通過ODP.Net組件開發(fā)的模式,實現(xiàn)與Oracle數(shù)據(jù)庫的交互。這樣,從理論來說,以二次開發(fā)的程序為橋梁就可使得AutoCAD Map與Oracle Spatial進行交互。例如,通過ODP.Net組件的開發(fā),將Oracle Spatial表中的空間要素解析出來,生成AutoCAD軟件定義的相應對象,并放到相應圖層來加載,如圖2所示。

        3 Oracle Spatial與AutoCAD數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換

        根據(jù)上述的分析,Oracle和AutoCAD都提供二次開發(fā)組件允許定制開發(fā),開發(fā)人員通過統(tǒng)一的開發(fā)平臺將這兩款軟件的功能納入到統(tǒng)一的系統(tǒng)架構(gòu)中是完全可行的。該文采用Visual Studio 2010開發(fā)平臺,引用ODP.Net組件和RealDWG組件,實現(xiàn)了AutoCAD數(shù)據(jù)與Oracle數(shù)據(jù)庫的交互。

        AutoCAD數(shù)據(jù)和Oracle數(shù)據(jù)庫的交互實質(zhì)上是兩個系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)之間的轉(zhuǎn)換。

        數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換分為空間信息的轉(zhuǎn)換和屬性信息的轉(zhuǎn)換。

        3.1 空間信息轉(zhuǎn)換

        AutoCAD的空間數(shù)據(jù)結(jié)構(gòu)有點(DBPoint),塊(BlockReference),文本(DBText),多重文本(MText),線段(Line),Arc(?。喽尉€(Polyline),二維多段線(Polyline2d),三維多段線(Polyline3d),圓(Circle),面(MPolygon),圖案填充(Hatch)等。

        Oracle Spatial的空間數(shù)據(jù)結(jié)構(gòu)有點(Point),多點(MULTIPOI NT),線段(LINE),復雜線段(MULTILINE),曲線(CURVE),復雜曲線(MULTICURVE),面(POLYGON),復雜面(MULTIPOLYGON)。

        根據(jù)兩種數(shù)據(jù)結(jié)構(gòu)的特點,該文依據(jù)表1的對應關系進行空間數(shù)據(jù)結(jié)構(gòu)的底層轉(zhuǎn)換,用“圖形類型”屬性區(qū)分幾何類型。

        3.2 屬性信息的轉(zhuǎn)換

        以塊(BlockReference)為例,將oracle數(shù)據(jù)庫中的塊信息轉(zhuǎn)換成AutoCAD的實體,需將塊的屬性信息,如顏色,圖層,線型,線型比例,線寬,名稱,旋轉(zhuǎn),注釋性,X比例,Y比例,Z比例等信息記錄下來,程序根據(jù)這些信息生產(chǎn)AutoCAD實體。

        4 實驗

        該文以天津市全市域的1∶2000地形圖為實驗數(shù)據(jù),根據(jù)地形圖的特點,通過圖形和屬性的相互轉(zhuǎn)換,將地形圖存儲到在oracle數(shù)據(jù)庫表中,出庫時,依據(jù)數(shù)據(jù)庫表中的空間和屬性信息自動生成AutoCAD實體,輸出到dwg文件總,達到自動符號化的目的,做到了AutoCAD數(shù)據(jù)完全無損的存儲。

        參考文獻

        [1] 曹云剛,范東明.Oracle Spatial 在GIS中的應用[J].測繪, 2002,25(4):167-169.

        [2] H Liang,RW Ding,HX Zheng.The design and application of oracle spatial database[J].Science of Surveying&Mapping,2005(3):92-94.

        [3] 梁鴻,丁仁偉,鄭紅霞.Oracle Spatial空間數(shù)據(jù)庫的設計及應用[J].測繪科學,2005,30(3):91-93.

        [4] R Kothuri,A Godfrind,E Beinct.Pro Oracle Spatial for Oracle Database 11 g[M].Apress Berkelg,2007.

        [5] 郭朝勇.AutoCAD R14二次開發(fā)技術[M].北京:清華大學出版社,1999.

        [6] 董春橋.AutoCAD二次開發(fā)技術[J].土木工程與管理學報, 1999,16(3):45-49.

        [7] 袁源琳,張新長,黃健鋒,等,AutoCAD地形圖數(shù)據(jù)規(guī)整入庫的研究與應用[J].測繪通報,2013(5):84-88.

        [8] 王會然,蔄茂金,甘偉.AutoCAD中地形圖符號、線型及圖案填充的實現(xiàn)方法[J].地礦測繪,2009,25(1):38-40.

        亚洲中文字幕无码永久在线| 国产一区二区三区免费精品视频| 亚洲国产av无码精品无广告| 国产av丝袜旗袍无码网站| 无码国产亚洲日韩国精品视频一区二区三区 | 免费啪啪视频一区| 免费观看视频在线播放| 中文字幕精品一区二区的区别| 麻豆免费观看高清完整视频| 亚洲精品无码人妻无码| www久久久888| 羞羞色院99精品全部免| 久久www免费人成精品| 少妇高潮喷水久久久影院| 日韩在线手机专区av| 日本久久久免费观看视频| 国产精品久久人妻无码| 国产在线手机视频| 加勒比一本大道大香蕉| 一区二区三区人妻少妇| 亚洲第一无码xxxxxx| 一区五码在线| 久亚洲一线产区二线产区三线麻豆| 欧美a级在线现免费观看| 国产剧情麻豆女教师在线观看 | 人妻有码av中文幕久久| 精品无码av一区二区三区| 九九精品视频在线观看| 黑人一区二区三区啪啪网站| 日本av一区二区三区视频| 草草久久久无码国产专区| 国产在线拍偷自拍偷精品| 特级国产一区二区三区| 国产精品久久久久久久| 一级毛片60分钟在线播放| 亚洲男女视频一区二区| 日韩综合无码一区二区| 久久久久久久性潮| 美腿丝袜一区二区三区| 久久九九精品国产av| 久久精品国产亚洲av大全|