LISP在所有操作中重新加载外部参照
是否可以创建在所有打开的图形中重新加载外部参照的命令?最好只有已更改的外部参照,但所有打开图形中的所有外部参照也都很好谢谢 据我所知,VLA块对象的重新加载方法将仅在活动文档命名空间中操作,因此只能在当前图形中重新加载外部参照:
(defun c:rlall nil
(vlax-for b (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)))
(if (eq :vlax-true (vla-get-isxref b)) (vla-reload b))
)
(princ)
)
(vl-load-com) (princ) 我有一个类似的实用程序,也允许隐含选择。
如果不存在有效的隐含选择,代码会有条件地提示用户指定要按名称重新加载的外部参照。提示还包括“All”选项。
这个工具对我的工作非常宝贵。
谢谢李。是否可以在打开的图形中循环,在每个图形上使用此功能,然后跳回初始的“当前”图形?
不使用LISP,因为当另一个文档名称空间处于活动状态时,LISP函数将失去焦点,因此将停止计算。我认为实现这一点的唯一方法是编写一个临时脚本,在图形上迭代,并在每个图形上评估LISP函数,尽管这并不理想。
页:
[1]