第1个回答 2021-03-06
请试用以下程序:
;CASS展点号后的点号与坐标高程提取
;dnbc
(defun c:qdhzb()
(if (setq ssa (ssget '((0 . "POINT") (8 . "ZDH"))))
(If (setq wjm (getfiled "请指定存盘文件" (getvar "dwgprefix") "dat" 1))
(progn
(setq fff (open wjm "w"))
(setq i 0)
(setq n (sslength ssa))
(repeat n
(setq dxf (entget (ssname ssa i) '("*")))
(setq dh (cdr (cadr (cadr (assoc -3 dxf)))))
(setq pt (cdr (assoc 10 dxf)))
(setq zfc (strcat dh ",,"
(rtos (car pt) 2 3) ","
(rtos (cadr pt) 2 3) ","
(rtos (last pt) 2 3) "\n"
)
)
(princ zfc fff)
(setq i (1+ i))
)
(close fff)
)
)
)
(princ)
)