Home Reference Houdini Object Model 

hou module

Module containing all the sub-modules, classes, and functions to access Houdini.

Subtopics

Categories: Channels, Cooking, Digital assets, Dynamics, Exceptions, Files and IO, General, Geometry, Images, Keyframes, Materials, Nodes, Nodes: organization, Nodes: type categories, Objects, Parameter templates, Parameters, Rendering, Scripting, Shelf, Takes, Timeline, User interface, Utility, VEX, Viewer

Digital assets

User-defined module containing common functions, classes, and constants that can be used by scripts of an HDA, expressions in parameters of nodes in the HDA, etc.
This is not implemented yet

Channels

Class representing a CHOP node.
Evaluate a Bezier interpolation spline for an animated parameter using the left keyframe’s outgoing value, tangent, and acceleration and the right keyframe’s incoming value, tangent, and acceleration.
This is not implemented yet
Evaluate an animation function for an animated parameter. The return value is always the left keyframe’s outgoing value.
Evaluate an interpolation function for an animated parameter that gives a smooth curve between the left keyframe’s outgoing value and the right keyframe’s incoming value, using the left’s outgoing slope and the right’s incoming slope.
This animation function for an animated parameter repeats the motion between two frames, lining up the first repeated value with the left keyframe’s value.
This animation function for an animated parameter repeats the motion between two times, lining up the repeated values with the left keyframe’s value.
This animation function for an animated parameter interpolates between the left keyframe’s outgoing value and the right keyframe’s incoming value. The tangents will be flat at both ends of the function, so the curve will slowly ease from the left value and, near the end of the function, slowly reduce the speed until it is at rest at the right value.
This animation function for an animated parameter interpolates between the left keyframe’s outgoing value and the right keyframe’s incoming value. The tangent will be flat at the left end of the function, so it will slowly ease from the outgoing value of the left keyframe.
This animation function for an animated parameter interpolates between the values of two keyframes. It is like hou.easein(), except it has an additional parameter to say how fast the curve should ease into the motion.
This animation function for an animated parameter interpolates between the left keyframe’s outgoing value and the right keyframe’s incoming value. The tangent will be flat at the right end of the function, so it will slowly come to rest at the incoming value of the right keyframe.
This animation function for an animated parameter interpolates between the values of two keyframes. It is like hou.easeout(), except it has an additional parameter to say how fast the curve should ease into the motion.
This animation function for an animated parameter interpolates between the values of two keyframes. An ease bias of less than one slow the animation near right keyframe, while an ease bias greater than one will slow it near the left keyframe.
This animation function for an animated parameter linearly interpolates between the left keyframe’s outgoing value and the right keyframe’s incoming value.
This animation function for an animated parameter creates a smooth curve between the left keyframe’s incoming value and the right keyframe’s outgoing value, using the left keyframe’s incoming slope and the right keyframe’s outgoing slope.
This animation function for an animated parameter creates a straight line from the left keyframe’s incoming value, matching the left keyframe’s incoming slope. The line will not match the right keyframe’s outgoing value.
This animation function for an animated parameter creates a straight line from the right keyframe’s outgoing value, matching the right keyframe’s outgoing slope. The line will not match the left keyframe’s incoming value.
This animation function for an animated parameter linearly interpolates between keyframes using quaternions. The neighbouring parameters must also be animated; for example, if “rx” uses qlinear(), “ry” and “rz” should also use qlinear().
Evaluate an interpolation function for an animated parameter that gives a smooth curve between the left keyframe’s outgoing value and the right keyframe’s incoming value, using the left’s outgoing slope and acceleration and the right’s incoming slope and acceleration.
This animation function for an animated parameter repeats the motion between two times.
This animation function for an animated parameter repeats the motion between two times.
This animation function for an animated parameter fits a spline through consecutive keyframe values that also use the hou.spline() function. The resulting spline interpolates the channel values at the keyframes, and slope values are not used.
This animation function for an animated parameter matches the incoming and outgoing values and slopes. Unlike the hou.match() function, it will use its left keyframe’s outgoing value and the right keyframe’s incoming value, so hou.vmatch() can produce curves that are discontinuous with the previous segment.
This animation function for an animated parameter matches the left keyframe’s incoming slope. The curve will be a straight line from the left keyframe’s outgoing value, and will not match the right keyframe’s outgoing value. Unlike the hou.matchin() function, the left keyframe’s outgoing value can differ from its incoming value, so so hou.vmatchin() can produce curves whose left tangent matches the left keyframe but whose left values do not line up.
This animation function for an animated parameter matches the right keyframe’s outgoing slope. The curve will be a straight line ending at the right keyframe’s incoming value, and will not match the left keyframe’s incoming value. Unlike the hou.matchout() function, the right keyframe’s incoming value can differ from its outgoing value, so so hou.vmatchout() can produce curves whose right tangent matches the right keyframe but whose right values do not line up.

Cooking

This is not implemented yet
This is not implemented yet
This is not implemented yet

Dynamics

Class representing a DOP node.
This is not documented yet
This is not implemented yet
This is not documented yet
This is not documented yet
This is not documented yet

Exceptions

Base class for all exceptions in the hou module.
Exception class for when loading a hip file in Houdini generates warnings. This class is a subclass of hou.Error.
Exception class for when an operation attempted to use a feature that is not available. This class is a subclass of hou.Error.
Exception class for when you use a stale variable to attempt to access something that was deleted in Houdini. This class is a subclass of hou.Error.

General

This class is the base class for an enumeration value. It cannot be instanced and is not meant to be used directly by the user.
This is not implemented yet.
This is not implemented yet.
This is not implemented yet.
Returns whether Houdini is in the process of exiting. This function is called internally by the interactive Houdini Python shell.
Compares two numbers and returns True if they are almost equal in terms of how far apart they are when represented as floating point numbers.
Appends the given source code to the hou.session module. The appended code is made available immediately. You do not have to re-import hou.session.
Returns the application’s compilation date.
Returns the application name.
Returns the application’s version number as a tuple of integers – (major_version, minor_version, build_version).
Returns the application’s version number as a string.
This is not implemented yet
This is not implemented yet
Exits Houdini, returning the exit code to the operating system. If suppress_save_prompt is false, this function asks the user if he/she wants to save. If the user presses “Cancel”, the exit will be canceled and the next statement will execute.
Returns True if the application is an apprentice (non-commercial) version. Returns False otherwise.
This is not implemented yet
Release the currently held Houdini license.
Returns the contents of the hou.session module.
Sets the contents of the hou.session module. The new contents is made available immediately. You do not have to re-import hou.session.
This is not implemented yet
This is not implemented yet
This is not implemented yet.
This is not implemented yet.
Module containing Houdini math functions
This module is used to define custom classes, functions and variables that can be called from within the current Houdini session. The contents of this module are saved into the .hip file.

Geometry

Class representing a SOP node.
Module containing enumerated values for the different attribute data types.

Files and IO

This is not implemented yet
Search the houdini path for the specified directory, returning a tuple of all the matches. The directory name specified should be relative to the houdini directory.
Search the houdini path for a specified directory, returning the first match found. The directory name specified should be relative to the houdini directory.
Search the houdini path for a specified file, returning the first match found. The filename specified should be relative to the houdini directory.
Search the houdini path for the specified file, returning a tuple of all the matches. The filename specified should be relative to the houdini directory.
This is not implemented yet
This is not implemented yet
Read a file, returning the contents in a string. Supports regular files, opdef: and oplib: paths, and http URLs.

Images

Keyframes

Abstract base class for all keyframe class.
Class representing the default keyframe type, a numerical keyframe.
This is not implemented yet
This is not implemented yet
This is not implemented yet
This is not implemented yet

Materials

Class representing a SHOP node.

Nodes: organization

This is not implemented yet
This is not implemented yet
This is not implemented yet
This is not implemented yet

Nodes: type categories

Class representing a category of node types.
Return the NodeTypeCategory instance for Houdini channel container (chopnet) nodes.
Return the NodeTypeCategory instance for Houdini channel (chop) nodes.
Return the NodeTypeCategory instance for Houdini composite container (copnet) nodes.
Return the NodeTypeCategory instance for Houdini composite (cop) nodes.
Return the NodeTypeCategory instance for Houdini dynamic (dop) nodes.
Return the NodeTypeCategory instance for Houdini manager nodes. The manager nodes are /obj, /out, /part, /ch, /shop, /img, and /vex.
Returns a dictionary of node type categories where the keys are the category names (i.e. “Object”, “Sop”, etc.) and the values are hou.NodeTypeCategory objects.
This is not implemented yet
Return the NodeTypeCategory instance for Houdini object nodes. For example, if /obj/model is an object, hou.node(“/obj/model”).nodeTypeCategory() == hou.objectNodeTypeCategory() will return True.
Return the NodeTypeCategory instance for Houdini particle container (popnet) nodes.
Return the NodeTypeCategory instance for Houdini particle (pop) nodes.
Return the NodeTypeCategory instance for Houdini root (/) node. There is only one instance of the root node, and it has its own node type category.
Return the NodeTypeCategory instance for Houdini output (rop) nodes.
Return the NodeTypeCategory instance for Houdini shader (shop) nodes.
Return the NodeTypeCategory instance for Houdini geometry (sop) nodes.
Return the NodeTypeCategory instance for Houdini vex builder container (vopnet) nodes.
Return the NodeTypeCategory instance for Houdini vex builder (vop) nodes.

Nodes

Base class for all Houdini nodes. You cannot create instances of this class by calling the constructor. You can access Node objects by finding an existing node or by creating a child node from an existing node.
The NodeConnection class represents a connection, or wire, between two nodes.
Class representing a type of a node.
Class representing a POP node.
Change the current node. Houdini has one current node, analogous to a current directory in a file system. If a relative path is given, it is relative to the node returned by hou.pwd().
Copy all given nodes to a new place in node hierarchy.
This is not implemented yet
This is not documented yet
This is not implemented yet
This is not implemented yet
This is not implemented yet
Move all given nodes to a new place in node hierarchy.
Find a node, given either an absolute or a relative path to it. Relative path searches are done from the node returned by , so hou.node(path) is a shortcut for hou.pwd().node(path). Returns None if no node exists at that path.
Returns a hou.NodeType object which contains information about the requested operator type. Returns None if the requested type does not exist.
This is not implemented yet
Return the current node or the node containing the evaluating parm. Houdini has one current node, analogous to a current directory in a file system. You can change the current node with cd().
Return the root node (i.e. /).
This is not implemented yet
This is not implemented yet
Make the given node Houdini’s current node. This function is equivalent to hou.cd(node.path()).

Objects

Parameters

Class representing a node parameter.
Class representing a tuple of node parameters.
The same as evalParm(). Provided for backward compatibility.
Evaluate a parameter that references a node, and return the absolute path to the node.
Evaluate a parameter, given either an absolute or a relative path to it. Relative path searches are done from the node returned by . This function is a shortcut for hou.parm(path).eval().
Evaluate a parameter, given either an absolute or a relative path to it. Relative path searches are done from the node returned by . This function is a shortcut for hou.parmTuple(path).eval().
This is not implemented yet
Find a parameter, given either an absolute or a relative path to it. Relative path searches are done from the node returned by , so hou.parm(path) is a shortcut for hou.pwd().parm(path). Returns None if no parameter exists at that path.
Find a parameter tuple, given either an absolute or a relative path to it. Relative path searches are done from the node returned by , so hou.parmTuple(path) is a shortcut for hou.pwd().parmTuple(path). Returns None if no parameter exists at that path.
This is not implemented yet
This is not implemented yet

Parameter templates

Describes a button parameter.
Describes a set of folders.
Describes a label parameter.
Describes a separator parameter. Separators are just vertical lines between parameters.
The possible looks for a parameter
The possible naming schemes for a parameter.

Rendering

Class representing a ROP node.
This is not implemented yet

Scripting

This function is used internally by Houdini to preload icons for speed.
This function is used internally by the Houdini Python shell for argument auto-completion on functions of the hou module.
This is not implemented yet
This is not implemented yet
Evaluates the given string expression and returns the result.
Executes the given hscript command and returns a 2-tuple of strings where the first string contains the regular output of the executed command and the second string contains the error output. You can specify multiple commands by using ';' or the newline character as the separator.
Return the text help of an hscript command. This function is used to help re-implement hscript commands in Python.
Deprecated: Use expandString.
Evaluate an Hscript expression.
Evaluate an Hscript expression as a float.