lisp用entmake生产圆柱体_使用lisp语言实现在平面图中自动画出桥梁的墩柱标识.doc...
使用lisp語言實現在平面圖中自動畫出橋梁的墩柱標識.doc
還剩
5頁未讀,
繼續閱讀
下載文檔到電腦,馬上遠離加班熬夜!
親,喜歡就下載吧,價低環保!
內容要點:
使用 LISP 語言實現在平面圖中自動畫出橋梁的墩柱標識 摘 要:以往在平面圖中畫墩柱標識是一件費時費力,生產力低下的工作,本文討論了如何使用 LISP 語言實現該項工作,以極大的節省時間,提高共效率。 關鍵詞: LISP 橋梁墩柱 中圖分類號: TU997 文獻標識碼: A 1.以前工作狀況 在平面圖中畫橋梁墩柱的標識是一件大量的繁瑣的重復性的工作,以往的做法是: 依據路基寬度確定墩柱的間距和位置,依據橋梁的斜交角度確定是雙柱墩還是三柱墩 ,然后把每一種角度的墩柱標識各做成一個塊(如圖一),再分別一個一個的粘貼進平面圖,再旋轉該塊而成(如圖二)。非常繁瑣而且需要大量的時間。(當然以上方法僅適用于普通橋梁的標準墩柱標識,對于特殊要求的墩柱型式還是以橋梁組提供的為準。以下 LISP 語言實現的也僅是畫出標準墩柱標識。) 圖一 圖二 2.LISP 語言及編程方法 LISP 語言的先天特性就是可以處理 AutoCAD 中大量重復性的工作,以節省時間和提高效率,下面我們就來看看該怎么實現這個自動畫墩柱的程序呢? 我一直認為編程最好的方 法就是分解法,把要實現的目標分解成若干個模塊,然后一步一步的去實現。這有利于減少整個工作的難度,有利于增加或者減少程序功能,有利于出現問題時的溯源以便于查錯糾錯,而且可以提高不少工作效率。 這個程序也是這樣,首先我依據需求和平時做這項工作的特性,理出大致的程序結構,分別為: {主程序:負責調用記錄系統變量和恢復系統變量,調用功能實現子模塊; 判斷程序:判斷各變量狀態; 功能實現子程序:使用判斷程序和畫出墩柱程序,依據各種狀態按要求實現程序功能; 畫出墩柱程序。 } 3.自動 畫橋墩的具體實現 3.1 主程序: 這里記錄了各個系統變量狀態,由于本程序需要使用 visual 函數,所以需要預先加載 visual 函數接口,調用了所需的 AutoCAD 線型,調用了功能實現子程序,且程序運行結束后需恢復各系統變量。程序實現如下: (defun c:qd() (setvar "cmdecho" 0) (command "undo" "be") (setq osmode (getvar "osmode")) (setvar "osmode" 0) (vl-load-com) (if(not(tblsearch "ltype" "dashed"))(command "-linetype""load" "dashed" "" "")) (setq f (ssget '((0 . "LWPOLYLINE")))) (get_length f) (command "_copy" f "" '(0 0 ) '(0 0)) (command "_erase" f "") (command "_ucs" "w") (setvar "osmode" osmode) (command "undo" "e") (princ) ) 3.2 畫出墩柱程序: 使用功能實現子程序所確定的位置畫出墩柱。 (defun DrawC(yuanx / ) (entmake (list (cons 0"
發表評論
暫無評論,趕快搶占沙發吧。
總結
以上是生活随笔為你收集整理的lisp用entmake生产圆柱体_使用lisp语言实现在平面图中自动画出桥梁的墩柱标识.doc...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端参数无法转为后端实体内部类_Java
- 下一篇: mybatis.net mysql_AD