深入了解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监控文件或目录变化
Jun 07 Python
Python操作Access数据库基本步骤分析
Sep 19 Python
Python sqlite3事务处理方法实例分析
Jun 19 Python
Python微信公众号开发平台
Jan 25 Python
python flask框架实现传数据到js的方法分析
Jun 11 Python
python多线程http压力测试脚本
Jun 25 Python
python turtle 绘制太极图的实例
Dec 18 Python
python中提高pip install速度
Feb 14 Python
基于python3实现倒叙字符串
Feb 18 Python
深度学习入门之Pytorch 数据增强的实现
Feb 26 Python
python爬虫开发之使用Python爬虫库requests多线程抓取猫眼电影TOP100实例
Mar 10 Python
Python类方法总结讲解
Jul 26 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
一个数据采集类
2007/02/14 PHP
php 目录遍历、删除 函数的使用介绍
2013/04/28 PHP
Symfony2安装第三方Bundles实例详解
2016/02/04 PHP
对laravel in 查询的使用方法详解
2019/10/09 PHP
Javascript hasOwnProperty 方法 & in 关键字
2008/11/26 Javascript
poshytip 基于jquery的 插件 主要用于显示微博人的图像和鼠标提示等
2012/10/12 Javascript
javascript中[]和{}对象使用介绍
2013/03/20 Javascript
自动最大化窗口的Javascript代码
2013/05/22 Javascript
表单提交前触发函数返回true表单才会提交
2014/03/11 Javascript
jQueryMobile之Helloworld与页面切换的方法
2015/02/04 Javascript
js实现分享到随页面滚动而滑动效果的方法
2015/04/10 Javascript
JavaScript 面向对象与原型
2015/04/10 Javascript
JavaScript实现随机替换图片的方法
2015/04/16 Javascript
jQuery实现返回顶部功能
2016/02/23 Javascript
深入学习AngularJS中数据的双向绑定机制
2016/03/04 Javascript
详细解读Jquery各Ajax函数($.get(),$.post(),$.ajax(),$.getJSON())
2016/08/15 Javascript
JSON创建键值对(key是中文或者数字)方式详解
2017/08/24 Javascript
通过button将form表单的数据提交到action层的实例
2017/09/08 Javascript
Vue调试神器vue-devtools安装方法
2017/12/12 Javascript
200行HTML+JavaScript实现年会抽奖程序
2019/01/22 Javascript
js+cavans实现图片滑块验证
2020/09/29 Javascript
Python def函数的定义、使用及参数传递实现代码
2014/08/10 Python
全面了解Python环境配置及项目建立
2016/06/30 Python
python读取excel指定列数据并写入到新的excel方法
2018/07/10 Python
python实现本地图片转存并重命名的示例代码
2018/10/27 Python
详解利用Python scipy.signal.filtfilt() 实现信号滤波
2019/06/05 Python
详解Python中字符串前“b”,“r”,“u”,“f”的作用
2019/12/18 Python
判断Threading.start新线程是否执行完毕的实例
2020/05/02 Python
巧克力蛋糕店创业计划书
2014/01/14 职场文书
保安部任务及岗位职责
2014/02/25 职场文书
会计学毕业生求职信
2014/06/25 职场文书
行政执法队伍作风整顿个人剖析材料
2014/10/11 职场文书
群众路线党员个人整改措施
2014/10/27 职场文书
2014年客服工作总结与计划
2014/12/09 职场文书
2019年冬至:天冷暖人心的问候祝福语大全
2019/12/20 职场文书
HTML怎么设置下划线?html文字加下划线方法
2021/12/06 HTML / CSS