Houdini 17.0 Python Scripting hou

hou.viewportLighting module

Lighting modes for the viewport

The viewport renderer supports several global lighting modes, from no lighting whatsoever to full lighting with shadows.

Values

hou.viewportLighting

.hou.viewportLighting.Off

No lighting, constant shaded.

hou.viewportLighting

.hou.viewportLighting.Headlight

Basic lighting from a single directional light defined in the display options.

hou.viewportLighting

.hou.viewportLighting.Normal

Good quality lighting from up to 10 basic lights (area lights modeled as point lights, limited environment lights).

hou.viewportLighting

.hou.viewportLighting.HighQuality

High quality lighting from an unlimited number of lights including area, geometry, environment and ambient occlusion.

hou.viewportLighting

.hou.viewportLighting.HighQualityWithShadows

High quality lighting with shadows.

hou

Animation

Digital assets

  • hou.HDADefinition

    Represents the definition of a houdini digital asset (HDA).

  • hou.HDAModule

    User-defined Python module containing functions, classes, and constants that are stored with and accessed from a digital asset.

  • hou.HDAOptions

    Stores miscellaneous options about a houdini digital asset (HDA).

  • hou.HDASection

    Represents a "section" of data stored along with a digital asset.

  • hou.hda

    Module containing functions related to Houdini Digital Assets.

  • hou.hdaDefinition()

    Given a node type category, operator name and digital asset library path, return an HDADefinition object. Return None if no such digital asset definition matches the arguments.

  • hou.hdaEventType

    Enumeration of types of events that can happen for digital asset libraries.

  • hou.hdaLicenseType

    Enumeration of digital asset license permission levels.

Channels

  • hou.ChannelEditorPane

  • hou.ChannelGraph

  • hou.ChopNode

    Class representing a CHOP node.

  • hou.Track

  • hou.bezier()

    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.

  • hou.commitPendingKeyframes()

  • hou.constant()

    Evaluate an animation function for an animated parameter. The return value is always the left keyframe’s outgoing value.

  • hou.cubic()

    Smooth curve between the left keyframe’s outgoing slope and the right’s incoming slope.

  • hou.cycle()

    Repeats the motion between two times.

  • hou.cycleoffset()

    Repeats the motion between two frames, lining up the first repeated value with the left keyframe’s value.

  • hou.cycleoffsett()

    Repeats the motion between two times, lining up the repeated values with the left keyframe’s value.

  • hou.cyclet()

    Repeats the motion between two times.

  • hou.ease()

    Interpolates between the left keyframe’s outgoing value and the right keyframe’s incoming value.

  • hou.easein()

    Interpolates between the left keyframe’s outgoing value and the right keyframe’s incoming value.

  • hou.easeinp()

    Interpolates between the values of two keyframes.

  • hou.easeout()

    Interpolates between the left keyframe’s outgoing value and the right keyframe’s incoming value.

  • hou.easeoutp()

    Interpolates between the values of two keyframes.

  • hou.easep()

    Interpolates between the values of two keyframes.

  • hou.linear()

    Linearly interpolates between the left keyframe’s outgoing value and the right keyframe’s incoming value.

  • hou.match()

    Creates a smooth curve between the left keyframe’s incoming slope and the right keyframe’s outgoing slope.

  • hou.matchin()

    Creates a straight line from the left keyframe’s incoming value, matching the left keyframe’s incoming slope.

  • hou.matchout()

    Creates a straight line from the right keyframe’s outgoing value, matching the right keyframe’s outgoing slope.

  • hou.qlinear()

    Linearly interpolates between keyframes using quaternions.

  • hou.quintic()

    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.

  • hou.repeat()

    Repeats the motion between two times.

  • hou.repeatt()

    Repeats the motion between two times.

  • hou.spline()

    Fits a spline through consecutive keyframe values.

  • hou.vmatch()

    Matches the incoming and outgoing values and slopes.

  • hou.vmatchin()

    Matches the left keyframe’s incoming slope.

  • hou.vmatchout()

    Matches the right keyframe’s outgoing slope.

Cooking

  • hou.setUpdateMode()

    Return Houdini’s cook update mode (Auto Update/On Mouse Up/Manual) that is displayed in the status bar.

  • hou.updateMode

    Enumeration of interface update modes.

  • hou.updateModeSetting()

    Return Houdini’s cook update mode (Auto Update/On Mouse Up/Manual) that is displayed in the status bar.

Crowds

Dynamics

Exceptions

File I/O

  • hou.fileReferences()

  • hou.findDirectories()

    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.

  • hou.findDirectory()

    Search the Houdini path for a specified directory, returning the first match found. The directory name specified should be relative to the Houdini directory.

  • hou.findFile()

    Search the Houdini path for a specified file, returning the first match found. The filename specified should be relative to the Houdini directory.

  • hou.findFiles()

    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.

  • hou.findFilesWithExtension()

    Search the Houdini path for files with a particular extension, returning a tuple of all the matches. A subdirectory can also be optionally provided which is appended to each entry in the Houdini path before looking for files.

  • hou.homeHoudiniDirectory()

    Return the path to the Houdini directory in your $HOME directory.

  • hou.houdiniPath()

    Return the contents of the Houdini path as a tuple of strings.

  • hou.loadCPIODataFromString()

    Given a string containing data in CPIO data format, decode the data and return a sequence of (name, value) pairs representing the data.

  • hou.loadIndexDataFromFile()

    Given a file containing data in index data format, decode the data and return a dictionary representing the data.

  • hou.loadIndexDataFromString()

    Given a string containing data in index data format, decode the data and return a dictionary representing the data.

  • hou.readFile()

    Read a file, returning the contents in a string. Supports regular files, opdef: and oplib: paths, and http URLs.

  • hou.saveCPIODataToString()

    Given a sequence of (name, value) string tuples, encode that data into a string in CPIO format.

  • hou.saveIndexDataToFile()

    Given a dictionary mapping strings to strings, encode that data in index data format and save it into a file.

  • hou.saveIndexDataToString()

    Given a dictionary mapping strings to strings, encode that data into a string in index data format.

General

Geometry

  • hou.Attrib

    This class stores information about a Geometry attribute.

  • hou.Edge

    Each Edge object resides inside a Geometry object and stores an edge. Edges are reprsented as pairs of points.

  • hou.EdgeGroup

    A named group of edges inside a Geometry object.

  • hou.Face

    A Face is a kind of geometry primitive (Prim object) that contains a sequence of vertices (Vertex objects). How these vertices are used depends on the type of face; polygons, for example, use the vertices to define the edges of the polygon, while NURBS curves use them as control points.

  • hou.Geometry

    A Geometry object contains the points and primitives that define a 3D geometric shape. For example, each SOP node in Houdini generates a single Geometry object.

  • hou.GeometryDelta

    Geometry delta provides access to the geometry differences (deltas) stored by some Geometry nodes such as the edit SOP.

  • hou.IndexPairPropertyTable

    Describes properties of an index pair attribute.

  • hou.PackedFragment

    A packed fragment primitive.

  • hou.PackedGeometry

    A packed geometry primitive.

  • hou.PackedPrim

    A packed primitive.

  • hou.Point

    Each Point object resides inside a Geometry object and stores a 3D position. Points may be shared between primitives (such as polygons), and the set of points and primitives describes a 3D shape.

  • hou.PointGroup

    A named group of points inside a Geometry object.

  • hou.Polygon

    A Polygon is a kind of Face whose vertices are connected via straight lines.

  • hou.Prim

    Each Prim resides inside a Geometry object and stores some sort of 3D geometric primitive, like a polygon, a NURBS curve, or a volume. Each primitive usually contains a set of Vertex objects, each of which references a Point object.

  • hou.PrimGroup

    A named group of primitives inside a Geometry object.

  • hou.Quadric

    A Quadric is a kind of geometry primitive (Prim object) that represents a 3-dimensional surface defined by a quadratic polynomial equation (e.g. a sphere or tube).

  • hou.Selection

    A class that represents a geometry component selection.

  • hou.SopNode

    Represents a surface node.

  • hou.SopVerb

    Represents the code of a surface node.

  • hou.Surface

    A Surface is a kind of geometry primitive (Prim object) that contains a two dimensional grid of vertices (Vertex objects). How these vertices are used depends on the type of surface: meshes, for example, use the vertices to define a quadrilateral mesh, while NURBS surfaces use them as control points.

  • hou.VDB

    A VDB is a kind geometry primitive (Prim object) that stores data in a three dimensional grid of voxels.

  • hou.Vertex

    Existing inside a Geometry object, a Vertex object is contained in exactly one Prim, and references exactly one Point.

  • hou.Volume

    A Volume is a kind geometry primitive (Prim object) storing a three dimensional array of voxels.

  • hou.attribData

    Enumeration of attribute data types.

  • hou.attribType

    Enumeration of geometry attribute types.

  • hou.componentLoopType

    Enumeration of component loop types.

  • hou.geometryType

    Enumeration of geometry component types.

  • hou.primType

    Enumeration of primitive types.

  • hou.vdbData

    Enumeration of voxel data types.

Images

Nodes

  • hou.IndirectInput

    An abstract base class for a network item that can be used as an input to nodes in the same network, but which is not a node itself.

  • hou.LopNode

    Represents a lighting node.

  • hou.NetworkDot

    A small dot in a network that allows wires to be routed along specific paths without affecting the data passing through them.

  • hou.NetworkItem

    The base class for all visible elements within a network.

  • hou.NetworkMovableItem

    The base class for all visible elements within a network, such as Nodes, Network Boxes, and Sticky Notes.

  • hou.Node

    The base class for all nodes in Houdini (objects, SOPs, COPs, etc.) An instance of this class corresponds to exactly one instance of a node in Houdini.

  • hou.NodeConnection

    Represents a connection (wire) between two Nodes.

  • hou.NodeInfoTree

    A tree structure designed to contain information about nodes and the data they generate.

  • hou.NodeType

    Information common to all instances of a type of node, such as the parameters.

  • hou.PopNetNode

  • hou.PopNode

    Represents a particle node.

  • hou.SopNodeType

    This kind of NodeType contains extra attributes specific to SOP nodes.

  • hou.SubnetIndirectInput

    A node-like item that appears inside subnets and corresponds to the node wired into the subnet.

  • hou.TopNode

    Represents a task node.

  • hou.VopNetNode

  • hou.appearanceChangeType

    Enumeration of types of appearance change events that can happen to nodes.

  • hou.cd()

    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().

  • hou.clearAllSelected()

    Clears the selected state for all nodes, network boxes, and other subclasses of hou.NetworkMovableItem in the Houdini session.

  • hou.colorItemType

  • hou.copyNodesTo()

    Copy all given nodes to a new place in node hierarchy.

  • hou.copyNodesToClipboard()

    Copy given nodes to clipboard.

  • hou.currentSimulation()

  • hou.defaultColor()

    Return the default color for a particular network element.

  • hou.item()

    Given a path string, return a NetworkMovableItem object. Return None if the path does not refer to an item.

  • hou.itemBySessionId()

    Given an item’s session id and an item type, return a NetworkMovableItem object. Return None if the id does not correspond to a valid item.

  • hou.items()

    Takes a sequence of node path strings and returns a tuple of NetworkMovableItem objects.

  • hou.moveNodesTo()

    Move all given nodes to a new place in node hierarchy.

  • hou.networkBoxBySessionId()

    Given a network box’s session id, return a NetworkBox object. Return None if the id does not correspond to a valid network box.

  • hou.networkDotBySessionId()

    Given a dot’s session id, return a NetworkDot object. Return None if the id does not correspond to a valid dot (e.g. if the dot was deleted).

  • hou.networkItemType

  • hou.node()

    Given a path string, return a Node object. Return None if the path does not refer to a node.

  • hou.nodeBySessionId()

    Given a node’s session id, return a Node object. Return None if the id does not correspond to a valid node (e.g. if the node was deleted).

  • hou.nodeConnectionBySessionId()

    Given a node’s session id and an input index, return a NodeConnection object. Return None if the id does not correspond to a valid node (e.g. if the node was deleted), or the specified input index is not connected.

  • hou.nodeEventType

    Enumeration of types of events that can happen to nodes.

  • hou.nodeFlag

    Enumeration of the different node flags.

  • hou.nodeType()

    Given a node type category object and a name, or possibly just a node type name that includes the category, return the corresponding NodeType object. The exact name is assumed so node type aliases are not evaluated. To check aliases use hou.preferredNodeType() instead. Return None if there is no such type with that name.

  • hou.nodeTypeSource

    Enumeration of node type sources.

  • hou.nodes()

    Takes a sequence of node path strings and returns a tuple of Node objects.

  • hou.parent()

    Return the parent of the current node.

  • hou.pasteNodesFromClipboard()

    Paste previously copied nodes to a given network.

  • hou.phm()

    A shortcut for hou.pwd().hdaModule().

  • hou.preferredNodeType()

    Given a node type name that includes the category and optionally a parent node, return the corresponding NodeType object after evaluating aliases. Return None if there is no such type with that name.

  • hou.pwd()

    If called from an evaluating parm, return the node containing the parm. Otherwise, return Houdini’s global current node. You can change this current node with hou.cd

  • hou.root()

    Return the root node (i.e. /).

  • hou.selectedConnections()

    Return a list of all selected node connections.

  • hou.selectedItems()

    Return a list of all selected nodes, network boxes, sticky notes, subnet indirect inputs, and network dots.

  • hou.selectedNodes()

    Return a list of all selected nodes.

  • hou.setDefaultColor()

    Return the setDefault color for a particular network element.

  • hou.setPwd()

    Make the given node Houdini’s current node. This function is equivalent to hou.cd(node.path()).

  • hou.sortedNodePaths()

    Given a tuple of path strings, return a tuple of path strings sorted in input/outputs order. Invalid node paths won’t be part of the sorted list.

  • hou.sortedNodes()

    Given a tuple of , return a tuple of sorted in input/outputs order.

  • hou.stickyNoteBySessionId()

    Given a sticky note’s session id, return a StickyNote object. Return None if the id does not correspond to a valid sticky note.

  • hou.subnetIndirectInputBySessionId()

    Given a subnet input’s session id, return a SubnetIndirectInput object. Return None if the id does not correspond to a valid subnet input (e.g. if the subnet containing the input was deleted).

Node types

Objects

  • hou.ObjNode

    An instance of an object node in the Houdini scene.

Organization

  • hou.NetworkBox

    Represents a network box.

  • hou.NodeBundle

    A named set of nodes whose contents can be from different networks. A bundle’s contents may be fixed or may be determined from a pattern, and the contents may be filtered by node type.

  • hou.NodeGroup

    Represents a node group.

  • hou.StickyNote

    Represents a sticky note.

  • hou.addNodeBundle()

    Create a new node bundle with the specified name.

  • hou.nodeBundle()

    Given a node bundle name, return the corresponding NodeBundle object, or None if there is not one with that name.

  • hou.nodeBundles()

    Return a tuple containing all the node bundles in the current session.

  • hou.nodeTypeFilter

    Enumeration of available node type filters.

  • hou.selectedNodeBundles()

    Return a tuple containing all the node bundles that are selected in the bundle list pane.

Parameters

  • hou.Parm

    A parameter in a node. Each parameter has a unique name within its node and exists inside a parameter tuple.

  • hou.ParmTuple

    A tuple of one or more node parameters. Each parameter tuple has a unique name within its node.

  • hou.ch()

    The same as evalParm(). Provided for backward compatibility.

  • hou.chsop()

    Evaluate a parameter that references a node, and return the absolute path to the node.

  • hou.chsoplist()

    Evaluate a parameter that references a node path list, and return a space separated list of absolute node paths.

  • hou.contextOption()

    Returns the value of a cook context option.

  • hou.contextOptionNames()

    Returns the names of all available cook context options.

  • hou.evalParm()

    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().

  • hou.evalParmTuple()

    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().

  • hou.evaluatingParm()

    Return the parameter that is currently evaluating.

  • hou.exprLanguage

    Enumeration of available expression languages.

  • hou.fileType

    Enumeration of file types.

  • hou.hasContextOption()

    Returns True if the specified option exists in the current cook context.

  • hou.lvar()

    Return the value of a node’s local variable. Call this function from expressions inside node parameters.

  • hou.parm()

    Given a path string, return a Parm object. Return None if the path does not refer to a parameter.

  • hou.parmBakeChop

    Enumeration of Bake Chop modes.

  • hou.parmClipboardContents()

    Returns the contents of the parameter clipboard as a tuple of copied parameter dictionaries.

  • hou.parmCondType

    Enumeration of available parameter conditional types.

  • hou.parmExtrapolate

    Enumeration of Extrapolation methods when evaluating value outside the keyframe range.

  • hou.parmTuple()

    Given a path string, return a ParmTuple object. Return None if the path does not refer to a parameter tuple.

  • hou.scriptLanguage

    Enumeration of available script languages.

  • hou.setDefaultContextOption()

    Sets the default value for a cook context option.

Parameter templates

Performance

  • hou.PerfMonEvent

    Represents an event that is recorded by the performance monitor and used to generate time and memory growth statistics for profiles.

  • hou.PerfMonProfile

    Represents a performance monitor profile.

  • hou.PerfMonRecordOptions

    Represents the set of options used by the Performance Monitor and specifies the type of statistics to be recorded in a profile.

  • hou.perfMon

    Module containing performance monitor related functions.

Playbar

  • hou.fps()

    Return the number of frames per second.

  • hou.frame()

    Return the playbar’s current frame. Note that Houdini can be on a fractional frame if fractional frames are enabled.

  • hou.frameToTime()

    Convert from a given frame value to a time value.

  • hou.intFrame()

    Return the playbar’s current frame, rounded to the nearest integer.

  • hou.playMode

    Enumeration of play modes for the main playbar in Houdini.

  • hou.playbar

    The animation playbar module.

  • hou.playbarEvent

    Enumeration of the playbar events that can be handled by callback functions.

  • hou.setFps()

    Set the number of frames per second.

  • hou.setFrame()

    Set the playbar’s current frame. Note that the frame may be a fractional value.

  • hou.setTime()

    Set the playbar’s time.

  • hou.time()

    Return the playbar’s current time, in seconds of playback.

  • hou.timeToFrame()

    Convert from a given time value to a frame value, rounding the result to a integer if it is close to an integer.

preferences

Radial menus

Rendering

Scripting

Shading

  • hou.Gallery

    A collection of gallery entries that can be applied to operator nodes to set their parameters to predefined values.

  • hou.GalleryEntry

    A gallery entry that can be applied to operator nodes to set their parameters to predefined values.

  • hou.ShopNode

    The base class for all SHOP nodes in Houdini. An instance of this class corresponds to exactly one instance of a node in Houdini.

  • hou.StyleSheet

    A class that represents a Houdini style sheet. It can be used to evaluate, test, and debug style sheet output.

  • hou.galleries

    A module for managing galleries and their entries.

  • hou.properties

    A module for accessing standard render properties.

  • hou.shaderType

    Enumeration of SHOP shader types.

  • hou.styles

    A module for managing style sheets that are stored with the hip file.

Shelf

  • hou.Shelf

    Represents a tab of shelf tools.

  • hou.ShelfDock

    Represents the shelf area at the top of the screen, within which shelf sets and shelf tabs exist.

  • hou.ShelfElement

    Superclass of shelf tools, shelf tabs, and shelf sets.

  • hou.ShelfSet

    Represents a collection of shelf tabs.

  • hou.Tool

    Represents a tool on the shelf, encapsulating a script as well as a label, help, and other information.

  • hou.shelves

    Contains functions for working with shelf tabs and shelf tools.

Takes

UI

Utility

  • hou.BoundingBox

    An axis-aligned 3D rectangular region.

  • hou.BoundingRect

    An axis-aligned 2D rectangular region.

  • hou.Color

    Represents a color value.

  • hou.LopSelectionRule

    Stores a set of rules that define how to make a selection of scene graph primitives.

  • hou.Matrix2

    A 2×2 matrix of floating point values.

  • hou.Matrix3

    A 3×3 matrix of floating point values.

  • hou.Matrix4

    A 4×4 matrix of floating point values.

  • hou.OrientedBoundingRect

    An oriented 2D rectangular region.

  • hou.Quaternion

    A representation of a 3D rotation (or orientation). You can smoothly interpolate between two rotation values by interpolating between two quaternions.

  • hou.Ramp

    A Ramp represents a function that yields either floating point values or colors. You can evaluate this function between 0.0 and 1.0, and the function’s shape is determined by a sequence of values at key positions between 0.0 and 1.0.

  • hou.ShopNodeType

    This kind of NodeType contains extra attributes specific to SHOP nodes.

  • hou.Vector2

    A sequence of 2 floating point values, with associated mathematical operations.

  • hou.Vector3

    A sequence of 3 floating point values, with associated mathematical operations.

  • hou.Vector4

    A sequence of 4 floating point values, with associated mathematical operations.

  • hou.VopNodeType

    This kind of NodeType contains extra attributes specific to VOP nodes.

  • hou.colorType

    Enumeration of color spaces.

  • hou.compressionType

    Enumeration of compression types.

  • hou.rampBasis

    Enumeration of ramp interpolation types.

  • hou.rampParmType

    Enumeration of ramp types.

VEX

Views

viewer

widgets