SLW210 发表于 2022-7-6 07:50:56

 
我翻译成这个。。
 
 

Tharwat 发表于 2022-7-6 07:53:02

是的,我已经翻译了同样的内容,但我认为OP应该再次阅读这篇文章,而他们语言中的那篇文章表明他们很匆忙,这导致他们无法很好地理解代码。

Costinbos77 发表于 2022-7-6 07:56:37

您好!
我很着急,所以我发了这条信息,因为它是发给理解我写的东西的人的。

Costinbos77 发表于 2022-7-6 07:58:32

回到最初的问题是一个很好的解决方案,我认为不是。
另一种方法是将当前层更改为“0”。
但这些解决方案避免了问题,而不是解决问题。问题是:在模型空间和图纸(布局)之间切换时会发生什么?这个“再生”或“重画”就是答案。

Stefan BMR 发表于 2022-7-6 08:02:56

Costin,
如果你在跟我说话,我必须说“代码删除,错误的解释”不是错误(不是你认为的那样)。我只是误解了你的要求,我删除了代码。
 
回到你的问题上来,我无法再现你描述的行为。您确定这只是再生问题,还是有错误消息?类似于
如果您尝试在当前层上冻结,无论是:vlax true还是:vlax false,都会收到此消息。
 
您可以尝试本机命令layon和laythw,然后关闭不在lStrat列表中的图层。
 
斯特凡

Costinbos77 发表于 2022-7-6 08:06:14

对于斯特凡。
对不起,我没有仔细阅读,我现在明白它是关于什么。
 
我试图制作一个程序,以适应图纸1到图纸2各层的属性。
使用以下工具更容易获取和处理图层:
 
 

(vlax-for obj (vla-get-Layers (vla-get-ActiveDocument Acad-Obj))
(if (and (= (vla-get-LayerOn obj) :vlax-true) (= (vla-get-Freeze obj) :vlax-false))
(setq ll1 (cons obj ll1)lStrat (cons (vla-get-Name obj) lStrat)) ;_ end of setq
) ;_ end of if
) ;_ end of vlax

 
启动来自图纸1和图纸2的更改。
 
图纸2很难发送
 

(vla-SendCommand vgad (strcat "(command \"_layoff\" strat \"\")") )

 
与活动文档中的命令类似

(command "_layoff" strat "")

 

(vlax-for obj (vla-get-Layers oacd)
   (if (member (vla-get-Name obj) lStrat)
    (Prognos (vla-put-LayerOn obj: vlax-true) (vla-put-Freeze obj: vlax-false))
    (Prognos (vla-put-LayerOn obj: vlax-false))
   ) _ End of if
) _ End of vlax


 
但在未对图纸2进行任何干预的情况下,未发生任何可见变化:
在模型空间和图纸空间或其他空间之间设置或更改图层。
 
寻找避免手动设置的解决方案。
 
但在未对图纸2进行任何干预的情况下,未发生任何可见变化:
在模型空间和图纸空间或其他空间之间设置或更改图层。
 
寻找避免手动设置的解决方案
我想一定有这样的东西:
 

(command "REGEN")


使用了lisp函数entmod entupd。
 
vla更新了什么?

SLW210 发表于 2022-7-6 08:07:34

 
请编辑您的帖子,将所有代码和代码段包含在代码标记中。

SLW210 发表于 2022-7-6 08:11:56

您需要编辑帖子#1和#6。

Costinbos77 发表于 2022-7-6 08:16:41

我注意到在运行应用程序lisp之后,
 
8

Costinbos77 发表于 2022-7-6 08:19:06

页: 1 [2]
查看完整版本: 在m之后重新生成图形