Lightwaveで外部のモジュールを使いたい。
LightwaveのGUIにPySideを使いたい、というモチベーションで調査開始。
LightwaveのPythonは環境パスのPythonではなく、
C:\Program Files\NewTek\LightWave_2015.2J\bin
(環境によるので注意)にあるdllを呼んでいるっぽい。
PySideを使おうと思ったのだけれど、当然入っていない。
LightwaveのPythonと本体にインストールされているPythonのバージョンが厳密に一致している必要がある。
LightwaveのPythonのバージョンは最初にLayoutツールを起動して、Utilities-Python-Open Consoleでウィンドウ起動したときの、一行目に出てくる。2015.2(64bit)版を利用している私の場合はPython2.7.7であった。
この2.7.7であることが重要で、3.4がNGなことは当然として2.7.11でもだめである。
2.7.10以降?ではpipがデフォルトインストールだが、2.7.7では入っていないため
https://pip.pypa.io/en/latest/installing/
よりget_pip.pyをダウンロード、
python get_pip.py
でpipのインストール。
一番わかりやすいnumpyをLightwave上から呼べるようにする。
pip install numpy
で、numpyのインストール。するとC:\Python27\Lib\site-packages\numpyにインストールされる。
このsite-packagesディレクトリには、Pythonのバージョンが一致している限りはLightwaveから参照されているため、Consoleからnumpyを呼び出してもちゃんと動くことが確認できる。
PySideについて
うまくいかない。pip install PySideで、PySideがインストール
import sys from PySide.QtGui import * from PySide.QtCore import * app = QApplication(sys.argv) # Create a Label and show it label = QLabel("Hello World") label.show() # Enter Qt application main loop app.exec_()
をPythonコンソールで試してみると
QtGUIコマンドを実行したところでLayoutツールがフリーズを起こす。
PySideはあきらめたほうがよさそう。。。