Nuke Python 用PyQt擴(kuò)展Nuke

雖然nuke內(nèi)置了pyside踱蛀,但是想用pyqt還是可以的。
配置pyqt需要幾個步驟絮供,當(dāng)然Python26也要安裝子巾。
要在nuke里面用qt描孟,先下載Qt 4.6.2 然后運(yùn)行build.py 參數(shù) release 64,編譯pyqt需要鏈接的所有庫砰左。

編譯完成后,將可執(zhí)行程序的路徑加入環(huán)境變量场航。<qtbuilddir>/bin/
后面是各個平臺的具體操作步驟:

Mac OSX
  • 下載sip缠导,并解壓
  • 運(yùn)行如下命令:
configure.py
make
make install
  • 下載pyqt4的源碼,并解壓
  • 到解壓目錄下面運(yùn)行命令:
configure.py
make
make install
  • PyQt庫配置來指向nuke的qt庫溉痢,運(yùn)行soFileFixForMacPyQt.py,其和qt的源碼綁在一起僻造。

最后根據(jù) Environment setup來設(shè)置環(huán)境。

Linux
  • 下載sip孩饼,解壓髓削,編譯:
configure.py
make
make install
  • 下載pyqt4,解壓編譯:
configure.py
make
make install

最后看 環(huán)境設(shè)置部分

Window

和linux操作差不多镀娶,不再贅述立膛。

Enviroment Setup

編譯好的sip和pyqt應(yīng)該在python的site-packages目錄。推薦做法:拷貝sip和pyqt到一個單獨(dú)目錄梯码,然后添加到python path里面
例如: 給nuke的pyqt創(chuàng)建一個目錄<pyqtbuilddir>宝泵,并拷貝文件到目錄下:

## files and dirs to copy
PyQt4/
sip.so
sipconfig.py
sipdistutils.py


## final directory tree looks like

<pyqtbuilddir>/PyQt4/*
<pyqtbuilddir>/sip.so
<pyqtbuilddir>/sipconfig.py
<pyqtbuilddir>/sipdistutils.py

將pyqt添加到python,你就可以從nuke里面使用pyqt了轩娶。

export PYTHONPATH=<pyqtbuilddir>

或者在nuke的 menu.py里面加入:

sys.path.append ("<pyqtbuilddir>")
第一個 PyQt 窗口

啟動NUKe儿奶,打開腳本編輯器,填入下列命令:

from PyQt4 import QtGui
label = QtGui.QLabel("Hello World")
label.show()

hello world窗口就會顯示

Pyside和 PyQt knobs

可以把PyQt的widget插入nuke的python panel鳄抒,并像
nuke的panel一樣痛成樱靠。
想要PyQt的widget可托斫Γ靠瓤鼻,就需要用一個wrapper knob來創(chuàng)建
其可以被PyCustom_Knob.
wrapper knob 要有 makeUI()函數(shù)來返回widget。
作為例子闹司,可以看nukescript/pyQtExamples目錄下的webBrowser.py
測試?yán)佑樽校谀_本編輯器輸入:

import nukescripts.pyQtExamples.webBrowser

現(xiàn)在pane菜單就有一個web browser了。

也可以使用panels.registerWidgetAsPanel 的wrapper函數(shù)來 wrap一個PyQt的widget游桩,而不是創(chuàng)建一個自定義knob牲迫,同樣適用于pyside耐朴。
更多信息請查看Dockable Pyside widget。

從Qt程序遷移 nuke6.2

以前的nuke盹憎,需要在另外的線程里面運(yùn)行pyqt筛峭,并且用executeInMainthread來調(diào)用nuke。
這在nuke6.3或者以后版本就不適用了陪每。
為了后向兼容影晓,pyQtappUtiles.py可以讓以前的函數(shù)繼續(xù)使用,但是推薦更新代碼檩禾,使用qt標(biāo)準(zhǔn)的show函數(shù)挂签。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市盼产,隨后出現(xiàn)的幾起案子饵婆,更是在濱河造成了極大的恐慌,老刑警劉巖戏售,帶你破解...
    沈念sama閱讀 218,546評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件侨核,死亡現(xiàn)場離奇詭異,居然都是意外死亡灌灾,警方通過查閱死者的電腦和手機(jī)搓译,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,224評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來锋喜,“玉大人些己,你說我怎么就攤上這事∨芊迹” “怎么了轴总?”我有些...
    開封第一講書人閱讀 164,911評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長博个。 經(jīng)常有香客問我怀樟,道長,這世上最難降的妖魔是什么盆佣? 我笑而不...
    開封第一講書人閱讀 58,737評論 1 294
  • 正文 為了忘掉前任往堡,我火速辦了婚禮,結(jié)果婚禮上共耍,老公的妹妹穿的比我還像新娘虑灰。我一直安慰自己,他們只是感情好痹兜,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,753評論 6 392
  • 文/花漫 我一把揭開白布穆咐。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪对湃。 梳的紋絲不亂的頭發(fā)上崖叫,一...
    開封第一講書人閱讀 51,598評論 1 305
  • 那天,我揣著相機(jī)與錄音拍柒,去河邊找鬼心傀。 笑死,一個胖子當(dāng)著我的面吹牛拆讯,可吹牛的內(nèi)容都是我干的脂男。 我是一名探鬼主播,決...
    沈念sama閱讀 40,338評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼种呐,長吁一口氣:“原來是場噩夢啊……” “哼宰翅!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起爽室,我...
    開封第一講書人閱讀 39,249評論 0 276
  • 序言:老撾萬榮一對情侶失蹤堕油,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后肮之,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,696評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡卜录,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,888評論 3 336
  • 正文 我和宋清朗相戀三年戈擒,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片艰毒。...
    茶點(diǎn)故事閱讀 40,013評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡筐高,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出丑瞧,到底是詐尸還是另有隱情柑土,我是刑警寧澤,帶...
    沈念sama閱讀 35,731評論 5 346
  • 正文 年R本政府宣布绊汹,位于F島的核電站稽屏,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏西乖。R本人自食惡果不足惜狐榔,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,348評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望获雕。 院中可真熱鬧薄腻,春花似錦、人聲如沸届案。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,929評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至尽纽,卻和暖如春咐蚯,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蜓斧。 一陣腳步聲響...
    開封第一講書人閱讀 33,048評論 1 270
  • 我被黑心中介騙來泰國打工仓蛆, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人挎春。 一個月前我還...
    沈念sama閱讀 48,203評論 3 370
  • 正文 我出身青樓看疙,卻偏偏與公主長得像,于是被迫代替她去往敵國和親直奋。 傳聞我的和親對象是個殘疾皇子能庆,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,960評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 簡書的 markdown 沒有目錄,截圖一張脚线,讓大家看的清楚搁胆,找到自己需要的東西。 更新日志:2017年12月3日...
    inke閱讀 91,076評論 57 225
  • 背景 最近的一個項(xiàng)目中邮绿,需要在Mac系統(tǒng)下開發(fā)桌面應(yīng)用渠旁,網(wǎng)上大概搜索了下Mac的APP開發(fā),發(fā)現(xiàn)Mac提供的原生開...
    Darylzhang閱讀 4,527評論 3 3
  • 使用下文描述的nuke.add...()函數(shù)船逮,當(dāng)有變量事件(比如顾腊,創(chuàng)建節(jié)點(diǎn),加載腳本)時(shí)就自動調(diào)用python函數(shù)...
    N景波閱讀 2,679評論 0 1
  • 謝謝你曾喜歡過我 無論假意還是真心 我想我是深愛著的 可是夢總歸要醒來 就像一切不曾發(fā)生
    雯子ww閱讀 163評論 0 0
  • 我嬸是童養(yǎng)媳挖胃,比我爸小十六歲杂靶。長哥為父,叔和嬸一直把大哥當(dāng)作父親看待酱鸭。我父親對他倆也父親般地從小照顧著他倆吗垮。 特別...
    A寒秋閱讀 531評論 12 11