在Autocad中直接調用Python二次開發程序是有必要的,下面介紹一種方法來實現這個功能:
其基本思路是:先將二次開發的程序打包為可執行程序exe,然后編寫lsp文件,該文件寫入調用exe程序的語句,然后就可以直接在Autocad命令行用命令直接調用python二次開發的程序了。
例子:
(1)打包為exe
(2)編寫lsp文件: johnyang.Lsp
(defun c:johnyang()
(startapp "F:\\PycharmProject\\DesignWorkTask\\setNewDimStyle\\setNewDimStyle.exe")
)
這個文件中,defun
是定義函數,johnyang()
是函數名稱,無參數,這里在Autocad中輸入的命令正是該函數名!注意不要與johnyang.Lsp的文件名混淆,輸入的命令不是文件名。 startapp
是打開應用, 后面跟上exe的絕對路徑,注意用\\
路徑分隔符。最后應注意startapp命令需要用()
括號。
(3)AutoCAD中輸入appload
來加載,選擇剛創建的johnyang.Lsp
。
(4)命令行輸入johnyang
可以發現,已經打開了該可執行文件!