" />

色偷偷伊人-色偷偷综合-色无五月-色香蕉影院-色亚洲影院

非圖形擴(kuò)展數(shù)據(jù)技術(shù)在地下管線(xiàn)測(cè)繪中的應(yīng)用

所屬欄目:智能科學(xué)技術(shù)論文 發(fā)布日期:2011-07-20 08:12 熱度:

  摘要:隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展和廣泛應(yīng)用,在測(cè)繪行業(yè),圖形的信息化、三維化、圖形和數(shù)據(jù)庫(kù)的互相轉(zhuǎn)換等技術(shù)已逐漸得到應(yīng)用。筆者運(yùn)用VisualLisp和DCL語(yǔ)言開(kāi)發(fā)了繪制二維信息管線(xiàn)、二維信息管線(xiàn)與數(shù)據(jù)庫(kù)互相轉(zhuǎn)換、二維管線(xiàn)自動(dòng)轉(zhuǎn)成三維管線(xiàn)的系統(tǒng)。
  關(guān)鍵詞:非圖形數(shù)據(jù):圖形與數(shù)據(jù)的轉(zhuǎn)換:二維轉(zhuǎn)成三維
  0引言
  管線(xiàn)數(shù)據(jù)庫(kù)和三維管線(xiàn)是在二維信息管線(xiàn)的基礎(chǔ)上形成的。所謂二維信息管線(xiàn)就是在CAD中,用三維多段線(xiàn)畫(huà)線(xiàn),加入管線(xiàn)信息,例如:管線(xiàn)類(lèi)型、管線(xiàn)材質(zhì)、管徑等。這些信息附加在多段線(xiàn)屬性列表的后面,也叫非圖形擴(kuò)展數(shù)據(jù)。這樣,這條線(xiàn)既有CAD的幾何信息,又有用戶(hù)附加的個(gè)人信息。在程序運(yùn)行中,這些信息可以根據(jù)需要檢索出來(lái),以備形成數(shù)據(jù)庫(kù)和三維圖形使用。
  1二維信息管線(xiàn)
  建立和使用非圖形數(shù)據(jù)庫(kù),*.DWG文件是AutoCAD在圖形生成和編輯中使用的數(shù)據(jù)庫(kù),它存放的主要內(nèi)容是所生成圖形的幾何信息和其他相關(guān)信息。DWG這種數(shù)據(jù)庫(kù)相當(dāng)別致,數(shù)據(jù)的結(jié)構(gòu)允許用戶(hù)建立自己的、許多種可能結(jié)構(gòu)的“非圖形信息”數(shù)據(jù)。比如管線(xiàn)類(lèi)型、管線(xiàn)材質(zhì)、管徑等信息。
  AutoCAD實(shí)質(zhì)上是一個(gè)優(yōu)秀的數(shù)據(jù)庫(kù)軟件,對(duì)于非圖形數(shù)據(jù)的處理也具有許多優(yōu)秀的性能。例如:雖然有高速讀取的特性,可是體積卻不大。數(shù)據(jù)值寫(xiě)多長(zhǎng),DWG就記下多長(zhǎng)。再如:檢索的方法多,可用圖形對(duì)象塊名色號(hào)、層名……作為索引,甚至用上述方法的組合。
  在指定對(duì)象中建立和加入擴(kuò)展的對(duì)象數(shù)據(jù)庫(kù)的主要步驟:
  (1) 找到指定的目標(biāo)對(duì)象名
  (While(Not(SetQen(EntSel"指定一個(gè)實(shí)體:")))(Alert"沒(méi)選中任何實(shí)體..."))
  (2)找到指定應(yīng)用名(這是搜尋擴(kuò)展對(duì)象數(shù)據(jù)庫(kù)的主要索引項(xiàng))
  (Regapp"PIPEM")
  (3)加入擴(kuò)展數(shù)據(jù)庫(kù)的開(kāi)頭項(xiàng),建立完整的擴(kuò)展數(shù)據(jù)表
  (setqnew_ext_list(list-3(list"PIPEM"
  (cons1000data_ptype);管線(xiàn)類(lèi)型
  (cons1000data_pmat);管線(xiàn)材料
  ……
  )))
  (4)組建后擴(kuò)展數(shù)據(jù)庫(kù)的內(nèi)容(這些內(nèi)容附加在實(shí)體屬性列表的后面。)
  (("PIPEM"(1000."排水")(1000."水泥管")(1070.1000)(1070.0)(1040.0.0)(1040.0.0)(1000."")(1000."")(1000."")(1000."")(1070.0)(1000."")(1000."")(1070.0)(1000."")(1000."")))
  具體操作是在CAD環(huán)境下,選擇指定的目標(biāo)對(duì)象,(三維多段線(xiàn)畫(huà)的線(xiàn),)出現(xiàn)圖1的對(duì)話(huà)框,按外業(yè)調(diào)查的信息填入對(duì)話(huà)框,就建立了二維信息管線(xiàn)。
  
  圖1
  2二維管線(xiàn)轉(zhuǎn)成三維管線(xiàn)
  三維管線(xiàn)是在二維管線(xiàn)的基礎(chǔ)上用程序自動(dòng)生成的,程序運(yùn)行時(shí),把生成三維管線(xiàn)所需要的幾何信息和附加信息檢索出來(lái)賦給設(shè)定的變量,經(jīng)過(guò)畫(huà)線(xiàn)、拉伸、抽芯等步驟就自動(dòng)生成三維管線(xiàn)。部分代碼如下:
  (Setqold_ext_list(assoc-3endata));取得非圖形數(shù)據(jù)庫(kù)列表
   (Setqptype(cdr(assoc1000(cdrold_ext_list))));管線(xiàn)類(lèi)型
  (Setqpmat(cdr(assoc1000(cdrold_ext_list))));管線(xiàn)材料
  (Setqpdia(cdr(assoc1070(cdrold_ext_list))));管徑
  (Setqvla-pline(vlax-ename->vla-objecten));取得第一個(gè)點(diǎn)的坐標(biāo)信息(vlax-dump-objectvla-pline)(SetqCoordinates(vla-get-Coordinatesvla-pline))
  (Setqval_list(safearray-value(vlax-variant-valueCoordinates)))
  (SetqX(carval_list))(SetqY(cadrval_list))(SetqH(-(caddrval_list)(/pdia2000.0)))
  (command"3dpoly"(listxyh));根據(jù)坐標(biāo)信息畫(huà)線(xiàn)
  根據(jù)畫(huà)好的線(xiàn)變換坐標(biāo)系,根據(jù)管線(xiàn)半徑畫(huà)圓,再經(jīng)過(guò)拉伸抽芯就生成三維管線(xiàn)。部分代碼如下:
  (command"ucs""za"(listx0y0h0)(listx1y1h1)"");轉(zhuǎn)換坐標(biāo)系
  (command"circle"'(000)(/pdia2000.0)"");根據(jù)管線(xiàn)半徑畫(huà)圓
  (command"extrude"bb2"""p"en1);根據(jù)圓拉伸
  (command"subtract"aa2""aa3"");抽芯
  畫(huà)好的三維管線(xiàn)效果圖如2:
  
  圖2
  有了這個(gè)程序,只要會(huì)操作CAD的技術(shù)人員,都會(huì)畫(huà)三維管線(xiàn)。
  3信息管線(xiàn)圖與數(shù)據(jù)庫(kù)的相互換
  信息管線(xiàn)圖轉(zhuǎn)到數(shù)據(jù)庫(kù)就是在程序運(yùn)行時(shí),把管線(xiàn)的幾何信息和附加信息檢索出來(lái),按一條管線(xiàn)一個(gè)信息源寫(xiě)到數(shù)據(jù)庫(kù)里。反之,把數(shù)據(jù)庫(kù)里的數(shù)據(jù)轉(zhuǎn)成CAD圖形就是在程序運(yùn)行時(shí),打開(kāi)數(shù)據(jù)庫(kù)把數(shù)據(jù)(幾何信息和附加信息)讀出來(lái),按這些信息在CAD中畫(huà)線(xiàn)、附加信息,再生成信息管線(xiàn)。部分代碼如下:
  (1) 信息管線(xiàn)轉(zhuǎn)到數(shù)據(jù)庫(kù)
  檢索管線(xiàn)的附加信息:
  (setqold_ext_list(assoc-3endata))
  (setqptype(cdr(assoc1000(cdrold_ext_list))));管線(xiàn)類(lèi)型
   (setqpmat(cdr(assoc1000(cdrold_ext_list))));管線(xiàn)材料
   (setqpdia(cdr(assoc1070(cdrold_ext_list))));管徑
  檢索管線(xiàn)的幾何信息:
  (setqvla-pline(vlax-ename->vla-objecten))(vlax-dump-objectvla-pline);取得每個(gè)端點(diǎn)的信息
  (vlax-dump-objectvla-pline)(setqx(carval_list))(setqy(cadrval_list))(setqh(caddrval_list))
  (setqObjectID(vla-get-ObjectIDvla-pline));取得取得實(shí)體的ID碼
  (setqLengt(vla-get-Lengthvla-pline));取得取得實(shí)體的長(zhǎng)度
  把這些信息寫(xiě)入數(shù)據(jù)庫(kù)
  (2) 數(shù)據(jù)庫(kù)轉(zhuǎn)成CAD圖形
  從數(shù)據(jù)庫(kù)里讀出信息:
  (setqptype(substrs1(setqj(-i1))));管線(xiàn)類(lèi)型
  (setqpmat(substrsji));管線(xiàn)材料
  (setqpdia(substrsji));管徑
  (setqx(substrsji))(setqy(substrsji))(setqh0(substrsji));三維坐標(biāo)

  (command"3dpoly"(list(atofx)(atofy)(atofh)))
  根據(jù)這些信息畫(huà)圖:
  (setqnew_ext_list(list-3(list"PIPEM"(cons1000ptype)
  (cons1000pmat)(cons1070(atoipdia));加入附加信息
  4結(jié)束語(yǔ)
  線(xiàn)劃圖形向信息圖形轉(zhuǎn)換、二維圖形向三維圖形轉(zhuǎn)換是今后發(fā)展的趨勢(shì),也給用戶(hù)提供更多的服務(wù)功能。筆者在這方面研究的成果還非常浮淺,很多問(wèn)題還需要深入學(xué)習(xí),使之更加完善。
  
  參考文獻(xiàn):
  [1]人民郵電出版社,陳伯雄、馮偉編著的VisualLISP程序設(shè)計(jì)與技巧。
  [2]中國(guó)鐵道出版社,吳永進(jìn)、林美櫻編著的AutoLISP&DCL基礎(chǔ)篇。
  [3]人民郵電出版社,吳永進(jìn)、林美櫻編著的AutoCAD2007中文版實(shí)用教程(3D應(yīng)用篇)。

文章標(biāo)題:非圖形擴(kuò)展數(shù)據(jù)技術(shù)在地下管線(xiàn)測(cè)繪中的應(yīng)用

轉(zhuǎn)載請(qǐng)注明來(lái)自:http://m.anghan.cn/fblw/dianxin/zhineng/9757.html

相關(guān)問(wèn)題解答

SCI服務(wù)

搜論文知識(shí)網(wǎng) 冀ICP備15021333號(hào)-3

主站蜘蛛池模板: 国产在线精品一区二区不卡 | 黄色的视频在线免费观看 | 亚洲欧美精品一中文字幕 | 国产福利视频在线播放 | 伊人久久成人成综合网222 | 国产一二三区视频 | 日韩精品免费一级视频 | 一区国严二区亚洲三区 | 欧美性猛交 | 久久国产精品久久久久久久久久 | 久久99精品国产麻豆宅宅 | 香蕉片视频在线观看 | 日本黄色大片免费观看 | 九一国产精品视频 | 小明永久2015www永久免费观看 | 亚洲一级黄色片 | 日本一区二区三区久久精品 | 亚洲乱码中文字幕综合 | 亚洲欧美韩日 | 国产午夜亚洲精品第一区 | 成人在线手机视频 | 在线一区免费视频播放 | 成人免费国产欧美日韩你懂的 | 一级黄色一级黄色 | 国产在线高清理伦片a | 日本久久久久亚洲中字幕 | 亚洲人成黄网在线观看 | 中文字幕亚洲欧美一区 | 国产伦久视频免费观看 视频 | 国产精品亚洲欧美一级久久精品 | 日本ab在线 | 欧美黄色影视 | 欧美在线一级视频 | 91久久99热青草国产 | 老外黑人欧美一级毛片 | 成年午夜性爽快免费视频不卡 | 66j8免费视频 | 亚洲精品高清国产一久久 | 再猛点深使劲爽日本免费视频 | 在线精品小视频 | 任我鲁这里有精品视频在线播 |