图形属性列表修改遇到PL线就不行了是怎么回事?
本帖最后由 hwxyhh 于 2019-11-23 09:49 编辑(defun c:QQQ()
(setq pl (entsel "选取"))
(setq pl (car pl))
(setq pldata (entget pl))
(setq pldata (subst (cons 8"_SP-H-SMOK-CURT") (assoc 8"_SP-H-SMOK-CURT") pldata))
(setq pldata (cons (cons 370 18) pldata))
(setq pldata (cons (cons 6 "Continuous") pldata))
(entmod pldata)
)
初学autolisp请教一下
图元的图层、线形、线宽、颜色全都是bylayer
红色两行想修改图元的线宽和线形
选择文字、圆、直线都可以,但是PL线和矩形就不行是怎么回事?
(setq pldata (subst (cons 8"_SP-H-SMOK-CURT") (assoc 8"_SP-H-SMOK-CURT") pldata))
这句写错了,怎么图层一样 start4444 发表于 2019-11-23 11:57
(setq pldata (subst (cons 8"_SP-H-SMOK-CURT") (assoc 8"_SP-H-SMOK-CURT") pldata))
这句写错了 ...
是错了,应该是第二个应该是assoc 8 layer。。。前面还少了句(setq layer (assoc 8 pldata))
但是主要问题不是这里,修改后图层可以成功修改,注释掉这句。后面两句修改线宽和线型还是不成功 要考虑已经有线型或者线宽的情况,那就不是添加而是替换了 start4444 发表于 2019-11-23 13:58
要考虑已经有线型或者线宽的情况,那就不是添加而是替换了
都是在bylayer的情况下做的,
奇怪的就是选取直线,文字,圆形都可以成功修改,选取PL线和矩型就不行
页:
[1]