999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ObjectARX鐵路線路調(diào)查內(nèi)業(yè)處理系統(tǒng)的研究

2011-06-07 09:24:38劉小龍賴國(guó)泉
鐵道勘察 2011年2期
關(guān)鍵詞:設(shè)計(jì)

劉小龍 賴國(guó)泉

(1.中鐵第四勘察設(shè)計(jì)院集團(tuán)有限公司,湖北武漢 430063;2.中鐵西北科學(xué)研究院,甘肅蘭州 730000)

鐵路線路在初測(cè)和定測(cè)階段要進(jìn)行線路調(diào)查工作,統(tǒng)計(jì)線路經(jīng)過(guò)地區(qū)影響范圍內(nèi)的各種建筑物類型和建筑物數(shù)量,以便提供給決策者決策和設(shè)計(jì)者設(shè)計(jì)使用。這些建筑物包括道路、房屋、墳?zāi)埂?shù)木和水井等,其特點(diǎn)是類型繁多,數(shù)量大。對(duì)于調(diào)查人員來(lái)說(shuō),其線路調(diào)查工作內(nèi)容包括外業(yè)實(shí)地調(diào)查和內(nèi)業(yè)數(shù)據(jù)處理。針對(duì)外業(yè)實(shí)地調(diào)查,除了加強(qiáng)調(diào)查者工作強(qiáng)度外,再無(wú)其他方法提高工作效率,要提高線路調(diào)查工作效率只有考慮內(nèi)業(yè)數(shù)據(jù)的處理。近年來(lái)運(yùn)用Visual C++編譯環(huán)境結(jié)合ObjectARX開(kāi)發(fā)工具對(duì)AutoCAD二次開(kāi)發(fā)研究方興未艾[1-4],本文結(jié)合線路調(diào)查具體工作內(nèi)容,基于AutoCAD 2007繪圖平臺(tái),運(yùn)用Visual C++編譯環(huán)境結(jié)合ObjectARX庫(kù)函數(shù),實(shí)現(xiàn)線路調(diào)查交互式內(nèi)業(yè)處理。

1 傳統(tǒng)內(nèi)業(yè)處理方法

線路外業(yè)調(diào)查完成后傳統(tǒng)的內(nèi)業(yè)處理方法是在AutoCAD中打開(kāi)線路設(shè)計(jì)底圖,結(jié)合外業(yè)調(diào)查的數(shù)據(jù),在圖形上調(diào)用AutoCAD命令測(cè)量獲得。以房屋為例,首先調(diào)用AutoCAD查看屬性的命令,獲得房屋的單層面積,再根據(jù)單層面積乘以層數(shù)獲得總面積,接著量取房屋離中線最近點(diǎn)離房屋的距離,最后量取房屋所在的里程。運(yùn)用此方法,要不斷的在數(shù)據(jù)文件和AutoCAD界面切換,并且通過(guò)手工方式輸入結(jié)果數(shù)據(jù),效率低下。

2 基于ObjectARX的內(nèi)業(yè)處理

2.1 房屋內(nèi)業(yè)處理

線路調(diào)查包括道路立交、房屋、墳?zāi)埂?shù)木和水井等,其大部分工作量在房屋面積的統(tǒng)計(jì)上,調(diào)查人員在處理內(nèi)業(yè)時(shí)要不斷在數(shù)據(jù)文件和AutoCAD之間切換,調(diào)用AutoCAD命令進(jìn)行數(shù)據(jù)量的統(tǒng)計(jì)。通過(guò)歸納總結(jié)房屋面積統(tǒng)計(jì)的方法,基于ObjectARX開(kāi)發(fā)包進(jìn)行了如圖1所示的開(kāi)發(fā)流程設(shè)計(jì)。

圖1 房屋內(nèi)業(yè)處理流程

(1)線路里程起點(diǎn)的輸入與中心線的選擇

ObjectARX開(kāi)發(fā)包提供了acedInitGet()函數(shù)用于輸入格式的控制;提供了acedGetString()函數(shù)用于字符串變量的輸入;提供了acdbEntGet()用于實(shí)體對(duì)象的選擇。對(duì)于線調(diào)內(nèi)業(yè)處理,需要輸入線路中線的里程、鼠標(biāo)點(diǎn)去線路中線和房屋實(shí)體,才能計(jì)算房屋面積、離中線距離和房屋里程。

//輸入線路里程

acedInitGet(RSG_NONULL,NULL);//設(shè)置輸入格式;int rc=acedGetString(0," 輸入起點(diǎn)里程:",licheng); //輸入起點(diǎn)里程;

//選擇線路中心線

ent2=acdbEntGet(ent);//選擇實(shí)體,將實(shí)體名稱保存在變量ent中;

acdbGetObjectId(ID,ent);//由實(shí)體變量名稱獲得實(shí)體ID;

acdbOpenObject(pent2,ID2,AcDb::kForRead);//由實(shí)體ID獲得實(shí)體對(duì)象;

//判斷實(shí)體是否為多段線

pent2->close();//關(guān)閉實(shí)體對(duì)象。

(2)房屋面積的計(jì)算

已知房屋ABCDE、FGHI、JKLM,房屋各個(gè)頂點(diǎn)與線路中線的距離分別為a、b、c、d、e、f、g、h、j、k和l,層數(shù)分別為2、1和3,見(jiàn)圖2所示。

圖2 房屋面積、距中線距離及里程計(jì)算

計(jì)算房屋ABCDE、FGHI的面積和可由如下過(guò)程進(jìn)行:

①選擇房屋ABCDE,判斷其類型。如果是多段線,程序繼續(xù),否則提示用戶選擇錯(cuò)誤。

②鍵盤輸入房屋ABCDE的層數(shù)2,采用getArea()函數(shù)獲得房屋ABCDE單層面積,并記錄于變量m中;由房屋ABCDE單層的面積乘以其層數(shù)計(jì)算房屋ABCDE總的面積。

③選擇房屋FGHI,判斷其類型。如果是多段線,程序繼續(xù),否則提示用戶選擇錯(cuò)誤。

④鍵盤輸入房屋FGHI的層數(shù)1,采用getArea()函數(shù)獲得房屋FGHI單層面積,并記錄于變量m中;直接判斷屋FGHI單層面積就為其總面積。

⑤將房屋ABCDE的總面積與房屋FGHI的總面積相加,賦值與變量toll。

⑥選擇房屋JKLM,判斷其類型。如果是多段線,程序繼續(xù),否則提示用戶選擇錯(cuò)誤。

⑦判讀鍵盤輸入的關(guān)鍵詞,如果是結(jié)束關(guān)鍵詞,而不是層數(shù)關(guān)鍵詞,不去計(jì)算房屋JKLM的面積,將房屋群的總面積toll寫入數(shù)據(jù)文件。

(3)房屋距離線路中心線最近點(diǎn)及其在中線上里程計(jì)算

具體的實(shí)現(xiàn)過(guò)程如下所述:

①如圖2所示,遍歷房屋多段線頂點(diǎn)A、B、C、D、E,通過(guò)函數(shù)getPointAt()計(jì)算線路中線上與這些點(diǎn)最近的點(diǎn)a、b、c、d、e。

②計(jì)算房屋多段線頂點(diǎn)A、B、C、D、E與其在線路中線上對(duì)應(yīng)點(diǎn)a、b、c、d、e的距離,通過(guò)比較將最短距離S1賦值于n,并記錄在線路中線上與之對(duì)應(yīng)的點(diǎn)d。

③遍歷房屋多段線頂點(diǎn)F、G、H、I,通過(guò)函數(shù)getPointAt()計(jì)算線路中線上與這些點(diǎn)最近的點(diǎn)f、g、h、i。

④計(jì)算房屋多段線頂點(diǎn)F、G、H、I與其在線路中線上對(duì)應(yīng)點(diǎn)f、g、h、i的距離,通過(guò)比較將最短距離S2賦值于k,并記錄在線路中線上與之對(duì)應(yīng)的點(diǎn)i。

⑤比較變量n與k的大小,將較小者寫入數(shù)據(jù)文件,同時(shí)記錄與之對(duì)應(yīng)的點(diǎn)i。

⑥通過(guò)函數(shù)getDistAtPoint()計(jì)算點(diǎn)i與線路中心線起點(diǎn)的距離,并將線路起點(diǎn)里程與此距離的差寫入數(shù)據(jù)文件。

(4)數(shù)據(jù)文件最終結(jié)果

數(shù)據(jù)文件的最終結(jié)果格式生成如下:

里程與中線距離房屋面積159707.02041311.07627799.4540401268.35587662.2834959393.064040

此數(shù)據(jù)文件只包括房屋里程、與中線距離和房屋面積,但是建筑物調(diào)查還包括建筑物結(jié)構(gòu)及與線路中線之間的關(guān)系。由于建筑物結(jié)構(gòu)繁多,靠編程簡(jiǎn)化不了操作次數(shù),所以在生成數(shù)據(jù)文件后由設(shè)計(jì)者將其輸入。

2.2 道路立交內(nèi)業(yè)處理

線路調(diào)查對(duì)道路立交的要求是統(tǒng)計(jì)道路等級(jí)、道路中線與線路設(shè)計(jì)中線之間的夾角和相交里程。道路中線是一條曲線,線路設(shè)計(jì)中線也是一條曲線,因此道路立交的內(nèi)業(yè)處理就是求兩條曲線相交的問(wèn)題。已知道路中線、線路設(shè)計(jì)中線和線路設(shè)計(jì)起點(diǎn)里程如圖3所示,求A點(diǎn)里程、α角度,同時(shí)輸入道路等級(jí)。具體步驟如下:

圖3 道路與線路設(shè)計(jì)中線相交

采用函數(shù)acedGetString()由設(shè)計(jì)者輸入設(shè)計(jì)中線起點(diǎn)里程K1+000和道路等級(jí),并將道路等級(jí)寫入數(shù)據(jù)文件。

求線路設(shè)計(jì)中線與道路中線的交點(diǎn)A。

通過(guò)函數(shù)getDistAtPoint()計(jì)算點(diǎn)A與線路中心線起點(diǎn)的距離,并將線路起點(diǎn)里程與此距離的差寫入數(shù)據(jù)文件。

給一個(gè)步長(zhǎng),找到線路設(shè)計(jì)中線上的點(diǎn)B,和道路中線上的C點(diǎn),由AB點(diǎn)形成矢量V1方向指向B點(diǎn),由AC點(diǎn)形成矢量V2方向指向C點(diǎn)。

用函數(shù)angleTo()得到線路設(shè)計(jì)中線與道路中線的夾角α,并將其寫入數(shù)據(jù)文件。

2.3 其他建筑物內(nèi)業(yè)處理

其他建筑物包括墳?zāi)埂?shù)木、水井、通信基站等。它們相對(duì)于房屋、道路立交在數(shù)量上較少,統(tǒng)計(jì)方法也比較簡(jiǎn)單,采用編程簡(jiǎn)化不了操作次數(shù),提高不了工作效率。因此對(duì)它們的統(tǒng)計(jì)采用原始的操作方法(即采用AutoCAD內(nèi)部命令按照要求統(tǒng)計(jì))。

3 結(jié)束語(yǔ)

鐵路勘測(cè)設(shè)計(jì)一體化、智能化已成為未來(lái)鐵路勘測(cè)設(shè)計(jì)領(lǐng)域發(fā)展的目標(biāo),本論文采用AutoCAD 2007繪圖平臺(tái),運(yùn)用Visual C++編譯環(huán)境結(jié)合ObjectARX庫(kù)函數(shù),通過(guò)對(duì)線路調(diào)查軟件的開(kāi)發(fā),提高了線路調(diào)查的內(nèi)業(yè)處理速度和精度,減少了技術(shù)人員的工作量,對(duì)鐵路勘測(cè)設(shè)計(jì)一體化、智能化是一種補(bǔ)充,同時(shí)對(duì)從事AutoCAD開(kāi)發(fā)的人員有一定的參考和借鑒意義。

[1]老大中,趙占強(qiáng).AutoCAD 2000 ARX二次開(kāi)發(fā)實(shí)例精粹(ObjectARX)[M].北京:國(guó)防工業(yè)出版社,2001

[2]張金水,張廷楷.道路勘測(cè)與設(shè)計(jì)[M].上海:同濟(jì)大學(xué)出版社,2005

[3]趙延龍,程耀東,董明才.應(yīng)用ObjectARX的線路縱斷面的自動(dòng)填充方法[J].工程圖學(xué)學(xué)報(bào),2007(2):68-72

[4]張漢瑞,馬曼麗,胡志勇.應(yīng)用VC6和ObjectARX插件開(kāi)發(fā)通用隧道斷面繪制程序[J].城市勘測(cè),2009(5):104-107

[5]程耀東.圖形數(shù)據(jù)庫(kù)應(yīng)用技術(shù)研究[J].工程圖學(xué)學(xué)報(bào),2006,27(1):143-148

猜你喜歡
設(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
瞞天過(guò)海——仿生設(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在线观看| 亚洲欧洲日韩综合| 免费看美女毛片| 亚洲天堂网视频| 丰满的熟女一区二区三区l| 另类专区亚洲| 亚洲成a人片7777| 97人妻精品专区久久久久| 欧美在线国产| 国产玖玖玖精品视频| 亚洲综合久久成人AV| 日韩一二三区视频精品| 国产第一页亚洲| 亚洲浓毛av| 国产成人精品一区二区三区| 国产欧美亚洲精品第3页在线| …亚洲 欧洲 另类 春色| 91最新精品视频发布页| 国产人成乱码视频免费观看| 少妇精品在线| 欧美一级特黄aaaaaa在线看片| 亚洲大尺度在线| 国产屁屁影院| 久久一本日韩精品中文字幕屁孩| 激情视频综合网| 99精品视频播放| 国产99视频在线| 欧美一级视频免费| 蜜桃视频一区二区| 久久中文无码精品| 亚洲精品视频免费| 不卡网亚洲无码| 人妻丰满熟妇啪啪| 欧美一级高清免费a| 亚洲综合第一区| 中文字幕日韩丝袜一区| 日韩大片免费观看视频播放| 亚洲国产精品日韩专区AV| 亚洲精品自产拍在线观看APP| 国产高清又黄又嫩的免费视频网站| 欧美成人日韩| 波多野结衣无码视频在线观看| 99在线视频网站| 国产精品爆乳99久久| 麻豆精品在线视频| 无码国内精品人妻少妇蜜桃视频| 无码国产偷倩在线播放老年人| 亚洲首页国产精品丝袜| 久久6免费视频| 中文字幕人妻av一区二区| 嫩草国产在线| 99这里只有精品6| 91精品aⅴ无码中文字字幕蜜桃 | 无码日韩人妻精品久久蜜桃| 欧美国产在线一区| 五月婷婷丁香色| 亚洲 欧美 日韩综合一区| 大乳丰满人妻中文字幕日本| 国产一级妓女av网站| 成年人视频一区二区| 2022精品国偷自产免费观看| 伊人大杳蕉中文无码| 91在线无码精品秘九色APP| 亚洲一区免费看| 久久国产精品无码hdav| 国产日韩欧美一区二区三区在线| 国产日韩精品欧美一区灰| 亚洲一区二区三区国产精品 | 国产日韩欧美在线播放| 真人免费一级毛片一区二区 | 亚洲精品无码抽插日韩| 亚洲美女视频一区| 婷婷午夜影院| 中文字幕有乳无码| 婷婷中文在线| 视频一区视频二区中文精品| 香蕉久久国产超碰青草| 午夜精品久久久久久久无码软件 | 波多野结衣中文字幕一区二区| 亚洲欧美另类中文字幕| 久久特级毛片|