深入了解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连接远程ftp服务器并列出目录下文件的方法
Apr 01 Python
Python中特殊函数集锦
Jul 27 Python
Python xlwt设置excel单元格字体及格式
Apr 18 Python
python使用正则筛选信用卡
Jan 27 Python
Python实现求两个数组交集的方法示例
Feb 23 Python
selenium处理元素定位点击无效问题
Jun 12 Python
python实现爬取百度图片的方法示例
Jul 06 Python
基于python读取.mat文件并取出信息
Dec 16 Python
Python多重继承之菱形继承的实例详解
Feb 12 Python
Python类中self参数用法详解
Feb 13 Python
python引入其他文件夹下的py文件具体方法
May 23 Python
使用tensorflow 实现反向传播求导
May 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
深入理解PHP内核(二)之SAPI探究
2015/11/10 PHP
Zend Framework教程之MVC框架的Controller用法分析
2016/03/07 PHP
PhpStorm配置Xdebug调试的方法步骤
2019/02/02 PHP
php7 参数、整形及字符串处理机制修改实例分析
2020/05/25 PHP
用javascript将数据库中的TEXT类型数据动态赋值到TEXTAREA中
2007/04/20 Javascript
javascript 带有滚动条的表格,标题固定,带排序功能.
2009/11/13 Javascript
在Ubuntu上安装最新版本的Node.js
2014/07/14 Javascript
jQuery中:hidden选择器用法实例
2014/12/30 Javascript
jquery实现焦点图片随机切换效果的方法
2015/03/12 Javascript
JavaScript函数参数使用带参数名的方式赋值传入的方法
2015/03/19 Javascript
基于jQuery+PHP+Mysql实现在线拍照和在线浏览照片
2015/09/06 Javascript
JS创建事件的三种方法(实例代码)
2016/05/12 Javascript
JS 对象(Object)和字符串(String)互转方法
2016/05/20 Javascript
用原生js统计文本行数的简单示例
2016/08/19 Javascript
jQuery Easyui 下拉树组件combotree
2016/12/16 Javascript
前端JS面试中常见的算法问题总结
2016/12/23 Javascript
JS获取鼠标坐标并且根据鼠标位置不同弹出不同内容
2017/06/12 Javascript
vue数字类型过滤器的示例代码
2017/09/07 Javascript
深入剖析Express cookie-parser中间件实现示例
2018/02/01 Javascript
JQueryDOM之样式操作
2019/03/27 jQuery
vue 框架下自定义滚动条(easyscroll)实现方法
2019/08/29 Javascript
不刷新网页就能链接新的js文件方法总结
2020/03/01 Javascript
JavaScript原生数组函数实例汇总
2020/10/14 Javascript
python strip()函数 介绍
2013/05/24 Python
python中偏函数partial用法实例分析
2015/07/08 Python
解决安装python库时windows error5 报错的问题
2018/10/21 Python
如何使用python爬虫爬取要登陆的网站
2019/07/12 Python
python模拟实现斗地主发牌
2020/01/07 Python
python上selenium的弹框操作实现
2020/07/13 Python
会计出纳岗位职责
2013/12/25 职场文书
项目合作协议书
2014/09/23 职场文书
2015年七夕爱情寄语
2015/03/24 职场文书
离婚代理词范文
2015/05/23 职场文书
使用numpy nonzero 找出非0元素
2021/05/14 Python
《吸血鬼:避世 血猎》官宣4.27发售 系列首款大逃杀
2022/04/03 其他游戏
详解Flutter自定义应用程序内键盘的实现方法
2022/06/14 Java/Android