不客气。 @塔尔瓦特:
在具有多个PS布局的图形中,代码将多次更改每个视口。
因为什么?
当我合并时,你的代码不工作?
(Defun c:vplk ()
(setq d (ssget "_x" '((0 . "VIEWPORT"))))
(vplock d T)(princ))
(Defun c:vpun ()
(setq d (ssget "_x" '((0 . "VIEWPORT"))))
(vplock d nil)
(princ)
)
(Defun vplock (sel flg)
(setq mode (if flg:vlax-true :vlax-false))
(repeat (setq i (sslength sel))
(vlax-put-property (vlax-ename->vla-object (ssname sel (Setq i (1- i))))
'DisplayLocked mode)
)
(princ (strcat "\nViewports " (if flg "" "Un" )"locked"))(princ)
)
(vl-load-com)
(defun c:vplk ( / d)
(if (setq d (ssget "_X" '((0 . "VIEWPORT"))))
(vplock d T)
)
(princ)
) 糟糕,我没有正确检查你的代码。您的代码不会多次修改实体。我的道歉Tharwat
别担心,罗伊,没事的。 @CAD:
代码运行良好。
我怀疑您没有意识到,当布局从未被激活时,它不包含任何视口。首次激活布局时看到的视口是新创建的(这就是为什么它可以完全适合模型空间中当前可见的图元)。
因此,例如,如果您从头开始绘制,并且仍在“模型”选项卡上,则图形中将没有可供代码更改的视口。
请在所有布局都已激活的图形中重新测试代码。
注1:
在组合代码时,应该删除函数的旧版本,而不仅仅是附加新代码。
注2:
首次激活布局时,将自动生成两个视口,而不是一个视口。第一个是主图纸空间视口。 相关主题:
https://www.cadsite.be/smf/index.php?topic=1204.msg33950#msg33950
您好Roy_043; u right!!!我想我犯了一个错误,Lisp程序也能用!!太棒了认为我的acad中有一些旧代码。
你们都很好!!!!Thanksss Bedankt!!!
页:
1
[2]