只需一步,快速开始
大哥们.看看这个文字或属性块连续增量拷贝程序为什么出错呀
(defun c:nn( / asc e1 en k l p1 p2 sn st st1 st2) (setq *error* nil) (command "undo" "g") (princ "\n欢迎使用文字或属性块连续增量拷贝程序! GYSJY 2008.12.25") (if (setq sn (entsel "\n点取物体:")) (progn (setq p1 (cadr sn) p2 t sn (car sn)) (if (or (= "TEXT" (to 0))(and p2 (to 66)(= "INSERT" (to 0)))) (progn (tqwz) (tqtxt) (setq l (1+ l )) (while p2 (setq p2 (getpoint "\n下一点:" p1)) (command "copy" sn "" p1 p2) (setq sn (entlast) p1 (to 10) en (entget sn)) (tqwz) (setq asc (ascii st)) (if p2 (if (and (= (strlen st) 1) (or (and (> asc 64) (< asc 90)) (and (> asc 96) (< asc 122)) ) );判断字符串是否是单个字母 (setq k (if (or (= asc 78)(= asc 72))(+ asc 2)(1+ asc));排除字母I,O st (chr k) ) ;如果字符串是单个字母,则按字母顺序增长 (setq st2 (substr st l) st2 (tost2) st (strcat st1 st2) ) ;按数字增长 ) ) (if (= "TEXT" (to 0)) (progn (setq e1 (subst (cons 1 st) (assoc 1 en) en)) (entmod e1) );修改文字 (progn (setq e1 (entget (entnext (cdr (car en))))) (setq e1 (subst (cons 1 st) (assoc 1 e1) e1)) (entmod e1)(entmod en) );修改属性 ) (princ st) ) ) (princ "\n ***你所点取的图元不是属性块或文字!本程序只拷贝带属性的块或文字。***") ) ) ) (command "undo" "e") (princ))
使用道具 举报
楼主这是自己写的呢还是copy别人 的程式呀?
(tqwz)和 (tqtxt)子程式在哪儿呀?
若有,要放在
(setq *error* nil) (command "undo" "g")
语句之前加载
不行了不行了.格下真是火眼真睛.没有办法,这也让你给看出来了,
讲老实话.是我需要这样一个程序.但我自己又没有.也不会写.到网上一搜.
搜了好长时间呀,.才搜到.弄到自己电脑上.结果用不了.真没有办法.
我们做属性块时.一般都会做三到五个属性值.有时会更多.我们要改那些值,
要手动去改的话有就麻烦了.那怕一个属性块里只有一个属性值要改都改死人.更
何况我们这种属性块有多个属性值.所以就希望高手们能写一个批量改多项属性值的
的程序呀.
没有那现在这样的程序呀,真的没有/找了好多回了
357785513发表于2008-12-21 22:55:00没有那现在这样的程序呀,真的没有/找了好多回了
请到http://www.xdcad.net/forum/showthread.php?s=&threadid=656994&perpage=15&display=&pagenumber=1下载。
本版积分规则 发表回复 回帖后跳转到最后一页
小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 ) ©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途
GMT+8, 2025-5-26 04:55 , Processed in 0.162739 second(s), 27 queries , Gzip On.
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.