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

        ?

        AutoCAD擴(kuò)展屬性在規(guī)劃成果數(shù)據(jù)庫(kù)建設(shè)中的應(yīng)用

        2022-07-08 03:27:16汪建波孫亦東
        城市勘測(cè) 2022年3期
        關(guān)鍵詞:數(shù)據(jù)庫(kù)規(guī)劃信息

        汪建波,孫亦東

        (景德鎮(zhèn)市自然資源勘測(cè)規(guī)劃院,江西 景德鎮(zhèn) 333300)

        1 引 言

        AutoCAD作為一款主流的矢量制圖軟件,圖形采集與編輯功能強(qiáng)大,矢量化效率高,并且支持多種二次開(kāi)發(fā)形式,因此該軟件在測(cè)繪、建筑、規(guī)劃等領(lǐng)域得到了廣泛的應(yīng)用,但其屬性結(jié)構(gòu)簡(jiǎn)單。ArcGIS軟件在空間分析和空間數(shù)據(jù)管理方面能力突出[1],所以近年來(lái)規(guī)劃成果矢量數(shù)據(jù)庫(kù)建設(shè)都要求采用ArcGIS平臺(tái)的Geodatabase文件格式,但規(guī)劃成果大量以AutoCAD格式存儲(chǔ),而且AutoCAD格式作為空間數(shù)據(jù)存儲(chǔ)的現(xiàn)狀在很長(zhǎng)一段時(shí)間內(nèi)不會(huì)改變,因此基于AutoCAD格式的規(guī)劃成果數(shù)據(jù)庫(kù)建設(shè)是急需解決的問(wèn)題。目前,基于AutoCAD格式數(shù)據(jù)進(jìn)行空間數(shù)據(jù)建庫(kù)的幾種常見(jiàn)方法[2~4],包括Arctoolbox、ArcGIS for AutoCAD插件、FME轉(zhuǎn)換、AE開(kāi)發(fā)等方式,利用Arctoolbox方法將空間數(shù)據(jù)和屬性人為分開(kāi),容易導(dǎo)致圖形和屬性信息出錯(cuò),而且不能根據(jù)特定的需要做出相應(yīng)的變化,ArcGIS for AutoCAD插件方法步驟煩瑣,并且依賴(lài)插件,F(xiàn)ME轉(zhuǎn)換方法需要購(gòu)買(mǎi)FME,生產(chǎn)成本大,并且在注記信息轉(zhuǎn)換方面存在一定問(wèn)題[5],AE開(kāi)發(fā)方法程序開(kāi)發(fā)量大,功能單一,且存在不確定性,本文提出了利用AutoCAD .NET API開(kāi)發(fā)組件對(duì)圖形屬性信息進(jìn)行自定義擴(kuò)展,實(shí)現(xiàn)在dwg文件中進(jìn)行圖形和屬性一體化存儲(chǔ)、顯示、編輯,然后利用ArcGIS自帶工具通過(guò)圖元句柄作為關(guān)鍵字進(jìn)行圖形和屬性的連接,最后完成空間數(shù)據(jù)庫(kù)建設(shè)的方法,并對(duì)規(guī)劃成果中常見(jiàn)的AutoCAD代理圖形無(wú)法轉(zhuǎn)ArcGIS格式的問(wèn)題提出了解決方法。

        2 技術(shù)路線

        AutoCAD .NET API由不同的DLL文件組成,使用AutoCAD .NET API提供的程序集,我們可以通過(guò)編程對(duì)AutoCAD和圖形文件進(jìn)行操作,并且可以使用許多不同的編程語(yǔ)言和開(kāi)發(fā)環(huán)境。因AutoCAD中實(shí)現(xiàn).NET API具有方便易用、功能強(qiáng)大、適用更廣、效率高等的幾大優(yōu)點(diǎn)[6]。

        本文采用C#編程語(yǔ)言,利用AutoCAD.NET API二次開(kāi)發(fā),先將存量的dwg文件按數(shù)據(jù)標(biāo)準(zhǔn)添加自定義擴(kuò)展屬性,完成在dwg文件中進(jìn)行圖形和屬性一體化存儲(chǔ)、顯示、編輯,然后提取自定義擴(kuò)展屬性導(dǎo)出為Excel表格,再利用Arctoolbox工具轉(zhuǎn)為ArcGIS圖形數(shù)據(jù),最后通過(guò)圖元句柄(Handel)作為關(guān)鍵字將圖形數(shù)據(jù)和自定義擴(kuò)展屬性數(shù)據(jù)連接,完成Geodatabase數(shù)據(jù)庫(kù)的建立。技術(shù)路線如圖1所示。整個(gè)過(guò)程除了添加和導(dǎo)出自定義擴(kuò)展屬性進(jìn)行了程序開(kāi)發(fā),其他的都是運(yùn)用了ArcGIS自帶的Arctoolbox工具,節(jié)省開(kāi)發(fā)成本,提高建庫(kù)效率。

        圖1 技術(shù)路線

        3 技術(shù)實(shí)現(xiàn)

        3.1 自定義擴(kuò)展屬性的實(shí)現(xiàn)

        自定義擴(kuò)展屬性的實(shí)現(xiàn)包括數(shù)據(jù)屬性標(biāo)準(zhǔn)設(shè)計(jì)和自定義擴(kuò)展屬性添加,下面以控制性詳細(xì)規(guī)劃地塊屬性標(biāo)準(zhǔn)設(shè)計(jì)為例。

        (1)控制性詳細(xì)規(guī)劃地塊屬性標(biāo)準(zhǔn)設(shè)計(jì)

        根據(jù)AutoCAD的擴(kuò)展屬性結(jié)構(gòu)組碼值特點(diǎn)和控制性詳細(xì)規(guī)劃地塊屬性值添加要求,控制性詳細(xì)規(guī)劃地塊屬性標(biāo)準(zhǔn)定義如表1所示。

        控制性詳細(xì)規(guī)劃地塊屬性結(jié)構(gòu) 表1

        (2)自定義擴(kuò)展屬性添加

        由于AutoCAD實(shí)體對(duì)象只有幾何信息,如果要表達(dá)某些有特殊含義的自定義屬性信息時(shí),如控制性詳細(xì)規(guī)劃地塊的容積率、綠地率等信息,可以將這些自定義屬性信息加入實(shí)體對(duì)象的擴(kuò)展數(shù)據(jù)中,這樣在dwg文件中完成圖形和自定義屬性一體化存儲(chǔ)。

        自定義擴(kuò)展數(shù)據(jù)信息添加的方法主要有兩種,分別為XData和數(shù)據(jù)詞典的擴(kuò)展方式。根據(jù)數(shù)據(jù)詞典擴(kuò)展方式具有機(jī)制靈活、功能強(qiáng)大、數(shù)據(jù)容量大等優(yōu)點(diǎn)[7]和要添加控制性詳細(xì)規(guī)劃自定義屬性的特點(diǎn),本文采用第二種數(shù)據(jù)詞典的擴(kuò)展方式。

        實(shí)現(xiàn)過(guò)程為首先將控制性詳細(xì)規(guī)劃地塊屬性信息通過(guò)ResultBuffer添加到擴(kuò)展詞典的擴(kuò)展記錄Xrecord中,再通過(guò)擴(kuò)展詞典SetAt()方法將索引關(guān)鍵字和擴(kuò)展記錄寫(xiě)入擴(kuò)展詞典,最后完成圖形對(duì)象自定義擴(kuò)展屬性信息的添加。

        添加自定義擴(kuò)展屬性的核心代碼如下:

        publicstaticvoid AddXRecordToEntity(DataTabledbt,ObjectIdCollectionobjIdCol,stringDataStandardSearchKey)

        {

        foreach(ObjectIdobjIdinobjIdCol) //遍歷選擇集每一個(gè)對(duì)象

        {

        DBObjectobj = objId.GetObject(OpenMode.ForRead);

        DBDictionarydict = obj.ExtensionDictionary.GetObject(OpenMode.ForRead) asDBDictionary;

        if(!dict.Contains(DataStandardSearchKey))

        { XrecordxRec = newXrecord(); //創(chuàng)建擴(kuò)展記錄

        ResultBufferrb = newResultBuffer(); //創(chuàng)建結(jié)果緩沖區(qū)

        for(int i = 0;i

        {

        rb.Add(newTypedValue((1000,bt.Rows[i][1].ToString()));

        rb.Add(newTypedValue(1000,dbt.Rows[i][0].ToString()));

        }

        }

        xRec.Data = rb;

        dict.UpgradeOpen(); //將擴(kuò)展字典切換為寫(xiě)的狀態(tài)

        dict.SetAt(DataStandardSearchKey,xRec); objId.Database.TransactionManager.AddNewlyCreatedDBObject(xRec,true);

        dict.DowngradeOpen();// 將擴(kuò)展字典切換為讀的狀態(tài)

        } }

        3.2 AutoCAD代理圖形無(wú)法轉(zhuǎn)換為ArcGIS的解決辦法

        控規(guī)成果地塊填充有的是非AutoCAD標(biāo)準(zhǔn)填充,如圖2所示,其圖元類(lèi)型為ACAD_PROXY_ENTITY的代理圖形,是無(wú)法直接轉(zhuǎn)換為ArcGIS格式的,要重新對(duì)成果地塊進(jìn)行填充,人工重復(fù)填充效率會(huì)很低,本文采用通過(guò)二次開(kāi)發(fā)將地塊用地性質(zhì)文字注記信息轉(zhuǎn)換為圖形內(nèi)部自定義擴(kuò)展屬性并存放對(duì)應(yīng)圖層,再根據(jù)用地性質(zhì)按控制性詳細(xì)規(guī)劃規(guī)范自動(dòng)填充顏色,處理后的標(biāo)準(zhǔn)填充(圖元類(lèi)型標(biāo)準(zhǔn)填充Hatch)結(jié)果如圖3所示。

        圖2 AutoCAD代理圖形(非標(biāo)準(zhǔn)填充)

        圖3 處理后的標(biāo)準(zhǔn)填充

        3.3 Geodatabase數(shù)據(jù)庫(kù)建立

        規(guī)劃成果各類(lèi)指標(biāo)屬性信息都是通過(guò)圖則(.jpg格式)的方式記錄,在AutoCAD界面選中相應(yīng)地塊,根據(jù)圖則信息,利用自定義擴(kuò)展屬性添加技術(shù),完成每個(gè)地塊的指標(biāo)屬性的錄入,這樣就把地塊的各類(lèi)指標(biāo)屬性隱藏在AutoCAD圖形文件中,完成圖形和自定義屬性一體化存儲(chǔ)。

        再用Arctoolbox下轉(zhuǎn)換工具CADToGeodatabase將AutoCAD圖形轉(zhuǎn)換為Geodatabase,這個(gè)時(shí)候的圖形數(shù)據(jù)沒(méi)有擴(kuò)展屬性,再利用AutoCAD二次開(kāi)發(fā)提取自定義擴(kuò)展屬性,存儲(chǔ)為Excel格式,最后選擇幾何實(shí)體有且全圖內(nèi)唯一的圖元句柄(Handle),作為連接關(guān)鍵字,實(shí)現(xiàn)圖形與其對(duì)應(yīng)屬性數(shù)據(jù)(包括擴(kuò)展對(duì)象數(shù)據(jù))的連接,連接設(shè)置如圖4所示,完成空間數(shù)據(jù)庫(kù)的建立。

        圖4 連接

        4 應(yīng)用展示

        本文利用AutoCAD .NET API開(kāi)發(fā)組件對(duì)圖形屬性信息進(jìn)行自定義擴(kuò)展,借助ArcGIS軟件自帶的Arctoolbox工具,成功實(shí)現(xiàn)了景德鎮(zhèn)市控制性詳細(xì)規(guī)劃數(shù)據(jù)成果從dwg存儲(chǔ)方式到ArcGIS空間數(shù)據(jù)庫(kù)的建設(shè),較好地實(shí)現(xiàn)了工作目標(biāo)。在AutoCAD界面為了方便查看擴(kuò)展屬性,本文實(shí)現(xiàn)了鼠標(biāo)懸停和表格兩種方式顯示,如圖5、圖6所示。最終控制性詳細(xì)規(guī)劃數(shù)據(jù)庫(kù)成果展示如圖7所示。

        圖5 懸停顯示擴(kuò)展屬性

        圖6 表格顯示擴(kuò)展屬性

        圖7 控制性詳細(xì)規(guī)劃地塊Geodatabase數(shù)據(jù)庫(kù)

        5 結(jié) 語(yǔ)

        本文以景德鎮(zhèn)控制性詳細(xì)規(guī)劃地塊入庫(kù)為例,利用AutoCAD .NET API添加自定義擴(kuò)展屬性,實(shí)現(xiàn)在AutoCAD環(huán)境下圖形實(shí)體編輯和屬性信息錄入,完成在dwg文件中進(jìn)行圖形和屬性一體化存儲(chǔ)、顯示、編輯,從而實(shí)現(xiàn)空間數(shù)據(jù)和屬性數(shù)據(jù)處理的整體化,高效率;然后利用ArcGIS自帶的工具完成圖形和屬性連接,完成GIS空間數(shù)據(jù)庫(kù)的建設(shè),顯著提高生產(chǎn)效率;并對(duì)AutoCAD代理圖形無(wú)法轉(zhuǎn)為ArcGIS格式提出了解決辦法。經(jīng)實(shí)踐,此方法除了在規(guī)劃成果數(shù)據(jù)庫(kù)建設(shè)中應(yīng)用,也非常適合對(duì)dwg格式的歷史AutoCAD成果進(jìn)行處理,具有很好的應(yīng)用價(jià)值。

        猜你喜歡
        數(shù)據(jù)庫(kù)規(guī)劃信息
        規(guī)劃引領(lǐng)把握未來(lái)
        快遞業(yè)十三五規(guī)劃發(fā)布
        商周刊(2017年5期)2017-08-22 03:35:26
        訂閱信息
        中華手工(2017年2期)2017-06-06 23:00:31
        數(shù)據(jù)庫(kù)
        多管齊下落實(shí)規(guī)劃
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        迎接“十三五”規(guī)劃
        展會(huì)信息
        日本免费一区二区三区影院| 97SE亚洲国产综合自在线不卡| 久久久婷婷综合五月天| 蜜桃久久综合一区二区| 中文字幕亚洲欧美在线不卡| 久久黄色国产精品一区视频| 人妻少妇精品视频三区二区一区| 国产成熟人妻换╳╳╳╳| 久草视频福利| 久久精品av一区二区免费| 日韩精品一区二区三区在线视频| 麻豆影视视频高清在线观看| 久久er国产精品免费观看8| 在线免费观看亚洲天堂av| 久久99热只有频精品8国语| 激情综合丁香五月| 亚洲v日本v欧美v综合v| 成人一区二区三区蜜桃| 国产在线视频一区二区天美蜜桃| 毛片大全真人在线| 免费一级特黄欧美大片久久网| 国产熟女自拍视频网站| 24小时免费在线观看av| 亚洲看片lutube在线观看| 黄色毛片视频免费| 白白白色视频在线观看播放| 日日噜噜夜夜狠狠视频| 国内老熟妇对白xxxxhd| 久久丁香花综合狼人| 谷原希美中文字幕在线| 色哟哟精品视频在线观看| 伊人久久大香线蕉免费视频| 午夜av福利亚洲写真集| 麻豆国产一区二区三区四区| 欧美孕妇xxxx做受欧美88| 国产呦系列呦交| 国产一区白浆在线观看| 亚洲h在线播放在线观看h| 国内精品一区二区2021在线 | 综合网在线视频| 中国av一区二区三区四区|