<p>dinosaurhxe2大侠,你好,请帮忙写一个给块排序的LSP,是冲模零件注解的块,我现在里面的内容全部手动修改的,一套模具2,3百个,真是累啊,请大侠高抬贵手。QQ:279660102</p>
<p>有请高手出招呀,二楼的复制属性块并递增数字并没有成功,我也想要此功能</p>
(defun c:nn( / e1 en l p1 p2 sn st st1 st2)
(setq *error* nil)
(command "_ucs" "w")
(princ "\n欢迎使用属性块连续拷贝程序! GYSJY2008.12.7")
(setq sn (entsel "\n点取属性块:") p1 (cadr sn) p2 t sn (car sn))
(if (and p2 (to 66)(= "INSERT" (to 0)))
(progn
(tosx)
(setq l (strlen st) st1(substr st 1 (- l 1)))
(while p2
(setq p2 (getpoint "\n下一点:" p1))
(command "copy" sn "" p1 p2)
(setq sn (entlast) p1 (to 10) en (entget sn))
(tosx)
(setq st2 (substr st l) st2 (atoi st2) st2 (1+ st2)
st2 (itoa st2) st (strcat st1 st2)
)
(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你所点取的图元不是属性块。本程序只拷贝带属性的块。")
)
(princ))
(defun to(n)
(cdr (assoc n (entget sn))))
(defun tosx()
(setq st(entget (entnext (cdr (car (entget sn)))))
st (cdr (assoc 1 st))
))
本帖最后由 yaya-54 于 2010-12-27 17:29 编辑
AMTONNY :你的程序我用在我的图框块中,它递加的是版本号,如何让我的图号中的数字递加?改程序中哪个?
呵呵,你把图框发过来给我看看,这个不用改程序,只改你的图框就可以了,要快哦
呵呵,十四楼的都不理我了
回复 AMTONNY 的帖子
怎么编号由19突然增加到111了?编号每满9就就会增加一位吗?最后一个的编号怎么会自动加一啊?
本帖最后由 gbhsu 于 2011-8-13 00:35 编辑
序号增加问题没有解决!
应整体加1,而不是个位加下,
另外如:E1 E2 E3之类前面为非数的加法也要能用!
回复 weig168 的帖子
论坛里有个实体排序的贴子,你搜下吧,冲压五金模具中用属性块一旦变更修改非常麻烦,我早就不用了,改用扩展数据块
占座学习一下