在指定图形文件创建图层
请教大佬如何利用autolisp在指定的图形文件创建图层,如在drawing.dwg中创建图层test?(if (wcmatch (getvar'dwgname) "Drawing*") ;判断当前文档名字
(progn
;这里写要执行的代码
)
) ...在指定的图形文件创建图层...
该文件是已开启?未开启?
非现用图形文件缘何需创建图层!? Andyhon 发表于 2019-9-12 16:48
...在指定的图形文件创建图层...
该文件是已开启?未开启?
是这样的,我需要新建一个图形文件,然后在这个图形文件里面创建图层,并绘图。整个过程就是利用autolisp命令创建图形文件,再在这个图形文件里面画图,并保存。 您不妨探讨古老的脚本(Script)用法...
但为何不是直接开图然后调用程序!?
有特殊需求? Andyhon 发表于 2019-9-12 18:57
您不妨探讨古老的脚本(Script)用法...
但为何不是直接开图然后调用程序!?
是的,我是在已有图形文件中处理数据然后画图,直接把图画在原图形文件中比较凌乱,虽然也可以新建图层,但是整体比较混乱,所以尝试将结果图绘制在新的图形文件中。 (defun DWG-addLayer (/ DwgName LayName LayObj)
(setq dwgname "d:\\桌面\\Drawing1.dwg" LayName "TEST");;文件名自己修改
(setq DBXDoc (Vlax-Get-Or-Create-Object
(strcat "ObjectDBX.AxDbDocument." (substr (getvar "AcadVer") 1 2))
)
)
(vla-open DBXDoc DwgName)
(setq LayObj (vla-add (vla-get-layers DBXDoc) LayName))
(vla-put-color LayObj 1)
(vla-saveas DBXDoc DwgName)
(vlax-release-object DBXDoc)
(vlax-release-object Layobj)
) caoyin 发表于 2019-9-15 00:40
(defun DWG-addLayer (/ DwgName LayName LayObj)
(setq dwgname "d:\\桌面\\Drawing1.dwg" LayName "TEST ...
谢谢你的回复
页:
[1]