深入了解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和perl实现批量对目录下电子书文件重命名的代码分享
Nov 21 Python
python使用matplotlib绘图时图例显示问题的解决
Apr 27 Python
Python绘制并保存指定大小图像的方法
Jan 10 Python
Python3.5装饰器原理及应用实例详解
Apr 30 Python
Python下利用BeautifulSoup解析HTML的实现
Jan 17 Python
python GUI库图形界面开发之PyQt5状态栏控件QStatusBar详细使用方法实例
Feb 28 Python
Python基于read(size)方法读取超大文件
Mar 12 Python
Python打印特殊符号及对应编码解析
May 07 Python
通过Python实现一个简单的html页面
May 16 Python
Python基于smtplib协议实现发送邮件
Jun 03 Python
基于Python3读写INI配置文件过程解析
Jul 23 Python
tensorflow+k-means聚类简单实现猫狗图像分类的方法
Apr 28 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
第一节--面向对象编程
2006/11/16 PHP
PHP substr()函数参数解释及用法讲解
2017/11/23 PHP
javascript Prototype 对象扩展
2009/05/15 Javascript
javascript延时加载之defer测试
2012/12/28 Javascript
使用jQuery+EasyUI实现CheckBoxTree的级联选中特效
2015/12/06 Javascript
javascript多物体运动实现方法分析
2016/01/08 Javascript
js方法数据验证的简单实例
2016/09/17 Javascript
浅谈js对象的创建和对6种继承模式的理解和遐想
2016/10/16 Javascript
Bootstrap页面缩小变形的快速解决办法
2017/02/03 Javascript
令按钮悬浮在(手机)页面底部的实现方法
2017/05/02 Javascript
详解Vue基于 Nuxt.js 实现服务端渲染(SSR)
2018/04/05 Javascript
js动态设置select下拉菜单的默认选中项实例
2018/08/21 Javascript
浅谈webpack SplitChunksPlugin实用指南
2018/09/17 Javascript
vue init webpack 建vue项目报错的解决方法
2018/09/29 Javascript
VUE 解决mode为history页面为空白的问题
2019/11/01 Javascript
JS 设计模式之:工厂模式定义与实现方法浅析
2020/05/06 Javascript
[48:32]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 LGD vs VG
2018/04/01 DOTA
windows下python模拟鼠标点击和键盘输示例
2014/02/28 Python
Python中对象迭代与反迭代的技巧总结
2016/09/17 Python
详解Django 中是否使用时区的区别
2018/06/14 Python
python处理“
2019/06/10 Python
Python字符串中添加、插入特定字符的方法
2019/09/10 Python
python实现代码统计程序
2019/09/19 Python
对Matlab中共轭、转置和共轭装置的区别说明
2020/05/11 Python
django自带的权限管理Permission用法说明
2020/05/13 Python
python属于哪种语言
2020/08/16 Python
Aerosoles爱柔仕官网:美国舒软女鞋品牌
2017/07/17 全球购物
美国爆米花工厂:The Popcorn Factory
2019/09/14 全球购物
IGK Hair官网:喷雾、洗发水、护发素等
2020/11/03 全球购物
如何转换一个字符串到enum值
2014/04/12 面试题
医生自荐信
2013/10/11 职场文书
自动化系在校本科生求职信
2013/10/23 职场文书
医学院校毕业生自荐信范文
2014/01/01 职场文书
党员干部观看《周恩来四个昼夜》思想汇报
2014/09/10 职场文书
爱国电影观后感
2015/06/19 职场文书
Mysql 用户权限管理实现
2021/05/25 MySQL