自從NX10.0以來,NXOpen增加了對Python的支持,Python有多強大不用解釋,本來UG自帶操作記錄編輯器(如下圖)可以用來錄制操作記錄,也能編輯和運行python程序,但我想沒人會用那個來進行二次開發
為了能更方便的利用Python對UG進行二次開發,最好是設置使用外部Python版本運行NX中的Python腳本,這樣不僅可以使用強大的Python第三方庫,而且結合IDE的使用,可以讓寫代碼變得稍微輕松點,至少有代碼提示。根據NX文檔,NX12.0使用的Python版本為3.6.1,所以得在電腦中安裝python3.6.1。設置如下:
打開G:\Program Files\Siemens\NX 12.0\UGII\ugii_env.dat,增加兩行,其中,注意根據python3.6.1及NX的實際安裝位置進行相應修改
UGII_PYTHON_LIBRARY_DIR="D:\Program Files\Python36" UGII_PYTHONPATH="D:\Program Files\Python36;D:\Program Files\Python36\DLLs;D:\Program Files\Python36\Lib;D:\Program Files\Python36\Lib\site-packages;D:\Program Files\Python36\libs;G:\Program Files\Siemens\NX 12.0\NXBIN\python"
為了驗證設置是否有效,新建一個文本,后綴名改為.py,寫入代碼如下:
import NXOpen session=NXOpen.Session.GetSession() lw=session.ListingWindow lw.Open() lw.WriteLine('Hello World')
打開NX12.0,Alt+F8,選擇剛才的文件,運行,結果如下:
這就說明設置成功,下面利用python自帶的IDLE來測試下代碼提示,新建一個文本文檔,文件名改為nxopen.pth,打開文件,輸入:
G:\Program Files\Siemens\NX 12.0\NXBIN\python(按NX實際安裝路徑更改)
然后將nxopen.pth放入D:\Program Files\Python36\Lib\site-packages文件夾中(按python實際安裝路徑更改),打開IDLE,首先import NXOpen,然后就可以正常提示了
當然,一般不使用IDLE進行開發,pydev是個不錯的選擇,關於如何在pydev中配置NXOpen-Python,在這里就不再贅述了,西門子官方有相關資料,網上也有很多,下圖是UF函數的提示及文檔
唯一讓我糾結的是,利用pydev調試NXOpen-python程序始終沒有弄好,按照官方文檔怎么試都不行,郁悶
官方給出的Eclipse+pydev 配置說明如下,需要的自取:
https://files.cnblogs.com/files/blogs/686940/Debug_NXOpen_Python_with_NX12_and_Eclipse_PyDev.zip