Mellie 发表于 2022-7-5 17:27:16

感谢您的澄清!
 
我仍在努力掌握WBLOCK命令的主要思想,我知道它可以减少文件大小,但它是如何做到的?WBLOCK命令从图形中提取什么来减少文件大小?
 
非常感谢。

dbroada 发表于 2022-7-5 17:34:02

WBLOCK命令去除所有不需要的内容,如图层、线型、块等。这是一种用于消除无法定位的错误的旧技术!但是,请谨慎使用。如果您花了很长时间创建下周要使用的块,那么将使用WBLOCK处理它们。类似地,如果您有一个预期的图层约定,但其中一些是空的,那么它们将被删除,您可能需要重新创建它们。

Negarth 发表于 2022-7-5 17:35:02

你好
我试过Lisp程序,效果很好。
我想用这个lisp去掉所有Displayproperties。
由于我需要处理大量的图形,我考虑在scriptpro 2.0中使用这个lisp。
有没有可能锁定一个图形并将其保存在原始文件夹中,或者使用原始文件名或类似的名称_wblock。图纸?
 
我希望你能帮助我。
谢谢
伯纳德

BIGAL 发表于 2022-7-5 17:41:43

当您使用脚本并打开图形时,很容易加载lisp,即使您通过脚本知道dwg名称,但lisp不知道,所以只需添加(getvar“dwgname”)将“wblock”添加到名称并使用您已有的内容。

Negarth 发表于 2022-7-5 17:44:53

你好,比格尔,
谢谢你的回复。
我应该承认,我是一个无赖。所以,我的做法是循序渐进。
我将lisp修改为:
 

(defun c:partial_saving ( / file)
getvar "dwgname"
(if (setq file(findfile "dwgname"))
   (vl-file-delete file)
   )
(vl-cmdf "-wblock" "dwgname" "j" "*")
);defun

 
lisp报告已经存在dwgname。图纸。。。。覆盖是/否。
Lisp程序结束了,但我不知道文件保存在哪里。
 
来自慕尼黑的问候。
伯纳德

Negarth 发表于 2022-7-5 17:50:47

你好
 
解决方案是:
 

(defun c:partial_saving ( / dwg)

(setq dwg (strcat (getvar "dwgprefix") "wblock_" (getvar "dwgname")))

(if (findfile dwg)
   (vl-file-delete dwg)
)

(vl-cmdf "-wblock" dwg "j" "*")

);defun

问候语。
伯纳德
页: 1 [2]
查看完整版本: 关于“wblock”命令