强制打开箭头为实心
大家好,我需要帮助修理箭头。
某些图形附带箭头的默认设置为“打开”。当我运行实用程序(将带有自定义文本的引线作为块插入)时,它会将箭头插入为打开状态。我的要求是始终添加实心箭头。我试图通过下面的代码强制它,但它不是强制的。有人能建议吗?
可能有什么问题?
(defun Addleader (/ pt1)
(setvar "DIMLDRBLK" ".")
(while
(setq pt1 (getpoint "\nInserting task description note, Specify Arrow End Point or hit Enter to close:"))
(Command "_INSERT" "CP TEXT" pt1 "" "" "")
(command "explode" "l")
);end while
) ;end defun
编辑:我认为它必须与默认的DIMSTYLE有关。我试着把它插入标准的dim样式中。不知道该如何处理。 DIMLDRBLK适用于新创建的引线,并且您已将引线作为块插入,因此逻辑上无法更改。 我想我同意这一点,但有没有办法写DIMLDRBLK。(dot)通过lisp强制将其作为默认值,而不是打开。我当前的代码是这样写的吗?此外,当我更改设置时,标准样式将更改为标准(替代)。我试图插入的块在标准上有一个引线。这就是我认为它不起作用的地方。你同意吗?
或者我应该将块图形上的引线更改为标准(替代)以匹配样式吗?
此外,如何通过lisp编写“”以通过lisp将DIMLDRBLK it更改为实体?像这样“”? 您可以阅读关于函数vla put ArrowheadBlock的内容,然后将值设置为null string(与ClosedSolidArrowHeads的情况相同) 为什么不更改块中引线的属性,然后即使在分解后也可以使用所需的设置设置引线。 我认为这个想法可行。我只需要在几张图纸上测试一下,看看它是否100%有效。我会随时通知你的。
非常感谢。
我很想知道结果 塔尔瓦特,
以下是根据您的建议,它最终是如何工作的。由于我要插入一个块(我强制它成为原始块图形上的实心引线),我必须添加一个清除命令来清除现有块(插入后立即分解,因此可以安全/允许清除)。当时我正在尝试现有的图纸,我意识到为什么它不能在所有图纸上工作。但是净化对我来说起了作用。
(if (tblsearch "BLOCK" "CP TEXT")
(command "_purge" "B" "CP TEXT" "N")
)
谢谢你的帮助。 很高兴知道你已经按需要工作了。
祝你好运。 最后一个障碍,
如何找到位于特定图层上的所有现有引线,并将其更改为实心箭头?
这是一个修复,我可能不得不在所有现有的图纸上运行到目前为止。
页:
[1]
2