深入了解Python在HDA中的应用


Posted in Python onSeptember 05, 2019

Event Handler

在HDA中,要创建Python脚本,需要先选择一个事件处理器(EventHandle),他表示你要在什么时候执行你现在所创建的脚本命令

On Created (在节点创建时,执行脚本)
如选择此项编辑Python脚本,Python将会在节点创建时执行Python中的命令

Python Model (Python模式)

这一项会使创建的脚本在使用过程中根据用户设置执行

可以使用这一项给节点设置参数提示等功能

On Delete(在节点创建时执行脚本)

深入了解Python在HDA中的应用

Python在Houdini节点上的常用方法

Set Color 设置颜色

node = kwargs['node']#获取当前节点
context = hou.pwd()
#当前节点的父对象
node.setColor(hou.Color((0.584,0.776,1)))
#设置当前节点颜色

Node 创建节点

try:
  out = context.createNode('null','OUT_render')#从当前节点的父对象创建节点
  out.setInput(0,node)
#设置out节点输入端为当前节点node
  out.setColor(hou.Color(0,0,0))
#设置out节点的颜色
except:
  pass

Print and Button feedback 打印字符和按钮反馈

def CacheGeo():#在OnCreate创建一些自定的方法,然后可以在节点参数中调用
  this = hou.pwd()
#获取当前节点
  print "\nCaching......!"

  filecache = hou.node(this.path() + '/cache_geo')
#获取设置当前节点内cache_geo的路径为filecache
  filecache.parm('execute').pressButton()
#获取filecache节点上execute的状态
  this.setColor(hou.Color((0.584,0.776,1)))
#设置节点颜色
  
def ReloadGeo():
  this = hou.pwd()
  print "\nLoaded successfully"
  filecache = hou.node(this.path() + '/report_geo')
  filecache.parm('reload').pressButton()
  this.setColor(hou.Color((0.475,0.812,0.204)))

  output = hou.node(this.path() + '/output0')  #设置当前节点内output0节点的路径为output
  geo = output.geometry()  #获取output的geometry并赋予到geo(要求出geometry才可以求这个节点上的geometry属性)
  print len(geo.points())  #打印geo的点数

设置这两个按钮(cache_geo、report_geo)执行时调用不同的方法,执行不同的操作

参数调用PythonScripts

深入了解Python在HDA中的应用

hou.pwd().hdaModule().CacheGeo()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python进行新浪微博的mid和url互相转换实例(10进制和62进制互算)
Apr 25 Python
仅利用30行Python代码来展示X算法
Apr 01 Python
Python基于Tkinter实现的记事本实例
Jun 17 Python
python数据结构之列表和元组的详解
Sep 23 Python
python docx 中文字体设置的操作方法
May 08 Python
Python实现的多进程和多线程功能示例
May 29 Python
python获取中文字符串长度的方法
Nov 14 Python
如何使用Python实现斐波那契数列
Jul 02 Python
浅谈selenium如何应对网页内容需要鼠标滚动加载的问题
Mar 14 Python
Python基于模块Paramiko实现SSHv2协议
Apr 28 Python
520使用Python实现“我爱你”表白
May 20 Python
Python collections.defaultdict模块用法详解
Jun 18 Python
python urllib爬虫模块使用解析
Sep 05 #Python
详解Python3 pandas.merge用法
Sep 05 #Python
python爬虫 猫眼电影和电影天堂数据csv和mysql存储过程解析
Sep 05 #Python
python爬取Ajax动态加载网页过程解析
Sep 05 #Python
python实现静态服务器
Sep 05 #Python
python编写简单端口扫描器
Sep 04 #Python
python 3.6.7实现端口扫描器
Sep 04 #Python
You might like
php daodb插入、更新与删除数据
2009/03/19 PHP
php+mysqli预处理技术实现添加、修改及删除多条数据的方法
2015/01/30 PHP
js 图片随机不定向浮动的实现代码
2013/07/02 Javascript
jquery 绑定回车动作扑捉回车键触发的事件
2014/03/26 Javascript
NodeJs中的VM模块详解
2015/05/06 NodeJs
JavaScript中Number.MAX_VALUE属性的使用方法
2015/06/04 Javascript
JavaScript实现点击按钮切换网页背景色的方法
2015/10/17 Javascript
jquery 动态增加删除行的简单实例(推荐)
2016/10/12 Javascript
JS中将多个逗号替换为一个逗号的实现代码
2017/06/23 Javascript
javascript实现QQ空间相册展示源码
2017/12/12 Javascript
详解如何在react中搭建d3力导向图
2018/01/12 Javascript
nodejs 简单实现动态html的方法
2018/05/12 NodeJs
JS字典Dictionary类定义与用法示例
2019/02/01 Javascript
[00:48]DOTA2国际邀请赛公开赛报名开始 扫码开启逐梦之旅
2018/06/06 DOTA
python使用线程封装的一个简单定时器类实例
2015/05/16 Python
[原创]使用豆瓣提供的国内pypi源
2017/07/02 Python
Python实现将SQLite中的数据直接输出为CVS的方法示例
2017/07/13 Python
python 读取视频,处理后,实时计算帧数fps的方法
2018/07/10 Python
python使用Matplotlib绘制分段函数
2018/09/25 Python
使用python对excle和json互相转换的示例
2018/10/23 Python
python批量创建指定名称的文件夹
2019/03/21 Python
python-django中的APPEND_SLASH实现方法
2019/06/21 Python
Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)
2019/08/12 Python
tensorflow实现将ckpt转pb文件的方法
2020/04/22 Python
selenium+headless chrome爬虫的实现示例
2021/01/08 Python
美国在线面料商店:Fashion Fabrics Club
2020/01/31 全球购物
澳大利亚最好的电动自行车:Leon Cycle
2020/12/19 全球购物
zooplus德国:便宜地订购动物用品、动物饲料、动物食品
2020/05/06 全球购物
公司门卫的岗位职责
2014/02/19 职场文书
保密承诺书
2014/03/27 职场文书
马云北大演讲完整版:真心话,什么才是阿里的核心竞争力?
2014/04/04 职场文书
科长竞争上岗演讲稿
2014/05/12 职场文书
文明单位创建材料
2014/12/24 职场文书
会计求职自荐信
2015/03/26 职场文书
培训班开班主持词
2015/07/02 职场文书
2016大学生求职自荐信范文
2016/01/28 职场文书