论坛首页 | 新人报到 |发帖必看—论坛版规 | 错误报告 | 注册用户
Baidu
发新话题
打印

编辑文字的LSP

编辑文字的LSP

(defun c:EDD (/ e e2 ent ent2 en en2 newt oldt ent1 ent12 tst)

(setq tst t)

(setq e (car (entsel "\nPick a text or a attrib: ")))

(if (/= e nil)

(progn

(setq ent (entget e))

(cond

((and (= (cdr (assoc 0 ent)) "INSERT")

(= (cdr (assoc 66 ent)) 1)

)

(progn

(setq en (entget (setq ent (entnext e))))

(setq oldt (cdr (assoc 1 en)))

)

)

((= (cdr (assoc 0 ent)) "TEXT")

(setq oldt (cdr (assoc 1 ent)))

)

(T

(princ

"\nError: Not a text or not a block or no attrib in block !"

)

(setq tst nil)

)

)

)

(setq tst nil)

)

;;;----------------------------------------------------------------------

(while tst

(setq e2 (car (entsel "\nPick New a text or a attrib: ")))

(if (/= e2 nil)

(progn

(setq ent2 (entget e2))

(cond

((and (= (cdr (assoc 0 ent2)) "INSERT")

(= (cdr (assoc 66 ent2)) 1)

)

(progn

(setq en2 (entget (setq ent2 (entnext e2))))

(setq newt oldt)

(setq ent12

(subst (cons (car (assoc 1 en2)) newt) (assoc 1 en2) en2)

)

(entmod ent12)

(entupd ent2)

)

)

((= (cdr (assoc 0 ent2)) "TEXT")

(progn

(setq newt oldt)

(setq ent12 (subst (cons (car (assoc 1 ent2)) newt)

(assoc 1 ent2)

ent2

)

)

(entmod ent12)

)

)

(T

(princ

"\nError: Not a text or not a block or no attrib in block !"

)

(setq tst nil)

)

)

)

(setq tst nil)

)

)

;;;----------------------------------------------------------------------

(princ)

)

TOP

发新话题
郑重声明: 本论坛属技术交流,非赢利性论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,会员在论坛发表的言论仅代表个人观点,不代表论坛立场!
本站部分内容及所有资料来自网络,版权归原作者所有,本站仅仅提供一个观摩学习的环境,将不对任何资源负法律责任!请在下载后24小时内删除!
会员出于学习和科研的目的进行交流和讨论,如有侵犯原作者的权益,请来信告知,我们将立即删除,并将删除结果给予答复,如有版权争议请与yhlbbs@126.com联系!