块插入失败
我有一个lisp可以插入块。但是,如果块不存在,autocad将打开该命令窗口并显示其搜索的所有路径。在我的lisp中,我只使用命令行插入。看起来是这样的
(vl-cmdf "-insert" WBIns P1 "1" "1" pause)
如果块不存在,lisp将执行此操作
Command: _TEST
Enter block name. <test> test2
Specify insertion point
Specify rotation:
"B0101.dwg": Can't find file in search path:
C:\Program Files\Autodesk\Acadm 2007\support\
C:\Program Files\Autodesk\Acadm 2007\fonts\
C:\Program Files\Autodesk\Acadm 2007\help\
C:\Program Files\Autodesk\Acadm 2007\express\
C:\Program Files\Autodesk\Acadm 2007\support\color\
C:\Program Files\Autodesk\Acadm 2007\drv\
C:\Program Files\Autodesk\Acadm 2007\
*Invalid*
Unknown command "1".Press F1 for help.
Unknown command "1".Press F1 for help.
“1”是x/y比例因子。在此之后,Lisp程序仍在暂停。我想要的是,如果块不存在,则取消lisp。我该怎么做? 如果块是外部块(WBLOCK),只需使用findfile函数,如果返回nil,只需退出程序。
如果块是内部块(图形模板中的块),请使用tblsearch函数,如果返回nil,则退出 很好很好。哇findfile我不知道它的存在谢谢 试试这个。。。
(and (or (tblsearch "block" BLOCKNAME)
(findfile BLOCKNAME.DWG))
(vl-cmdf "_.-insert"....
仅当它在图形中找到块定义或在支持路径中找到块文件时,才会插入。
页:
[1]