更改比例因子线条
为什么有时有效,有时无效?是什么导致了这种情况?
我打算应用例程来更改线型的比例因子。
(defun c:ls (/ ns a n i b1 c d b2)
(setvar "cmdecho" 0)
(setq ns (getreal "\nNew Scale: "))
(setq a (ssget))
(setq n (sslength a))
(setq i 0)
(repeat n
(setq b1 (entget (ssname a i)))
(setq i (1+ i))
(setq c (assoc 48 b1))
(setq d (cons (car c) ns))
(setq b2 (subst d c b1))
(entmod b2)
)
(princ)
)
(prompt "\nType: LS") 函数名entmode有一个错误,必须像这个entmod一样没有e。
当前例程的名称属于内置命令列表。
您是否尝试了ltscale命令调用? 尽管我不确定是否可以单独更改每个实体的比例因子。
塔尔瓦特,
已修复,但仍然存在相同的不一致性。
此外,有时会使线路加倍。 请注意,DXF代码48(局部线型比例因子)仅在值不同于1.0时出现-类似于颜色代码62或线型代码6。
LTSCALE实际上是一个系统变量,其值通过乘以局部线型比例因子来影响图元的外观。 该解决方案应该与我在上一个帖子中向您建议的解决方案类似。 考虑以下代码:
还要注意,由于您没有在代码中调用任何命令,因此无需更改CMDECHO系统变量。
请花些时间研究上述代码,并询问您是否有任何问题。
李,
我很感激这更多的帮助。
在我的限制范围内,我认为我理解代码。
然而,对于我发布的代码,我不理解为什么有些作品和其他时候没有。
我能看到的一件事是,他们代码的一个特点是在没有冗余代码或多余行的情况下进行优化。当然,这是可执行的,并且只显示了它的质量,但是对于那些对AutoLISP的知识仍然非常基础的人来说,逐步理解代码变得有点困难。
对于所有人来说,得到真正大师的帮助和解释总是一种特权。
储罐
页:
[1]