分享lisp程序
<P>下面的程序可以将CAD中的文字的三维坐标以文本文件的格式导出!</P><P>(defun C:dd ()<BR>(setq ss2 (ssget '((0 . "MTEXT"))))<BR> (setq n 0) ;;;;将索引号初始为0.<BR>(setq shitigeshu (sslength ss2)) ;;;返加选择集中实体个数。<BR>(repeat shitigeshu<BR>(setq stb (entget (ssname ss2 n))) ;;;返回选择集中指定索引号的列表<BR>(setq mc (assoc 1 stb)) ;;;;在列表中找与关键字相同的元素,点对表,文字内容<BR>(setq nr (cdr mc)) ;;;反回点对表中的第二个元素,文字内容。<BR>(setq zblb (assoc 10 stb)) ;;;返回坐标列表。<BR>(setq xzb (nth 1 zblb)) ;;;;返回X坐标。<BR>(setq xzbzh (rtos xzb)) ;;;将X坐标转换为字符串。<BR>(setq yzb (nth 2 zblb)) ;;;;返回y坐标<BR>(setq yzbzh (rtos yzb)) ;;;;;将y坐标转换为字符串。<BR>(setq zzb (nth 3 zblb)) ;;;;;返回z坐标。<BR>(setq zzbzh (rtos zzb)) ;;;;;;将z坐标转换为字符串。<BR>(setq hecheng (strcat nr " " xzbzh " " yzbzh " " zzbzh))<BR>(setq wj (open "e:/new.txt" "a"))<BR>(write-line hecheng wj)<BR>(setq n (+ 1 n))<BR>)<BR> (close wj)<BR>)</P> 这玩意是干吗用的啊 我怎么搞不懂啊 还请明示 <P>1、将一楼的内容剪贴到WINDOWS的记事本中;</P>
<P>2、另存为DD.LSP文件;</P>
<P>3、进入ACAD;</P>
<P>4、加载DD.LSP;可以用下拉菜单:工具--加载应用程序;</P>
<P>5、键入DD运行程序;</P>
<P>6、根据提示选择MTEXT文本就行了。</P> 这个对2次数字化有很好的作用! <P>对地形图处理有用</P>
<P>数据文件存在 e:/new.txt</P> 小弟请教:我用lisp写一段代码 当我在cad命令行执行他时 cad自动加载 我自己写的菜单文件.mns 如何写这个.lsp
也就是说 在.lisp 中我想定义一个个人命令比如:"(defun c:dq ( / &mod )"并以dq.lsp保存
当我再cad命令行中输入dq 他就会自动加载 我自己写的菜单文件.mnsdq.lsp如何写呢?? 高手帮帮忙啊 雪地跪求。 感谢楼主分享程序! 楼主高手,想学太难了
页:
[1]