|
(defun c:pointzb();导出点坐标及点号
(vl-load-com)
(setq fwsz (list "1" "2" "5" "10" "15" "20" "25"))
(setq
fwzz (atof
(xlr_dcl_textlst "搜索范围设置" "范围大小" "5" fwsz)
)
)
(setq ss (ssget (list (cons 0 "POINT"))))
(setq k -1)
(setq 文件 (open "C:/坐标文件.csv" "w"))
(write-line (strcat "点号" "," "X坐标" "," "Y坐标" "," "Z坐标") 文件)
(princ)
(repeat (sslength ss)
(setq ent (ssname ss (setq k (1+ k))))
(setq pt (cdr (assoc 10 (entget ent))))
(setq x (rtos (nth 0 pt) 2 3))
(setq y (rtos (nth 1 pt) 2 3))
(setq z (rtos (nth 2 pt) 2 3))
(setq ptls (xlr_pt_fw pt fwzz 36))
(setq ss1 (ssget "CP" ptls (list (cons 0 "TEXT"))))
(if (/= ss1 nil)
(setq tx (cdr (assoc 1 (entget (ssname ss1 0)))))
(command "circle" pt 5 )
)
(setq ztxx (strcat tx "," x "," y "," z))
(write-line ztxx 文件)
(princ)
)
(close 文件)
(prompt
"\n 坐标已成功提取,请打开C:/坐标文件,请查看"
)
)
|
|