hou
hou.userName() # 返回当前系统用户名
hou.getenv('HOME') # 返回环境变量的值
hou.putenv('HOME', 'VALUE') # 设置环境变量
hou.exit() # 退出Houdini程序
hou.hipFile
hou.hipFile.load('/PATH/FOR/HIPFILE') # 打开文件
hou.hipFile.save(file_name=None, save_to_recent_files=True) # 保存文件(提供不同的file_name则为另存为...)
hou.hipFile.hasUnsavedChanges() ->bool # 当前文件修改之后是否保存?
hou.hipFile.setName(file_name) # 设置新的文件名,类似于另存为(file_name为绝对路径并包含文件名)
hou.hipFile.clear() # 新场景
hou.hipFile.saveAndIncrementFileName() # 文件名的增量保存
hou.hipFile.basename() # 返回文件名
hou.hipFile.name() # 返回文件名
hou.hipFile.path() # 返回文件的绝对路径(包含文件名)
hou.Node
_node = hou.node('/node/path') # 给定节点路径返回一个节点对象
_nodes = hou.nodes(['/node/path', ]) # 类似于node(),nodes需要给一个包含节点路径的列表,返回一个包含节点对象的列表
_node.cd('/nodeName') # 在当前节点进入到内部
_node.children() # 返回包含当前节点的子节点列表
_node.parent() # 返回当前节点的父节点
_node.name() # 返回当前节点名
_node.type() # 返回当前节点类型,根据此类型创建节点
_node.allSubChildren() # 返回当前节点的所有下级节点
_node_items = _node.allItems() # 类似于children()
_nodes = _node.allNodes() # 类似于allSubChildren(),返回一个生成器
_node.destroy() # 销毁当前节点
_node.createNode(node_type_name, node_name=None) # 在当前节点的内部创建一个类型为node_type_name的节点,节点名可选:node_name
_node.createInputNode(input_index, node_type_name) # 在当前节点上创建一个输入节点(input_index输入端口号)
_node.createOutputNode(node_type_name) # 在当前节点下创建一个输出出点
_node.inputs() # 返回所有当前上的输入节点元组
_node.input(inputidx) # 返回当前节点给定输入端口号的节点对象
_node.outputs() # 返回所有当前下的输出节点元组
_node.setInput(input_index, node_object) # 当前节点链接一个输入节点
_node.setFirstInput(node_object) # 把node_object链接到当前节点的第一个输入端,类似self.setInput(0, node_object)
_node.setNextInput(node_object) # 把node_object链接到当前节点的下一个输入端,多用于循环中的Merge节点
_node.insertInput(input_index, node_object) # 在当前节点的input_index输入端链接node_object节点
_node.setNameInput(input_name, item_to_become_input, output_name_or_index) # 根据输入端口名input_name链接一个输入节点item_to_become_input
_node.inputNames() # 返回当前节点的所有输入端口的名字元组
_node.inputLabels() # 返回当前节点的所有输入端口的标题元组
_node.outputNames() # 返回当前节点的所有输出端口的名字元组
_node.outputLabels() # 返回当前节点的所有输出端口的标题元组
_node.comment() # 返回当前节点的注释
_node.setComment('str') # 设置当前节点的注释
_node.creationTime() # 返回当前节点创建的时间
_node.modificationTime() # 返回当前节点最后修改的时间
_node.moveToGoodPosition() # 当前节点移动到最佳位置
_node.layoutChildren() # 当前子网络内的所有节点移动到最佳位置
_node.setGenericFlag(flag, value) # 设置当前节点的flag状态:hou.nodeFlag.Display / hou.nodeFlag.Render
hou.Parm
_parm = _node.parm('parmName') # 获取当前节点的参数
_parm.eval() # 返回当前参数值
_parm.evalAsString() # 返回当前参数值并转换为str类型
_parm.set() # 设置当前参数值
_parm.setExpression(expression, language=None) # 使用脚本语言设置当前参数(hou.exprLanguage.Python / hou.exprLanguage.Hscript
_parm.deleteAllKeyframes() # 删除当前参数的所有关键帧
_parm.deleteKeyframeAtFrame(frame) # 删除当前参数指定帧的关键帧
_parm.isAtDefault() # 返回当前参数是否为默认值
_parm.revertToDefaults() # 当前参数恢复默认值
hou.Playbar
hou.fps() # 返回当前项目的FPS
hou.setFps(24) # 设置当前项目的FPS
hou.frame() # 返回当前时间帧
hou.setFrame(10) # 设置当前时间帧
hou.frameToTime() # 返回当前帧转为秒;类似:(hou.frame() - 1.0) / hou.fps()
hou.intFrame() # 返回当前的整数帧;如果是小数帧,则四舍五入
hou.playMode # 设置播放模式:Loop / Once
hou.playbar.play() # 开始播放
hou.playbar.stop() # 停止播放
hou.playbar.isPlaying() # 是否在播放
hou.playbar.setFrameRange(start,end)# 设置帧范围
hou.playbar.setFrameIncrement(1) # 设置下一帧的增量
hou.Geometry
_geo = hou.geometry() # 获取当前节点的几何属性
_geo.findPointAttrib(name) # 查找点属性
_geo.findPrinmAttrib(name) # 查找原始属性,即面属性
_geo.findVertexAttrib(name) # 查找顶点属性
_geo.findGlobalAttrib(name) # 查找全局属性
_geo.pointAttribs() # 返回所有点属性的元组
_geo.primAttribs() # 返回所有原始属性的元组
_geo.vertexAttribs() # 返回所有顶点属性的元组
_geo.globalAttribs() # 返回所有全局属性的元组
文章作者:甜面酱先生
文章标题:Houdini python API (持续更新...)
文章链接:https://cfxer.cn/?post=42
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明来自甜面酱先生 !
文章标题:Houdini python API (持续更新...)
文章链接:https://cfxer.cn/?post=42
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明来自甜面酱先生 !
设备上扫码阅读
版权说明
文章采用: 《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权。版权声明:未标注转载均为本站原创,转载时请以链接形式注明文章出处。如有侵权、不妥之处,请联系站长删除。敬请谅解!