" />

久久色av_国产特级毛片aaaaaa毛片_成人一级黄色大片_操她视频网站_亚洲毛片_91精品国产日韩91久久久久久

非圖形擴(kuò)展數(shù)據(jù)技術(shù)在地下管線測(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ā)了繪制二維信息管線、二維信息管線與數(shù)據(jù)庫(kù)互相轉(zhuǎn)換、二維管線自動(dòng)轉(zhuǎn)成三維管線的系統(tǒng)。
  關(guān)鍵詞:非圖形數(shù)據(jù):圖形與數(shù)據(jù)的轉(zhuǎn)換:二維轉(zhuǎn)成三維
  0引言
  管線數(shù)據(jù)庫(kù)和三維管線是在二維信息管線的基礎(chǔ)上形成的。所謂二維信息管線就是在CAD中,用三維多段線畫線,加入管線信息,例如:管線類型、管線材質(zhì)、管徑等。這些信息附加在多段線屬性列表的后面,也叫非圖形擴(kuò)展數(shù)據(jù)。這樣,這條線既有CAD的幾何信息,又有用戶附加的個(gè)人信息。在程序運(yùn)行中,這些信息可以根據(jù)需要檢索出來(lái),以備形成數(shù)據(jù)庫(kù)和三維圖形使用。
  1二維信息管線
  建立和使用非圖形數(shù)據(jù)庫(kù),*.DWG文件是AutoCAD在圖形生成和編輯中使用的數(shù)據(jù)庫(kù),它存放的主要內(nèi)容是所生成圖形的幾何信息和其他相關(guān)信息。DWG這種數(shù)據(jù)庫(kù)相當(dāng)別致,數(shù)據(jù)的結(jié)構(gòu)允許用戶建立自己的、許多種可能結(jié)構(gòu)的“非圖形信息”數(shù)據(jù)。比如管線類型、管線材質(zhì)、管徑等信息。
  AutoCAD實(shí)質(zhì)上是一個(gè)優(yōu)秀的數(shù)據(jù)庫(kù)軟件,對(duì)于非圖形數(shù)據(jù)的處理也具有許多優(yōu)秀的性能。例如:雖然有高速讀取的特性,可是體積卻不大。數(shù)據(jù)值寫多長(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);管線類型
  (cons1000data_pmat);管線材料
  ……
  )))
  (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)圖1的對(duì)話框,按外業(yè)調(diào)查的信息填入對(duì)話框,就建立了二維信息管線。
  
  圖1
  2二維管線轉(zhuǎn)成三維管線
  三維管線是在二維管線的基礎(chǔ)上用程序自動(dòng)生成的,程序運(yùn)行時(shí),把生成三維管線所需要的幾何信息和附加信息檢索出來(lái)賦給設(shè)定的變量,經(jīng)過(guò)畫線、拉伸、抽芯等步驟就自動(dòng)生成三維管線。部分代碼如下:
  (Setqold_ext_list(assoc-3endata));取得非圖形數(shù)據(jù)庫(kù)列表
   (Setqptype(cdr(assoc1000(cdrold_ext_list))));管線類型
  (Setqpmat(cdr(assoc1000(cdrold_ext_list))));管線材料
  (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)信息畫線
  根據(jù)畫好的線變換坐標(biāo)系,根據(jù)管線半徑畫圓,再經(jīng)過(guò)拉伸抽芯就生成三維管線。部分代碼如下:
  (command"ucs""za"(listx0y0h0)(listx1y1h1)"");轉(zhuǎn)換坐標(biāo)系
  (command"circle"'(000)(/pdia2000.0)"");根據(jù)管線半徑畫圓
  (command"extrude"bb2"""p"en1);根據(jù)圓拉伸
  (command"subtract"aa2""aa3"");抽芯
  畫好的三維管線效果圖如2:
  
  圖2
  有了這個(gè)程序,只要會(huì)操作CAD的技術(shù)人員,都會(huì)畫三維管線。
  3信息管線圖與數(shù)據(jù)庫(kù)的相互換
  信息管線圖轉(zhuǎn)到數(shù)據(jù)庫(kù)就是在程序運(yùn)行時(shí),把管線的幾何信息和附加信息檢索出來(lái),按一條管線一個(gè)信息源寫到數(shù)據(jù)庫(kù)里。反之,把數(shù)據(jù)庫(kù)里的數(shù)據(jù)轉(zhuǎn)成CAD圖形就是在程序運(yùn)行時(shí),打開(kāi)數(shù)據(jù)庫(kù)把數(shù)據(jù)(幾何信息和附加信息)讀出來(lái),按這些信息在CAD中畫線、附加信息,再生成信息管線。部分代碼如下:
  (1) 信息管線轉(zhuǎn)到數(shù)據(jù)庫(kù)
  檢索管線的附加信息:
  (setqold_ext_list(assoc-3endata))
  (setqptype(cdr(assoc1000(cdrold_ext_list))));管線類型
   (setqpmat(cdr(assoc1000(cdrold_ext_list))));管線材料
   (setqpdia(cdr(assoc1070(cdrold_ext_list))));管徑
  檢索管線的幾何信息:
  (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)度
  把這些信息寫入數(shù)據(jù)庫(kù)
  (2) 數(shù)據(jù)庫(kù)轉(zhuǎn)成CAD圖形
  從數(shù)據(jù)庫(kù)里讀出信息:
  (setqptype(substrs1(setqj(-i1))));管線類型
  (setqpmat(substrsji));管線材料
  (setqpdia(substrsji));管徑
  (setqx(substrsji))(setqy(substrsji))(setqh0(substrsji));三維坐標(biāo)

  (command"3dpoly"(list(atofx)(atofy)(atofh)))
  根據(jù)這些信息畫圖:
  (setqnew_ext_list(list-3(list"PIPEM"(cons1000ptype)
  (cons1000pmat)(cons1070(atoipdia));加入附加信息
  4結(jié)束語(yǔ)
  線劃圖形向信息圖形轉(zhuǎn)換、二維圖形向三維圖形轉(zhuǎn)換是今后發(fā)展的趨勢(shì),也給用戶提供更多的服務(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ù)在地下管線測(cè)繪中的應(yīng)用

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

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

SCI服務(wù)

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

主站蜘蛛池模板: 国产第八页 | 一区高清 | 国内一区二区三区精品视频 | 国产在线观看免费一级 | 亚洲欧美久久精品一区 | 精品一区二区三区四区五区 | 日韩欧美高清 | 欧美日韩国产在线成人网 | 国产精品国产三级国产a | 在线观看精品一区 | 亚洲国产成人精彩精品 | 一区二区亚洲视频 | 台湾一级毛片永久免费 | 精品国产电影在线看免费观看 | 插欧美 | 久久精品一区二区三区四区 | 久久精品免费一区二区视 | 国产热久久精 | 国产欧美日韩一区二区三区 | 亚洲一区二区三区免费视频 | 欧美日本激情 | 天美传媒精品一区 | 色综合色狠狠天天综合色 | 岛国大片在线观看 | 国产午夜小视频 | 国产第3页 | 中文字幕有码在线播放 | 日韩精品一区二区三区视频 | 亚洲专区路线一路线二天美 | 久操视频免费看 | 亚洲视频一区二区 | 欧美亚洲国产一区 | 欧美精品在线免费 | 欧美亚洲另类视频 | 婷婷综合久久中文字幕蜜桃三电影 | 亚洲综合一区二区精品久久 | 日本福利片国产午夜久久 | 福利视频欧美一区二区三区 | 一级久久 | 色女人在线 | 久久99精品一久久久久久 |