本帖最后由 作者 于 2008-11-6 0:19:41 编辑
改LISP源文件 这是个可以一次选多个对像(PLINE线)输出顶点坐标(保存为一个文件) 修改要求 1去掉生成文件的第一行 2将X和Y坐标位置交换 3加入顶点的Z坐标 4每条线生成一个文本文件,文件名为输入的第一个文件名数字累加 5输出的坐标小数位补齐为三位 谢谢!路过的大虾们 原码: (defun c:zbb() (setq ffn (getfiled "坐标写入文本文件" "d:\" "txt" 1)) (setq opf (open ffn "w")) (setq ss (ssget '((0 . "*LINE")))) (setq kg " ") (setq txt (strcat "角点" kg "X坐标" kg "Y坐标")) (write-line txt opf) ;(princ (strcat "角点" kg "X坐标" kg "Y坐标") opf) (setq i -1) (setq key 10) (repeat (sslength ss) (setq ent (entget (ssname ss (setq i (1+ i))))) (setq count 1) (foreach xy ent (if (eq (car xy) key) (progn (setq pe (cdr xy)) (setq x (rtos(cadr pe)2 3)) (setq y (rtos(car pe)2 3)) (write-line (strcat (itoa count) kg x kg y) opf) ;(princ "\n" opf) ;(princ (strcat (itoa count) kg x kg y) opf) (setq count (1+ count)) ) ) ) ) (close opf) (princ(strcat "\n坐标已写入文本: " ffn)) (princ) ) |