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

        ?

        可配置的管線并行檢查程序設(shè)計(jì)與實(shí)現(xiàn)

        2022-03-13 08:51:40錢承軍戴相喜
        現(xiàn)代測繪 2022年6期
        關(guān)鍵詞:設(shè)計(jì)

        錢承軍,戴相喜

        〔1.一汽(南京)科技開發(fā)有限公司,江蘇 南京 211100;2.南京市測繪勘察研究院股份有限公司,江蘇 南京 210019〕

        0 引 言

        地下管線是保障城市運(yùn)行的重要基礎(chǔ)設(shè)施,是城市的“生命線”。隨著城鎮(zhèn)化的快速推進(jìn),城市地下管線的數(shù)量和規(guī)模越來越大,結(jié)構(gòu)層次也越來越復(fù)雜。國內(nèi)很多城市都陸續(xù)開展了地下管線普查工作,全面查清城市范圍內(nèi)的地下管線現(xiàn)狀,獲取了準(zhǔn)確的管線數(shù)據(jù)[1-4]。

        戴相喜等[5-6]設(shè)計(jì)了一套可定制的管線質(zhì)檢模板;嚴(yán)玉瑤等[7-11]基于ArcGIS平臺(tái)設(shè)計(jì)了質(zhì)檢規(guī)則庫;付海龍[12]等基于OSG開源平臺(tái)構(gòu)建了三維管線動(dòng)態(tài)建模與瀏覽平臺(tái),與AutoCAD二維管線數(shù)據(jù)結(jié)合進(jìn)行質(zhì)檢。

        一般基于AutoCAD開發(fā)的管線檢查程序,是將管線數(shù)據(jù)規(guī)范要求的檢查項(xiàng)、檢查條件寫進(jìn)程序內(nèi)部,用戶無法更改。針對不同地區(qū)不同的管線數(shù)據(jù)規(guī)范,需要調(diào)整管線檢查程序內(nèi)部代碼,才能符合當(dāng)?shù)氐墓芫€數(shù)據(jù)檢查標(biāo)準(zhǔn),工作量非常巨大,而且只適應(yīng)程序?qū)?yīng)的規(guī)范要求。

        本文基于AutoCAD平臺(tái)設(shè)計(jì)了一套可配置的并行處理管線數(shù)據(jù)檢查程序,將管線內(nèi)業(yè)數(shù)據(jù)按照檢查類型分為圖形檢查、邏輯性檢查和屬性檢查[13-14]。用戶可以根據(jù)作業(yè)地區(qū)的管線數(shù)據(jù)標(biāo)準(zhǔn),自行配置對應(yīng)的檢查模板,可對不同分組或同組的管線同時(shí)進(jìn)行檢查,由此可以快速確認(rèn)管線數(shù)據(jù)的正確性,保證管線數(shù)據(jù)采集、入庫、更新與共享的精準(zhǔn)和迅速。

        1 功能設(shè)計(jì)

        根據(jù)不同地區(qū)的管線數(shù)據(jù)標(biāo)準(zhǔn),可以制定對應(yīng)的管線數(shù)據(jù)檢查模板。程序通過讀取管線數(shù)據(jù)檢查模板,查找出檢查類型、檢查參數(shù)和檢查條件。然后,需要設(shè)計(jì)一個(gè)圖形實(shí)體屬性信息類(圖1),保存管線圖形中所有對象的基本信息,如ObjectID、Code、點(diǎn)列、實(shí)體句柄、圖層、shapetype和geotype等。當(dāng)檢查開始時(shí),根據(jù)檢查項(xiàng)的要求,讀取管線圖形中所有包含的對象,獲取每個(gè)對象的基本信息,存入圖形實(shí)體屬性信息類中。再根據(jù)檢查條件,從實(shí)體屬性信息類集合中,篩選出滿足條件的基本對象即可。每次根據(jù)檢查條件,直接調(diào)用該集合即可,不必重新遍歷管線圖中所有的對象。最后,程序采用并行處理的方法,對多個(gè)檢查條件進(jìn)行分組,同時(shí)檢查,可以有效地減少人工檢查工作量,大大提高質(zhì)檢效率。

        圖1 圖形實(shí)體屬性類設(shè)計(jì)

        1.1 模板和結(jié)果存儲(chǔ)格式

        根據(jù)不同地區(qū)管線數(shù)據(jù)標(biāo)準(zhǔn),配置不同的模板參數(shù),如檢查規(guī)則、檢查結(jié)果及軟件相關(guān)系統(tǒng)參數(shù),采用SQLite輕型的數(shù)據(jù)庫對這些參數(shù)進(jìn)行存儲(chǔ)。該數(shù)據(jù)庫是遵守ACID的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),處理速度比Mysql、PostgreSQL開源數(shù)據(jù)庫快得多,且與操作系統(tǒng)位數(shù)無關(guān),安裝輕便,使用便捷。另外,SQLite數(shù)據(jù)庫只存儲(chǔ)檢查規(guī)則和結(jié)果,并不存儲(chǔ)數(shù)據(jù)量龐大的城市管線數(shù)據(jù),因此占用的系統(tǒng)資源非常低,可顯著提升管線數(shù)據(jù)的讀取、檢查與存儲(chǔ)效率。

        1.2 圖形基本信息類設(shè)計(jì)

        目前較常見的檢查程序是通過AutoCAD自帶的對象過濾功能,挑選出待檢查的圖形集合,獲取其ObjectID集合,然后根據(jù)需要檢查的管線對象屬性,循環(huán)遍歷ObjectID對象獲取其屬性,再進(jìn)行質(zhì)量檢查。該過濾過程是對整個(gè)圖形對象的遍歷搜索,速度非常慢。并且,獲取到對象的ObjectID集合之后,還要根據(jù)ObjectID反向獲取對象,再讀取對象屬性,這就形成了圖形對象的二次讀取,造成了時(shí)間上的冗余。

        基于上述考慮,設(shè)計(jì)了圖形實(shí)體屬性信息類,該類涵蓋了圖形質(zhì)量檢查所需的大部分信息,僅需1次讀取,就能完成所有檢查。首先根據(jù)導(dǎo)入的AutoCAD管線圖紙,遍歷圖紙中的各個(gè)對象,將各對象的基本信息存儲(chǔ)到實(shí)體屬性信息類中。而實(shí)體屬性信息類存儲(chǔ)在內(nèi)存里,在進(jìn)行圖形質(zhì)量檢查時(shí),程序可以直接從內(nèi)存中獲取所需對象各種屬性信息,省去了2次獲取對象的過程。如果一些特殊屬性檢查,實(shí)體屬性信息類中并不包含該屬性,一方面可根據(jù)類中保存的對象ObjectID,獲取對象,讀出相關(guān)屬性數(shù)據(jù),另一方面,可將該檢查所需屬性信息設(shè)計(jì)到實(shí)體屬性信息類中,作為該類的成員,從而加快檢查速度。

        1.3 檢查項(xiàng)設(shè)計(jì)

        檢查項(xiàng)的讀取可通過設(shè)計(jì)“檢查項(xiàng)選擇”表(圖2)實(shí)現(xiàn),表中可設(shè)置組別、組內(nèi)排序、檢查項(xiàng)名稱、應(yīng)用圖層、幾何類型、參數(shù)和程序類名等。檢查程序根據(jù)組別和檢查項(xiàng)名稱裝載檢查列表,其中,“參數(shù)”列可根據(jù)設(shè)定的“檢查項(xiàng)名稱”設(shè)定適合的檢查參數(shù),“是否使用”列根據(jù)質(zhì)量檢查參照的規(guī)范要求確定是否啟用當(dāng)前檢查項(xiàng)。

        圖2 檢查項(xiàng)選擇表結(jié)構(gòu)

        “檢查項(xiàng)選擇”表可以供用戶根據(jù)不同地區(qū)規(guī)范要求自行設(shè)計(jì),選擇是否使用已有的檢查項(xiàng),確定檢查時(shí)的應(yīng)用圖層種類及數(shù)據(jù)幾何類型等,也可增加新的檢查項(xiàng),制定與之匹配的檢查參數(shù)。

        1.4 應(yīng)用圖層設(shè)計(jì)

        應(yīng)用圖層可設(shè)置屬性檢查適用的檢查圖層范圍,即對何種管線進(jìn)行該項(xiàng)檢查。其中“ALLGX”“ALLSS”是2個(gè)綜合性圖層集合約定,分別表示圖上所有類型管線圖層和所有設(shè)施圖層,例如,“ALLGX”適用于對所有類型管線都適用的檢查,如變徑點(diǎn)檢查、重復(fù)實(shí)體檢查和高程異常檢查等。其余的應(yīng)用圖層類別按照管線種類縮寫進(jìn)行設(shè)計(jì),如“PS”表示排水圖層,“JS”表示給水圖層等。所有圖層名稱(表1)可任意組合在一起,表示對組合中所有管線種類都適用的檢查,如對硬管空間分析檢查時(shí),可將“RQ”“RL”“JS”“GY”“XX”類型組合起來檢查。經(jīng)過組合后,可以有效提取對應(yīng)管線種類的對象,同時(shí)進(jìn)行特定屬性檢查,做到針對特定檢查,應(yīng)檢盡檢。

        表1 圖層名稱縮寫與說明對照表

        1.5 幾何類型設(shè)計(jì)

        “幾何類型”設(shè)置為POINT、LINE、AREA、井室點(diǎn)、井室線、井室面、管溝邊線、管廊點(diǎn)、管廊面和注記圖層等。根據(jù)應(yīng)用圖層的設(shè)定,對滿足圖層種類的管線對象進(jìn)行幾何類型篩選,如要檢查管線的埋設(shè)類型,則應(yīng)用圖層名稱可設(shè)置為ALLGX,幾何類型設(shè)置為LINE,即可檢查所有圖層中線形管線對象的埋設(shè)類型字段。

        1.6 條件檢查設(shè)計(jì)

        條件檢查分為條件必填屬性檢查和條件異常屬性檢查。條件必填屬性檢查對規(guī)范規(guī)定的必填字段值進(jìn)行是否為空檢查,必填檢查字段不能為空;條件異常屬性檢查按照規(guī)范規(guī)定,檢查字段值是否在預(yù)設(shè)范圍內(nèi),如字段值是否在枚舉值之中、字段是否為數(shù)字、是否為空、是否大于某一特定值等,若字段值不在,則判定待檢查的字段值為異常字段值。

        待檢查的字段如果按照“字段名”的格式填寫,沒有說明屬性表名稱,則默認(rèn)讀取管線對象主表中的字段名對應(yīng)的字段值。待檢查字段如果按照“表名.字段名”的格式填寫,表示對管線對象擴(kuò)展屬性表的檢查(圖3),其中表名為對象擴(kuò)展屬性表的名稱。 該檢查字段設(shè)計(jì)實(shí)現(xiàn)了管線實(shí)體任一屬性表屬性字段的檢查以及屬性表之間關(guān)聯(lián)字段的聯(lián)合檢查,增強(qiáng)了檢查的全面性和靈活性。

        圖3 條件檢查中檢查擴(kuò)展屬性表中字段值舉例

        如南京排水標(biāo)準(zhǔn)中規(guī)定所有管線及設(shè)施養(yǎng)護(hù)表的設(shè)施類型字段值不應(yīng)為空,應(yīng)填對應(yīng)枚舉值,則檢查受限字段名1可設(shè)置為ps_managment.feature_type,表示待檢查的擴(kuò)展屬性表名為養(yǎng)護(hù)表(ps_managment),表中的字段名為設(shè)施類型(feature_type)。若管線對象擴(kuò)展屬性表沒有養(yǎng)護(hù)表(ps_management),則程序會(huì)直接在主表中查找設(shè)施類型(feature_type)字段。

        為適應(yīng)多場合檢查,提供更加靈活多變的字段比較方法,根據(jù)常用檢查方法,設(shè)計(jì)了6種字段比較類型,分別為枚舉值集合、值域比較、值域區(qū)間、值域排除、其他字段值比較和正則表達(dá)式匹配,具體標(biāo)識(shí)符和例子如表2所示。

        表2 字段比較類型及其標(biāo)識(shí)符說明

        表2中,唯一值、多個(gè)枚舉值或空值用{}表示,如燃?xì)夤芫€壓力值應(yīng)為“低壓,中壓,高壓”中的一種值,則檢查字段名為壓力(yl),受限值應(yīng)為{低壓,中壓,高壓};值域比較用常規(guī)的比較符合表示(>、>=、<、<=),等于符號(hào)可用枚舉值集合替代,不等于符號(hào)可用值域排除Not In {}符號(hào)表示;值域開閉區(qū)間可用[]和()表示;與其他字段值關(guān)聯(lián)比較可通過關(guān)鍵字Field:表示,可讀取對應(yīng)字段值;字段比較類型支持正則表達(dá)式匹配,更加具有兼容性與開放性。

        首先,設(shè)計(jì)檢查程序1次性讀取“條件屬性檢查”表中所有檢查條件,并按照應(yīng)用圖層和幾何類型進(jìn)行分組。在檢查時(shí),按照組別,過濾滿足圖層和幾何類型要求的管線實(shí)體集合,讀取集合對象的所有屬性信息。然后,對管線實(shí)體集合,按照讀取的檢查條件,逐條件項(xiàng)進(jìn)行檢查。如此設(shè)計(jì),實(shí)現(xiàn)了1次讀取設(shè)定圖層和設(shè)定幾何類型的實(shí)體后,將所有條件屬性檢查全部檢查完畢,保證1次性過濾管線實(shí)體、1次性讀取檢查條件,同類管線實(shí)體同時(shí)進(jìn)行檢查,避免了管線實(shí)體的多次讀取,加快了檢查速度,具體流程如圖4所示。

        圖4 條件必填與異常屬性檢查流程圖

        2 程序?qū)崿F(xiàn)

        本程序基于AutoCAD 2013 64位平臺(tái),使用其提供的.NET API接口,采用C#語言基于.NET FRAMEWORK4.0框架實(shí)現(xiàn)。利用微軟.NET框架的一種自然查詢的SQL語法——語言集成查詢LINQ(Language Integrated Query)技術(shù),使用其AsParallel方法,可實(shí)現(xiàn)并行化查詢。如當(dāng)進(jìn)行某一條件的檢查時(shí),對讀取到的符合檢查條件的多個(gè)實(shí)體的圖形基本信息類進(jìn)行并行同時(shí)檢查,避免了因檢查對象過多而造成的擁塞和排隊(duì)現(xiàn)象。另外,設(shè)置進(jìn)度條為DOTNETARX類庫的ProgressManager,可以明顯改善進(jìn)度條展示效果,無絲毫卡頓現(xiàn)象,高效地增加了檢查速度和效率。

        根據(jù)《南京市管線探測技術(shù)規(guī)程》[15-16]設(shè)計(jì)南京市專業(yè)管線檢查模板,設(shè)計(jì)了空間檢查、邏輯性檢查和屬性檢查3類,每種檢查類型根據(jù)實(shí)際生產(chǎn)需求,設(shè)計(jì)了不同的檢查項(xiàng),具體分類如表3所示。

        表3 檢查項(xiàng)及其測試所用時(shí)間

        3 程序測試

        以南京市某區(qū)一幅管線標(biāo)準(zhǔn)庫成圖數(shù)據(jù)為例,圖上共有30 168個(gè)實(shí)體對象,分別使用戴相喜等[6]的方法和本文方法對該圖中實(shí)體對象進(jìn)行條件必填屬性檢查和條件異常屬性檢查,檢查情況如表4所示。由對比結(jié)果可以明顯看出,本程序的并行處理算法可以超快速完成管線數(shù)據(jù)的檢查,執(zhí)行效率成指數(shù)級(jí)提高,但因讀取的所有實(shí)體對象屬性信息均保存在系統(tǒng)內(nèi)存中,所以運(yùn)行內(nèi)存較戴相喜等[6]的方法多。

        再對該數(shù)據(jù)圖按表3所示三大類檢查進(jìn)行檢查,全部檢查共計(jì)耗時(shí)4′55.9″(表4),檢查表中設(shè)置的條件越多,檢查項(xiàng)越多,執(zhí)行檢查耗時(shí)會(huì)越長。

        表4 條件屬性檢查用時(shí)和內(nèi)存占用比較

        4 結(jié) 語

        本文設(shè)計(jì)并實(shí)現(xiàn)了一種基于Sqlite輕量化數(shù)據(jù)庫的可配置的管線檢查程序,展示了一套實(shí)現(xiàn)字段比較的標(biāo)識(shí)符比較方法。同時(shí),程序基于微軟.NET框架的LINQ并行處理技術(shù),實(shí)現(xiàn)了1次讀取檢查條件和全圖管線實(shí)體的基本信息,同一時(shí)刻多實(shí)體同時(shí)同步檢查,極大降低了管線數(shù)據(jù)檢查的時(shí)間冗余度,提高了管線數(shù)據(jù)質(zhì)量的檢查效率。該檢查程序已成功運(yùn)用于南京專業(yè)管線項(xiàng)目、南京綜合管線項(xiàng)目、上海綜合管線項(xiàng)目以及江西供水項(xiàng)目中。經(jīng)實(shí)際項(xiàng)目驗(yàn)證,該方法運(yùn)行時(shí)間短,檢查效果好,模板配置簡便。因程序需要讀取所有管線對象的信息存放在內(nèi)存中,因此,當(dāng)檢查包含大批量管線對象的數(shù)據(jù)時(shí),會(huì)造成內(nèi)存空間不夠用的情況,后期維護(hù)及增強(qiáng)程序時(shí),可考慮對管線圖進(jìn)行分塊、分區(qū)域檢查,以降低內(nèi)存,保證質(zhì)量檢查過程高效進(jìn)行。

        猜你喜歡
        設(shè)計(jì)
        二十四節(jié)氣在平面廣告設(shè)計(jì)中的應(yīng)用
        何為設(shè)計(jì)的守護(hù)之道?
        《豐收的喜悅展示設(shè)計(jì)》
        流行色(2020年1期)2020-04-28 11:16:38
        基于PWM的伺服控制系統(tǒng)設(shè)計(jì)
        電子制作(2019年19期)2019-11-23 08:41:36
        基于89C52的32只三色LED搖搖棒設(shè)計(jì)
        電子制作(2019年15期)2019-08-27 01:11:50
        基于ICL8038的波形發(fā)生器仿真設(shè)計(jì)
        電子制作(2019年7期)2019-04-25 13:18:16
        瞞天過?!律O(shè)計(jì)萌到家
        設(shè)計(jì)秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計(jì)叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        從平面設(shè)計(jì)到“設(shè)計(jì)健康”
        商周刊(2017年26期)2017-04-25 08:13:04
        人妻无码aⅴ中文系列久久免费| 欧美巨大巨粗黑人性aaaaaa| 青青视频一区| 免费国人成人自拍视频| 亚洲一区二区三区日韩在线观看| 亚洲人成网网址在线看| 亚洲男人天堂| 中国a级毛片免费观看| 一本一本久久久久a久久综合激情| 亚洲天堂一区二区精品| 91精品亚洲成人一区二区三区| 日本一卡2卡3卡4卡无卡免费网站| 国产乱人视频在线看| 免费的黄网站精品久久| 日韩亚洲精品国产第二页| 欧美 日韩 人妻 高清 中文| 天下第二社区在线视频| 亚洲人成综合网站在线| 玩弄放荡人妻一区二区三区| 青青草免费手机视频在线观看| 久久国内精品自在自线图片| 日韩欧美国产丝袜视频| 久久av一区二区三区下| 精品国产av一区二区三四区| 日本一区二区三区人妻| 色一情一乱一伦麻豆| 吃奶还摸下面动态图gif| 亚洲国产不卡av一区二区三区| 在线观看国产视频你懂得| 久久精品国产亚洲av久| 曰本女人牲交全视频免费播放 | 国产精品高清视亚洲乱码有限公司| 久久久人妻丰满熟妇av蜜臀| 日本一本免费一二区| 成人做爰高潮尖叫声免费观看| 无码av永久免费大全| 久久精品国产亚洲av试看| 亚洲毛片一区二区在线| 亚洲综合久久精品无码色欲| 亚洲五月激情综合图片区| 亚洲av网站首页在线观看|