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

AutoCAD LISP在市政排水工程中的應(yīng)用

2010-12-31 00:00:00
中國科技財(cái)富 2010年10期

摘要:AutoCAD作為當(dāng)前使用最為廣泛的工程繪圖軟件,可以選擇其作為測(cè)量數(shù)據(jù)處理的應(yīng)用平臺(tái)。但是使用其原有的內(nèi)部命令不能夠一一滿足日常測(cè)量工作需要,這就要求工作者在其基礎(chǔ)上進(jìn)行二次開發(fā)。本文主要是以AutoCAD為二次平臺(tái)進(jìn)行開發(fā)和設(shè)計(jì)的,該平臺(tái)很好地利用了AutoCAD靈活的編輯和強(qiáng)大的制圖功能,根據(jù)實(shí)際需要在此平臺(tái)的基礎(chǔ)上進(jìn)行二次開發(fā),編寫自己所需要的程序,形成一個(gè)個(gè)獨(dú)立的功能模塊,方便調(diào)用與修改,為數(shù)字化成圖提供了一種新的開發(fā)手段和開發(fā)思路。

關(guān)鍵詞:AutoCAD LIS市政排水測(cè)量二次開發(fā)程序

傳統(tǒng)處理數(shù)據(jù)方式如下:排水井井底標(biāo)注方面,要先按要求做出分?jǐn)?shù)標(biāo)注形式;然后復(fù)制到每個(gè)要標(biāo)注的排水井附近,繪圖者利用井面高程減去實(shí)地量測(cè)的井底深度求得井底高程,并通過命令“DDEDIT”來修改井面高程和井底高程,這樣才能完成排水井井底標(biāo)注;沉沙井管底標(biāo)注基本方法基本與排水井井底標(biāo)注相同,繪圖者用井面高程減去實(shí)地量測(cè)的管底深度求得管底高程,結(jié)合實(shí)地量測(cè)的管徑通過命令“DDEDIT”修改管徑和管底高程;管徑和流向標(biāo)注時(shí)除了要修改管徑數(shù)據(jù)外,還要旋轉(zhuǎn)管徑數(shù)據(jù)使其與管線方向保持一致,流向線段同樣保持與管線方向成一定的夾角。

由于一般市政工程的工期都相當(dāng)緊迫,在有限的時(shí)間里人工處理大量的數(shù)據(jù)難免會(huì)出現(xiàn)一些計(jì)算錯(cuò)誤,而且計(jì)算過程本身也會(huì)影響繪圖的速度。在標(biāo)注管徑連線和流水方向時(shí)很難做到整齊化一,流向線段的長度和其與相應(yīng)管徑的夾角也很難始終保持相同。因此本文采用新的設(shè)計(jì)思路,通過程序化繪圖來解決實(shí)際問題。程序設(shè)計(jì)思路如下:

1、排水井井底標(biāo)注

讓編圖人員通過鍵盤輸入井面高程和實(shí)地測(cè)量的井底深度,利用AutoCAD本身帶有的計(jì)算功能自動(dòng)計(jì)算出井底高程,并結(jié)合AutoCAD內(nèi)部文字標(biāo)注命令“TEXT”,在指定位置按要求自動(dòng)標(biāo)注出井底高程。這樣就會(huì)避免編圖人員的計(jì)算錯(cuò)誤,并保持排水井標(biāo)注格式的嚴(yán)格統(tǒng)一。

2、排水管徑邊線及流向標(biāo)注

在標(biāo)注管徑連線時(shí),切換AutoCAD的系統(tǒng)變量,使AutoCAD的捕捉狀態(tài)置于只有捕捉“圓心”狀態(tài)下,因?yàn)槊總€(gè)排水井的符號(hào)都有圓心,這樣大大提高了連線速度,并且可以保證每條連線起點(diǎn)都位于排水井的定位點(diǎn)(即圓心)上。通過計(jì)算兩個(gè)排水井之間的長度和連線的中心位置,規(guī)定流向與排水井管徑連線的角度,則可以自動(dòng)標(biāo)注每一段排水管的流向,每個(gè)流向線段的長度及其與之相應(yīng)的排水管線的夾角完全相同。

3、沉沙井管底標(biāo)注

讓編圖人員通過鍵盤輸入沉沙井井面高程、沉沙井管徑大小及實(shí)地測(cè)量的管底深度,利用AutoCAD本身帶有的計(jì)算功能計(jì)算出管底高程,并結(jié)合AutoCAD內(nèi)部文字標(biāo)注命令“TEXT”,在指定位置按要求自動(dòng)標(biāo)注出管徑和管底高程。在選擇要求標(biāo)注的管位時(shí),切換AutoCAD的系統(tǒng)變量,使AutoCAD的捕捉狀態(tài)置于只有捕捉“最近點(diǎn)”狀態(tài)下,這樣能準(zhǔn)確在連線到相應(yīng)的管徑連線上,然后在選擇標(biāo)注所放的位置時(shí)把捕捉狀態(tài)關(guān)掉。

4、程序編制

(1).排水井井底標(biāo)注程序主體:

;;;;;;;;;;;;;;設(shè)定變量

(setq pt1 (getpoint\"\標(biāo)注位置:\"))

(setq jmg (getreal\"\井面高程:\"))

(setq js (getreal\"\井深:\"))

;;;;;;;;;計(jì)算井底高程

(setq jds (- jmg js))

;;;;;;;;;根據(jù)井面高程和井底高程字符的長度確定分?jǐn)?shù)線的長度

(setq string_len (max (fix jmg) (fix jds)))

(setq len_factor (strlen (itoa string_len)))

(setq pt2 (polar pt1 0 (* (+ len_factor 2) 0.7)))

(setq pt3 (polar pt1 0 (* (+ len_factor 2) 0.7 0.5)))

(setq pt4 (polar pt3 (* pi 0.5) 0.5))

(setq pt5 (polar pt3 (* pi 1.5) 0.5))

;;;;;;;;自動(dòng)標(biāo)注井面高程和井底高程,并利用wide_change函數(shù)將標(biāo)注字高設(shè)為0.7

(command \"text\" \"j\" \"m\" pt4 \"0.7\" \"0\" (rtos jmg 2 2))

(setq en (entlast))

(wide_change)

(command \"pline\" pt1 pt2 \"\")

(command \"text\" \"j\" \"m\" pt5 \"0.7\" \"0\" (rtos jds 2 2))

(setq en (entlast))

(wide_change)

(2)沉沙井管底標(biāo)注程序主體:

;;;;;;;設(shè)定變量

(setq pt1 (getpoint\"\標(biāo)注管位:\"))

(setq pt2 (getpoint\"\標(biāo)注位置:\"))

(setq gjdx (getint\"\管徑大小:\"))

(setq gjdxf (strcat \"D\" (itoa gjdx)))

(setq jmg (getreal\"\井面高程:\"))

(setq gs (getreal\"\管底深:\"))

;;;;;;;;;計(jì)算管底高程

(setq gds (- jmg gs))

(setq ang_pt1_pt2 (angle pt1 pt2))

(setq pt5 (polar pt4 (* pi 0.5) 0.5))

(setq pt6 (polar pt4 (* pi 1.5) 0.5))

(command \"pline\" pt1 pt2 pt3 \"\")

;;;;;;;;自動(dòng)標(biāo)注管徑和管底高程,并利用wide_change函數(shù)將標(biāo)注字高設(shè)為0.7

(command \"text\" \"j\" \"m\" pt5 \"0.7\" \"0\" gjdxf)

(setq en (entlast))

(wide_change)

(command \"text\" \"j\" \"m\" pt6 \"0.7\" \"0\" (rtos gds 2 2))

(setq en (entlast))

(wide_change)

(3)管徑及流向標(biāo)注程序主體:

;;;;;;;;將對(duì)象捕捉狀態(tài)置為只捕捉圓心

(setq osdynamic (getvar \"osmode\"))

(if (= osdynamic 4)

()

(setvar \"osmode\" 4)

)

;;;;;;;設(shè)定變量

(setq pt1(getpoint\"\起點(diǎn):\"))

(setq ans \"y\")

(setq gjmr 400);;;;;設(shè)定默認(rèn)管徑

(setq js 1)

;;;;;;;;自動(dòng)標(biāo)注管徑,并利用wide_change函數(shù)將標(biāo)注字高設(shè)為0.7

(command \"text\" \"j\" \"m\" pt4 \"0.7\" (angtos text_rotate_ang) (strcat \"D\" (itoa dia)))

(setq en (entlast))

(wide_change)

;;;;;計(jì)算管徑連線的中點(diǎn),并從中點(diǎn)繪制正確的流向線段

(setq pt5 (polar pt3 (+ ang_pt2_pt1 (* pi 1.13)) 1))

(command \"pline\" pt3 pt5 \"\")

(setq en (entlast))

……

AutoCAD所采用的LISP語言是較為簡(jiǎn)單的一門計(jì)算機(jī)語言,容易入門與掌握,不需要掌握太多復(fù)雜的數(shù)據(jù)結(jié)構(gòu)與計(jì)算機(jī)軟硬件知識(shí);而且開發(fā)一些日常測(cè)量工作需要的小程序,不需要涉及到軟件內(nèi)核或操作系統(tǒng)層面上的編程,利用AutoCAD LISP編寫足以勝任。另外由于程序化繪圖時(shí),程序所調(diào)用的AutoCAD命令不用外部響應(yīng),節(jié)省了大量時(shí)間,簡(jiǎn)化了繪圖過程,大大提高了工作效率,繪圖成果也整齊美觀。

主站蜘蛛池模板: 婷婷综合色| 一区二区三区四区精品视频 | 亚洲精品无码日韩国产不卡| 2021天堂在线亚洲精品专区| 国产精品嫩草影院视频| 亚洲 欧美 日韩综合一区| 亚洲成人黄色在线| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 无码粉嫩虎白一线天在线观看| 人妻精品久久无码区| 欧洲高清无码在线| 无码丝袜人妻| 有专无码视频| 国产精品主播| 亚洲国产成熟视频在线多多| 成年人国产视频| 美女国内精品自产拍在线播放| 日本高清有码人妻| 国产99精品久久| 久久久久国产一级毛片高清板| 久久96热在精品国产高清| 91国内外精品自在线播放| 综合亚洲网| 五月天丁香婷婷综合久久| 亚洲精品在线影院| 国产伦精品一区二区三区视频优播| 久久国产热| 香蕉久久永久视频| 四虎精品国产AV二区| 欧美五月婷婷| 日韩 欧美 小说 综合网 另类| 伊人福利视频| 欧美www在线观看| 91福利免费| 亚洲久悠悠色悠在线播放| 国产a在视频线精品视频下载| 狼友av永久网站免费观看| 日本一区二区不卡视频| 国产亚洲欧美在线专区| 日本人妻丰满熟妇区| 精品无码一区二区三区在线视频| 国产尹人香蕉综合在线电影| 91久久国产综合精品女同我| 中文字幕无码制服中字| 无码免费视频| 五月天福利视频| 亚洲成A人V欧美综合| 久久久久久久久久国产精品| 欧美日韩免费观看| 91在线视频福利| 国产成人1024精品| 国产精品福利在线观看无码卡| 亚洲美女高潮久久久久久久| 国产精品亚洲天堂| 国产尤物jk自慰制服喷水| 国产精品蜜芽在线观看| 精品无码一区二区三区电影| 麻豆精品久久久久久久99蜜桃| 尤物精品视频一区二区三区 | 欧美一区二区啪啪| 欧美 亚洲 日韩 国产| 2020国产精品视频| jizz国产在线| 狠狠ⅴ日韩v欧美v天堂| 欧美日韩免费| 欧美精品影院| 九九视频在线免费观看| 熟妇无码人妻| 免费a级毛片视频| 夜夜操天天摸| 国产午夜无码片在线观看网站 | 国产亚洲精久久久久久无码AV| 国产三级国产精品国产普男人| 九九九精品成人免费视频7| 亚洲a免费| 极品性荡少妇一区二区色欲| 亚洲天堂日韩在线| 亚洲不卡av中文在线| 欧美国产在线看| 亚洲成年网站在线观看| 黄色一级视频欧美| 国产亚洲精品97AA片在线播放|