在AutoC中合并多个层
大家好,我需要一点帮助。
我有一些包含各种图层的图纸,这些图层是用一种旧的方式命名的。
我需要将这些旧层合并到新层中。所有这些都与旧层名称有关,需要符合BS1192层命名约定。
以下是我需要合并的同一个文件中的一些示例:
旧层1>新层1
旧层2>新层2
旧层3和4>新层3
旧的第5层(保持原样,不需要合并)。
我可以使用LAYMRG命令来实现这一点(相当繁琐),但我在一个图形中有大约30多个实例要做,我有大约100个图形要做。
理想情况下,我希望创建一个参考表(目前在Excel中),其中包含哪些旧层与哪些新层合并,然后使用script命令在图形文件中调用该表(使用脚本),然后选择文件。我很乐意每次打开每个绘图并运行脚本,而不是在多个文件上批量运行脚本(似乎风险更大)。
有谁能帮我编写一个脚本来实现这一点,因为我不熟悉scipt语法(我需要学习)。
我确实找到了一个旧脚本(可能是2008年,但它不会运行,因为我认为旧的MergeLayers命令在2015LT中已经失效。我试图替换LAYMRG命令,但没有成功。
任何帮助都将不胜感激,因为我是一个脚本noob
干杯
格林 如果有,可以使用层转换器。设置后,可以保存转换文件并将其应用于其他图形。 谢谢RobDraw。
从外观上看,LT没有图层转换器-仅适用于AutoCad 2015,而不是LT版本。https://knowledge.autodesk.com/support/autocad/learn-explore/caas/CloudHelp/cloudhelp/2016/ENU/AutoCAD-Core/files/GUID-597F7140-6BB9-444C-8F14-5E5655556B69-htm.html
作为检查,我尝试了它,但LAYTRANS命令不起作用:/
干杯先生,
格林 没有翻译,那太糟糕了。编写LAYMRG脚本应该相当容易。我从来没有写过脚本,但它是基于命令行的,所以如果您使用命令行版本来完成这个过程,您应该能够理解它。使用“名称”选项并手动输入图层名称。这将是剧本的基础。复制和粘贴,做一点格式化,你应该很好去。 实际上,我可以使用命令行复制/粘贴我需要的东西。例如:
有点像这样。。。
LAYMRG公司
N
OLDLayer1
OLDLayer2
OLDLayer3
N
新建层1
我遇到的问题是,只要需要选择第一个层名称,就会弹出一个对话框,我不确定如何在命令行中使用按键来取消该框,因为它已经将其粘贴到命令行中了。
如果我可以使用SCRIPT命令基本上运行相同的东西,在那里我可以使用击键,这将是完美的。。。但我只是对脚本语法知之甚少。 正如我所说,有必要设置一些格式。我得看看怎么做。在我有机会调查之前,你可能会自己想出来。 如果你正在写一个脚本,你不需要使用命令行版本的图层合并,这将是-LAYMRG,从而避免了对话框。 这是正确的。我没有意识到这个错误,因为在MEP上使用没有破折号的命令时没有对话框。
你能发布对话框的屏幕截图吗?我只是好奇,这对剧本没有什么影响。 感谢RobDraw和评论,非常感谢您的回复。
进步在于,只要语法正确,我实际上可以使用LAYMRG或-LAYMRG。在脚本文件(.scr)中执行此操作(回车/空行非常重要),并从命令行中的脚本调用它:
-LAYMRG公司
n
OLDLayer1
n
新建层
y
-LAYMRG公司
n
OLDLayer2
n
新建层
y
-LAYMRG公司
n
OLDLayer3
n
新建层
y
-LAYMRG公司
n
OLDLayer4
n
新建层
y
唯一的问题是,如果任何旧层不存在,它会在该点中断脚本序列:/ 可以在脚本的开头创建层。
页:
[1]
2