當前位置:編程學習大全網 - 源碼下載 - Cadlisp獲取當前視在坐標。

Cadlisp獲取當前視在坐標。

將以下腳本復制到命令行,並按enter鍵加載它。輸入pldd,程序會提示您選擇pline。選擇pline後,將打印所有三維坐標。

(defun c:pldd(/WB cc ss 1 aa pts bhbz ent)

(setq ent(car(entsel " \ n請選擇PLINE "))

(setq WB(ent get ent)cc nil bhbz(cdr(assoc 70 WB)))

(條件

((= (cdr (assoc 0 wb)) "POLYLINE ")

(setq ss1 (entnext ent))

(while (/= ss1 nil)

(setq aa (entget ss1))

(if(=(cdr(assoc 0 aa))" VERTEX ")(progn

(setq aa (cdr (assoc 10 aa)))

(if (/= aa nil) (progn

(如果(=(長度aa) 2)

(setq aa (list (car aa) (cadr aa) 0.0))

)

(如果(=抄送無)

(設置點aa)

)

(setq cc (cons aa cc))

))

(setq ss1 (entnext ss1))

)

(setq ss1無)

)

)

(如果(= bhbz 1)

(setq cc (cons pts cc))

)

)

((= (cdr (assoc 0 wb)) "LWPOLYLINE ")

(setq wb(成員(assoc 10 wb) wb))

(while (assoc 10 wb)

(setq aa (cdr (assoc 10 wb)))

(如果(=(長度aa) 2)

(setq aa (list (car aa) (cadr aa) 0.0))

)

(如果(=抄送無)

(設置點aa)

)

(如果(=(長度aa) 2)

(setq aa (list (car aa) (cadr aa) 0.0))

)

(setq cc (cons aa cc) wb (cdr wb))

(如果(assoc 10 wb)

(setq wb(成員(assoc 10 wb) wb))

)

)

(如果(= bhbz 1)

(setq cc (cons pts cc))

)

)

((= (cdr (assoc 0 wb)) "SPLINE ")

(setq wb(成員(assoc 11 wb) wb))

(while (assoc 11 wb)

(setq aa(cdr(assoc 11 WB)))

(如果(=(長度aa) 2)

(setq aa (list (car aa) (cadr aa) 0.0))

)

(如果(=抄送無)

(設置點aa)

)

(setq cc (cons aa cc) wb (cdr wb))

(如果(assoc 11 wb)

(setq wb(成員(assoc 11 wb) wb))

)

)

  • 上一篇:網絡高手請進~!
  • 下一篇:賀鵬飛的項目經歷
  • copyright 2024編程學習大全網