<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
本文以Python開發為例來進行說明,環境說明:
Python相關環境所在的位置(Shell、Source Editor、Panel Editor)
Shell 就簡單介紹一下。當執行 python 程式碼時,如果沒有開啟 Python Shell,相應的列印會出現在 Houdini Console(桌面右下角)
如果開啟了,則列印資訊會出現在 shell 視窗
Python Panel Editor,可以建立介面(New Interface),供panel的tab頁籤呼叫,以及下拉式選單使用
也可以通過先開啟Python Panel
後,通過右上角的功能按鈕開啟 Python Panel Editor
建立的介面(Interfaces
),通過設定便可以在其它tab頁籤中直接呼叫開啟了(按 Apply確認,或者 Accept 確認並關閉視窗)
我們更多需求是在選單欄上面,自定義很多選單功能按鈕
比如下面這樣:
(1)建立一個選單頁籤索引標籤(New Shelf)
(2)往索引標籤裡新增功能按鈕(New Tool)
按鈕被點選時所執行的指令碼,在 Script 中進行編寫,常用的還有選項(Options)以及Hotkeys(熱鍵)
(3)我們通過在 Scripts 中重新載入程式碼來執行 python 檔案
一種通過切換 python工程目錄,os.chdir;另外一種方法是通過 sys.path.append
追加路徑
import os import sys from imp import reload houdini_tool_path = 'python檔案存放的路徑' if houdini_tool_path not in sys.path: sys.path.append(houdini_tool_path) else: print(houdini_tool_path + " 存在") import python檔名 reload(python檔名) // todo...(比如執行python檔名指定的 run 函數等)
為了工具更便捷的開發,介面我們採用了 PySide2
進行搭建。
# 升級系統的pip > python –m pip install –upgrade pip # 安裝 PySide2 > pip install pyside2
注意建立的是 Widget
,以及控制元件的名稱( Python 程式碼通過名稱獲得該控制元件的參照)
如果想為 Houdini
安裝外部的 python庫,比如pandas,需要用到 get-pip.py檔案
弄完UI,我們來看看IDE編碼環境如何搭建。本文用的是PyCharm編輯器,首先需要設定直譯器路徑為 Houdini 的 Python37目錄
並向直譯器路徑新增以下三個目錄
安裝Houdini Python Support
外掛
將新建的 Python 檔案儲存至指定目錄,以便選單欄上的按鈕 Script 能載入並執行。
剩下主要任務就是編碼,首先找到 ui 介面存放路徑,然後載入介面,繫結介面事件
# coding=utf-8 # import hou import os from PySide2 import QtCore, QtUiTools, QtWidgets class CreateNodeDemo(QtWidgets.QWidget): def __init__(self): super(CreateNodeDemo, self).__init__() # 建立介面 ui_file_path = 'UI介面存放的路徑' self.ui = QtUiTools.QUiLoader().load(ui_file_path, parentWidget=self) self.setParent(hou.ui.mainQtWindow(), QtCore.Qt.Window) # 繫結介面事件 self.ui.btn_create.clicked.connect(self.btn_click_handler) print('11111111111111111111') # 列印紀錄檔 def btn_click_handler(self): node_name = self.ui.txt_node.text() self.create_node(node_name) def create_node(self, node_name): hou.node('/obj/').createNode('geo', node_name) def run(): win = CreateNodeDemo() win.show()
到此這篇關於基於Python的Houdini外掛開發過程詳情的文章就介紹到這了,更多相關基於Python的Houdini外掛開發內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45