hwxyhh 发表于 2019-11-23 09:44:01

图形属性列表修改遇到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线和矩形就不行是怎么回事?

start4444 发表于 2019-11-23 11:57:16

(setq pldata (subst (cons 8"_SP-H-SMOK-CURT") (assoc 8"_SP-H-SMOK-CURT") pldata))
这句写错了,怎么图层一样

hwxyhh 发表于 2019-11-23 13:53:42

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:02

要考虑已经有线型或者线宽的情况,那就不是添加而是替换了

hwxyhh 发表于 2019-11-23 15:05:53

start4444 发表于 2019-11-23 13:58
要考虑已经有线型或者线宽的情况,那就不是添加而是替换了

都是在bylayer的情况下做的,
奇怪的就是选取直线,文字,圆形都可以成功修改,选取PL线和矩型就不行
页: [1]
查看完整版本: 图形属性列表修改遇到PL线就不行了是怎么回事?