查看单个帖子
旧 2009-04-25, 08:15 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 lisp 求助!求助 修改的高手

lisp 求助!求助 修改的高手
www.dimcax.com
lisp 求助!求助 修改的高手
改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)
)
d
(setq ffn (getfiled "坐标写入文本文件" "d:\" "txt" 1))
===>
(setq ffn (getfiled "坐标写入文本文件" "d:\镇" "txt" 1))
其余未check
感觉您应上传完工后的 文件样本 作为参考
d
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)