1樓:
看你的目標了,不過你作為乙個工程師,我想先把主要精力放到lisp上沒錯的,lisp作為表處理為特徵的人工智慧語言,有很多的優勢,尤其acad下面,autocad在最初最先支援的程式語言就是autolisp,現在發展成visual lisp。 autolisp功能強大,能很好的處理acad圖形資料庫大多數的內容,並且易學,尤其作為乙個初學者,acad下其他的如arx等並不適合,這些內容等你把lisp學的更深入後,尤其是對acad圖形資料庫有更深刻的了解後,在根據自己的實際情況去決定是否去學。 我建議你多用些時間去學些程式設計方面的知識,掌握程式設計基本的一些原理,比如基本的程式結構,如選擇,迴圈等,在多學些autolisp下的函式,多結合實際工程中遇到的問題多寫,另外多看其他人寫的**,會進步很快的。
就先說這些。
如何在autocad中用選單載入autolisp程式
2樓:小哥丶愛大家
這個裡面說的很詳細,自己去看看吧,你一定會學會的!
3樓:幹笛
用 ap 命令,一看就明白的
4樓:
工具---載入應用程式
cad考試:用autolisp程式設計 20
5樓:
(defun c:***()
(setvar "cmdecho" 0)
(setq pt1 (getpoint " \n 第一點:"))
(setq pt2 (getpoint pt1 " \n 第二點:"))
(setq ll (distance pt1 pt2)) ;計算兩點間距離
(setq ang (angle pt1 pt2)) ;計算兩點間角度
(setq pt3 (polar pt2 (+ ang (/ (* 120 pi) 180)) ll)) ;計算三角形第三點座標
(command "polygon" 3 "e" pt1 pt2) ;繪製三角形
(prin1))
6樓:匿名使用者
要求這麼清楚,函式這麼明確,還不會??
在auto cad中關於vba或auto lisp進行程式設計,畫出三角形。
7樓:朱正偉
(defun c:3jx (/ @os4 #os #cm @p1 #os1 #os2 #os3 #l1 #l2 #l3 #lh #th #ar)
(setq #cm (getvar "cmdecho"))
(setvar "cmdecho" 0)
(setvar "blipmode" 0)
(if (null @os4) (setq @os4 '(500.0 500.0)) )
(setq @p1 (getpoint "\n請輸入三角形左下角的點或缺省座標點(500.0,500.0)"))
(if (null @p1) (setq @p1 @os4) (setq @os4 @p1) )
(if (null #os1) (setq #os1 300.0) )
(if (null #os2) (setq #os2 400.0) )
(if (null #os3) (setq #os3 500.0) )
(setq #l1 (getdist @p1 (strcat "\n請輸入三角形底邊長度:<" (rtos #os1 2) ">")))
(setq #l2 (getdist @p1 (strcat "\n請輸入三角形左邊直線的長度:<" (rtos #os2 2) ">")))
(setq #l3 (getdist @p1 (strcat "\n請輸入三角形右邊直線的長度:<" (rtos #os3 2) ">")))
(if (null #l1) (setq #l1 #os1) (setq #os1 #l1) )
(if (null #l2) (setq #l2 #os2) (setq #os2 #l2) )
(if (null #l3) (setq #l3 #os3) (setq #os3 #l3) )
(if (and (> (+ #l1 #l2)) (> (+ #l2 #l3) #l1) (> (+ #l1 #l3) #l2))
(progn
(setq #lh (/ (area3 #l1 #l2 #l3) #l1 0.5))
(setq #th (sqrt (- (sqr #l2) (sqr #lh))))
(if (= #th 0) (setq #ar (/ pi 2)) )
(if (> #th 0) (setq #ar (atan (/ #lh #th))) )
(setq #lh (-(sqr #l3) (+ (sqr #l1) (sqr #l2))))
(if (> #lh 0) (setq #ar (- pi #ar)) )
(setq @p2 (polar @p1 #ar #l2))
(setq @p3 (polar @p1 0 #l1))
(setq #os (getvar "osmode"))
(setvar "osmode" 0)
(command "_.pline" @p1 @p2 @p3 "c")
(setvar "osmode" #os)
)(princ "\n三條邊長無法繪製有效的三角形!")
)(setvar "cmdecho" #cm)
(princ)
) (prompt "\n《c:3jx.lsp》根據三邊畫三角形")
(prin1)
(defun sqr (xx)
(* xx xx)
);;數值平方
(defun area3 (a b c)
(sqrt (* (* 0.5 (+ a b c)) (- (* 0.5 (+ a b c)) a) (- (* 0.
5 (+ a b c)) b) (- (* 0.5 (+ a b c)) c)))
);;三角形三邊求面積
cad:運用autolisp語言程式設計繪製下列圖形 100
8樓:
(defun c:aaa () (setq yd (getpoint "select first point")
dd1 (list (car yd) (+ 80 (cadr yd)))
dd2 (list (+ 120 (car yd)) (+ 80 (cadr yd)))
dd3 (list (+ 120 (car yd)) (cadr yd))
y1 (list (+ 20(car yd)) (+ 20 (cadr yd)))
r1 10
y2 (list (+ 110(car yd)) (+ 70 (cadr yd)))
r2 5)
(command "pline" yd dd1 dd2 dd3 "c")
(command "circle" y1 r1)
(command "circle" y2 r2)
(princ))
誰能幫我解讀一下下面的autolisp**?(autocad二次開發方面的)
9樓:匿名使用者
1、引數為了傳遞錯誤資訊的,本例中沒有用到,所以傳遞nil。
2、當命令活動時,繼續命令狀態
3、可以寫成子函式,看程式設計習慣,如果你編了程式,又有問題,可以發給我,幫你看看。
10樓:手機使用者
autolisp功能要強很多
但vba擴充套件性要好些
推薦用dotnetarx做,功能強大,而且簡單易學
cad開發人員 高手請進 autolisp/visual lisp 程式設計技術
11樓:匿名使用者
你看看這個你能不能用?
(defun c:jjx (/ a d p n )
(setq no1 0.4) ;0.4是線寬,自己修改
(while (setq a (entsel "\n選擇多義線 : ")) (cg1)
(setq d (vlax-ename->vla-object (car a))
p (vlax-curve-getclosestpointto d (trans (cadr a) 1 0))
n (fix (vlax-curve-getparamatpoint d p))
) (vlax-invoke-method d 'setwidth n no1 no1)
) )(defun cg1 ( )
(setvar "cmdecho" 0)
(command "change" a "" "p" "lt" "x17" "");x17是線型名,自己修改。
(prin1))
各位大神,AUTO CAD設定裡怎麼設定工程標註,符合機械製圖示準那種,謝謝了
格式 標註樣式 新建 基礎樣式選iso 25 然後自己設吧 小木殺 給你傳送一份標準的模版吧,希望可以幫助你,留下郵箱 auto cad機械製圖時對線條和標註都有哪些規定? 如果按照機械製圖示準來的話,粗線0.6,細線為粗線的三分之一,也就是0.2 但在cad中如果按這樣設定,列印出來後粗線會顯得很...
怎麼我在AUTO CAD2019裡畫圓,然後在圓裡找中心點,怎麼找不到啊
autocad裡快捷命令c就是畫圓,找圓的中心點你必須開啟物件捕捉才能找到,物件捕捉開關在cad介面的下面,將滑鼠放在那些圖示上就會有正交 捕捉等字樣出現。另外這裡有一些快捷命令 c畫圓 l直線 a圓弧 e刪除 co複製 tr修剪 f倒圓角 br打斷 gr系統設定 rec正 長方形 ddi直徑標註 ...
CAD在圖框裡如何畫圖,AUTOCAD中如何畫圖框???
九廷謙談琬 要麼找個 有圖框的檔,copy進去 要麼就自己畫 然後另存為dwt模板。佈局裡也差不多,只是在佈局裡你還得加視口。 你可以不去考慮圖框啊 列印的時候你可以通過 列印範圍 視窗 來選擇你要列印的範圍,也就是你所說的2500 1200,可以畫兩條線用來捕捉,要注意a3與a4的紙張選擇,還有注...