# eigenvalues VEX function

Computes the eigenvalues of a 3×3 matrix.

``` void  eigenvalues(int &nroot, matrix3 mat, vector &real, vector &imaginary) ```

Computes the eigenvalues of a 3×3 matrix.

`nroot`

The function overwrites this variable with the number of real roots.

`mat`

The matrix to compute the eigenvalues for.

`real`, `imaginary`

The components of these two vectors are overwritten with corresponding pairs of real and imaginary parts of each eigenvalue. For example, `real[0]` and `imaginary[0]` contain the real and imaginary parts of the first eigenvalue.

 matrix

# VEX Functions

## Arrays ¶

• Adds an item to an array or string.

• Returns the indices of a sorted version of an array.

• Efficiently creates an array from its arguments.

• Loops over the items in an array, with optional enumeration.

• Inserts an item, array, or string into an array or string.

• Checks if the index given is valid for the array or string given.

• Returns the length of an array.

• Removes the last element of an array and returns it.

• Adds an item to an array.

• Removes an item at the given index from an array.

• Removes an item from an array.

• Reorders items in an array or string.

• Sets the length of an array.

• Returns an array or string in reverse order.

• Slices a sub-string or sub-array of a string or array.

• Returns the array sorted in increasing order.

• Adds a uniform item to an array.

## Attributes and Intrinsics ¶

• Adds an attribute to a geometry.

• Adds a detail attribute to a geometry.

• Adds a point attribute to a geometry.

• Adds a primitive attribute to a geometry.

• Adds a vertex attribute to a geometry.

• Appends to a geometry’s visualizer detail attribute.

• Reads the value of an attribute from geometry.

• Returns the class of a geometry attribute.

• Returns the data id of a geometry attribute.

• Returns the size of a geometry attribute.

• Returns the type of a geometry attribute.

• Returns the transformation metadata of a geometry attribute.

• Evaluates the length of an arc on a primitive defined by an array of points using parametric uv coordinates.

• Reads the value of a detail attribute value from a geometry.

• Reads a detail attribute value from a geometry.

• Returns the size of a geometry detail attribute.

• Returns the type of a geometry detail attribute.

• Returns the type info of a geometry attribute.

• Reads the value of a detail intrinsic from a geometry.

• Finds a primitive/point/vertex that has a certain attribute value.

• Returns number of elements where an integer or string attribute has a certain value.

• Reads an attribute value from geometry, with validity check.

• Copies the value of a geometry attribute into a variable and returns a success flag.

• Checks whether a geometry attribute exists.

• Returns if a geometry detail attribute exists.

• Returns if a geometry point attribute exists.

• Returns if a geometry prim attribute exists.

• Returns if a geometry vertex attribute exists.

• Finds a point by its id attribute.

• Finds a primitive by its id attribute.

• Finds a point by its name attribute.

• Finds a primitive by its name attribute.

• Returns the number of unique values from an integer or string attribute.

• Reads a point attribute value from a geometry.

• Reads a point attribute value from a geometry and outputs a success/fail flag.

• Returns the size of a geometry point attribute.

• Returns the type of a geometry point attribute.

• Returns the type info of a geometry attribute.

• Returns an array of point localtransforms from an array of point indices.

• Returns a point transform from a point index.

• Returns a rigid point transform from a point index.

• Returns an array of point transforms from an array of point indices.

• Returns an array of rigid point transforms from an array of point indices.

• Reads a primitive attribute value from a geometry.

• Interpolates the value of an attribute at a certain parametric (u, v) position and copies it into a variable.

• Evaluates the length of an arc on a primitive using parametric uv coordinates.

• Reads a primitive attribute value from a geometry, outputting a success flag.

• Returns the size of a geometry prim attribute.

• Returns the type of a geometry prim attribute.

• Returns the type info of a geometry attribute.

• Returns position derivative on a primitive at a certain parametric (u, v) position.

• Finds the indices and weightings of the vertices that will compute an interior point given the UVW coordinates.

• Reads a primitive intrinsic from a geometry.

• Interpolates the value of an attribute at a certain parametric (uvw) position.

• Convert parametric UV locations on curve primitives between different spaces.

• Removes a detail attribute from a geometry.

• Removes a point attribute from a geometry.

• Removes a point group from a geometry.

• Removes a primitive attribute from a geometry.

• Removes a primitive group from a geometry.

• Removes a vertex attribute from a geometry.

• Removes a vertex group from a geometry.

• Writes an attribute value to geometry.

• Sets the meaning of an attribute in geometry.

• Sets a detail attribute in a geometry.

• Sets the value of a writeable detail intrinsic attribute.

• Sets a point attribute in a geometry.

• Sets an array of point local transforms at the given point indices.

• Sets the world space transform of a given point

• Sets an array of point transforms at the given point indices.

• Sets a primitive attribute in a geometry.

• Sets the value of a writeable primitive intrinsic attribute.

• Sets a vertex attribute in a geometry.

• Returns one of the set of unique values across all values for an int or string attribute.

• Returns the set of unique values across all values for an int or string attribute.

• Interpolates the value of an attribute at certain UV coordinates using a UV attribute.

• Reads a vertex attribute value from a geometry.

• Reads a vertex attribute value from a geometry.

• Returns the size of a geometry vertex attribute.

• Returns the type of a geometry vertex attribute.

• Returns the type info of a geometry attribute.

## BSDFs ¶

• Returns the albedo (percentage of reflected light) for a bsdf given the outgoing light direction.

• Returns a specular BSDF using the Ashikhmin shading model.

• Returns a Blinn BSDF or computes Blinn shading.

• Returns a chiang BSDF.

• Returns a chiang_fur BSDF.

• Returns a cone reflection BSDF.

• Creates a bsdf object from two CVEX shader strings.

• Returns a diffuse BSDF or computes diffuse shading.

• Evaluates a bsdf given two vectors.

• Returns a ggx BSDF.

• Returns a BSDF for shading hair.

• Returns an anisotropic volumetric BSDF, which can scatter light forward or backward.

• Returns an isotropic BSDF, which scatters light equally in all directions.

• Returns new BSDF that only includes the components specified by the mask.

• Returns the normal for the diffuse component of a BSDF.

• Returns a Phong BSDF or computes Phong shading.

• Samples a BSDF.

• Computes the solid angle (in steradians) a BSDF function subtends.

• Splits a bsdf into its component lobes.

• Creates an approximate SSS BSDF.

## BSDFs ¶

• Returns a specular BSDF or computes specular shading.

## CHOP ¶

• Adds new channels to a CHOP node.

• Reads from a CHOP attribute.

• Reads CHOP attribute names of a given attribute class from a CHOP input.

• Returns the sample number of the last sample in a given CHOP input.

• Returns the frame corresponding to the last sample of the input specified.

• Returns the time corresponding to the last sample of the input specified.

• Returns the channel index from a input given a channel name.

• Returns the value of a channel at the specified sample.

• Computes the minimum and maximum value of samples in an input channel.

• Returns all the CHOP channel names of a given CHOP input.

• Returns the number of channels in the input specified.

• Returns the value of a CHOP channel at the specified sample.

• Returns the value of a CHOP local transform channel at the specified sample.

• Returns the value of a CHOP local transform channel at the specified sample and evaluation time.

• Returns the value of a CHOP channel at the specified sample and evaluation time.

• Returns the sample rate of the input specified.

• Returns the value of CHOP context temporary buffer at the specified index.

• Removes channels from a CHOP node.

• Removes a CHOP attribute.

• Renames a CHOP channel.

• Resize the CHOP context temporary buffer

• Sets the value of a CHOP attribute.

• Sets the length of the CHOP channel data.

• Sets the sampling rate of the CHOP channel data.

• Sets the CHOP start sample in the channel data.

• Returns the start sample of the input specified.

• Returns the frame corresponding to the first sample of the input specified.

• Returns the time corresponding to the first sample of the input specified.

• Writes a value of CHOP context temporary buffer at the specified index.

• Returns 1 if the Vex CHOP’s Unit Menu is currently set to 'frames', 0 otherwise.

• Returns 1 if the Vex CHOP’s Unit Menu is currently set to 'samples', 0 otherwise.

• Returns 1 if the Vex CHOP’s Unit Menu is currently set to 'seconds', 0 otherwise.

• Returns the number of inputs.

## Channel Primitives ¶

• Clears a channel primitive, removing all keys.

• Destroy an existing key from a channel primitive.

• Get the end time of a channel primitive.

• Evaluate a channel primitive at the given time.

• Insert a key into a channel primitive.

• Get the number of keys in a channel primitive.

• Get the key times of a channel primitive.

• Get the key values of a channel primitive.

• Get the length of a channel primitive.

• Set the acceleration of a channel primitive key.

• Set the slope of a channel primitive key.

• Set the value of a channel primitive key.

• Get the start time of a channel primitive.

## color ¶

• Compute the color value of an incandescent black body.

• Transforms between color spaces.

• Compute the luminance of the RGB color specified by the parameters.

## Conversion ¶

• Converts a string to a float.

• Converts a string to an integer.

• Depending on the value of c, returns the translate (c=0), rotate (c=1), scale (c=2), or shears (c=3) component of the transform (xform).

• Converts the argument from radians into degrees.

• Creates a vector4 representing a quaternion from euler angles.

• Convert HSV color space into RGB color space.

• Converts a quaternion represented by a vector4 to a matrix3 representation.

• Creates a euler angle representing a quaternion.

• Converts the argument from degrees into radians.

• Convert RGB color space to HSV color space.

• Convert a linear sRGB triplet to CIE XYZ tristimulus values.

• Flattens an array of vector or matrix types into an array of floats.

• Turns a flat array of floats into an array of vectors or matrices.

• Convert CIE XYZ tristimulus values to a linear sRGB triplet.

## Crowds ¶

• Add a clip into an agent’s definition.

• Returns the number of channels in an agent primitive’s rig.

• Returns the names of the channels in an agent primitive’s rig.

• Returns the current value of an agent primitive’s channel.

• Returns the current values of an agent primitive’s channels.

• Returns all of the animation clips that have been loaded for an agent primitive.

• Finds the index of a channel in an agent’s animation clip.

• Returns the names of the channels in an agent’s animation clip.

• Blends values according to an agent’s animation layers.

• Returns the length (in seconds) of an agent’s animation clip.

• Returns an agent primitive’s current animation clips.

• Samples a channel of an agent’s clip at a specific time.

• Samples an agent’s animation clip at a specific time.

• Returns the sample rate of an agent’s animation clip.

• Samples an agent’s animation clip at a specific time.

• Returns the start time (in seconds) of an agent’s animation clip.

• Returns the current times for an agent primitive’s animation clips.

• Returns the transform groups for an agent primitive’s current animation clips.

• Returns the blend weights for an agent primitive’s animation clips.

• Returns the name of the collision layer of an agent primitive.

• Returns the names of an agent primitive’s collision layers.

• Returns the name of the current layer of an agent primitive.

• Returns the names of an agent primitive’s current layers.

• Finds the index of a clip in an agent’s definition.

• Finds the index of a layer in an agent’s definition.

• Finds the index of a transform group in an agent’s definition.

• Returns the transform that each shape in an agent’s layer is bound to.

• Returns all of the layers that have been loaded for an agent primitive.

• Returns the names of the shapes referenced by an agent primitive’s layer.

• Returns the current local space transform of an agent primitive’s bone.

• Returns the current local space transforms of an agent primitive.

• Returns the agent definition’s metadata dictionary.

• Returns the local space rest transform for an agent primitive’s joint.

• Returns the world space rest transform for an agent primitive’s joint.

• Returns the child transforms of a transform in an agent primitive’s rig.

• Finds the index of a transform in an agent primitive’s rig.

• Finds the index of a channel in an agent primitive’s rig.

• Returns the parent transform of a transform in an agent primitive’s rig.

• Applies a full-body inverse kinematics algorithm to an agent’s skeleton.

• Returns the number of transforms in an agent primitive’s rig.

• Returns whether a transform is a member of the specified transform group.

• Returns whether a channel is a member of the specified transform group.

• Returns the names of the transform groups in an agent’s definition.

• Returns the weight of a member of the specified transform group.

• Returns the name of each transform in an agent primitive’s rig.

• Converts transforms from world space to local space for an agent primitive.

• Converts transforms from local space to world space for an agent primitive.

• Returns the current world space transform of an agent primitive’s bone.

• Returns the current world space transforms of an agent primitive.

• Overrides the value of an agent primitive’s channel.

• Overrides the values of an agent primitive’s channels.

• Sets the current animation clips for an agent primitive.

• Sets the animation clips that an agent should use to compute its transforms.

• Sets the current times for an agent primitive’s animation clips.

• Sets the blend weights for an agent primitive’s animation clips.

• Sets the collision layer of an agent primitive.

• Sets the collision layers of an agent primitive.

• Sets the current layer of an agent primitive.

• Sets the current display layers of an agent primitive.

• Overrides the local space transform of an agent primitive’s bone.

• Overrides the local space transforms of an agent primitive.

• Overrides the world space transform of an agent primitive’s bone.

• Overrides the world space transforms of an agent primitive.

## dict ¶

• Converts a VEX dictionary into a JSON string.

• Converts a JSON string into a VEX dictionary.

• Returns all the keys in a dictionary.

• Returns a numeric code identifying a VEX data type.

## displace ¶

• Reads a variable from the displacement shader for the surface.

## File I/O ¶

• Returns file system status for a given file.

## filter ¶

• Computes an importance sample based on the given filter type and input uv.

## Geometry ¶

• Adds a point to the geometry.

• Adds a primitive to the geometry.

• Adds a vertex to a primitive in a geometry.

• Clip the line segment between p0 and p1.

• Returns a handle to the current geometry.

• Returns an oppath: string to unwrap the geometry in-place.

• Returns 1 if the edge specified by the point pair is in the group specified by the string.

• This function computes the first intersection of a ray with geometry.

• Computes all intersections of the specified ray with geometry.

• Given a position in world space, returns the position of the closest point on a given geometry.

• Finds the closest point in a geometry.

• Finds the all the closest point in a geometry.

• Returns the number of edges in the group.

• Returns the point number of the next point connected to a given point.

• Returns the number of points that are connected to the specified point.

• Returns an array of the point numbers of the neighbours of a point.

• Returns the number of points in the input or geometry file.

• Returns the number of primitives in the input or geometry file.

• Returns the number of vertices in the input or geometry file.

• Returns the number of vertices in the group.

• Returns the list of primitives containing a point.

• Returns a linear vertex number of a point in a geometry.

• Returns the list of vertices connected to a point.

• Returns an array of the primitive numbers of the edge-neighbours of a polygon.

• Returns a list of primitives potentially intersecting a given bounding box.

• Converts a primitive/vertex pair into a point number.

• Returns the list of points on a primitive.

• Converts a primitive/vertex pair into a linear vertex.

• Returns number of vertices in a primitive in a geometry.

• Returns the list of vertices on a primitive.

• Removes an attribute or group from the geometry.

• Removes a point from the geometry.

• Removes a primitive from the geometry.

• Removes a vertex from the geometry.

• Sets edge group membership in a geometry.

• Rewires a vertex in the geometry to a different point.

• Rewires a vertex in the geometry to a different point.

• This function computes the intersection of the specified ray with the geometry in uv space.

• Returns the parametric coordinate of a vertex along the perimeter of its primitive.

• Converts a primitive/vertex pair into a linear vertex.

• Returns the linear vertex number of the next vertex sharing a point with a given vertex.

• Returns the point number of linear vertex in a geometry.

• Returns the linear vertex number of the previous vertex sharing a point with a given vertex.

• Returns the number of the primitive containing a given vertex.

• Converts a linear vertex index into a primitive vertex number.

## groups ¶

• Returns an array of point numbers corresponding to a group string.

• Returns an array of prim numbers corresponding to a group string.

• Returns an array of linear vertex numbers corresponding to a group string.

• Returns 1 if the point specified by the point number is in the group specified by the string.

• Returns 1 if the primitive specified by the primitive number is in the group specified by the string.

• Returns 1 if the vertex specified by the vertex number is in the group specified by the string.

• Returns the number of points in the group.

• Returns the number of primitives in the group.

• Adds or removes a point to/from a group in a geometry.

• Adds or removes a primitive to/from a group in a geometry.

• Adds or removes a vertex to/from a group in a geometry.

## Half-edges ¶

• Returns the destination point of a half-edge.

• Returns the destination vertex of a half-edge.

• Returns the number of half-edges equivalent to a given half-edge.

• Determines whether a two half-edges are equivalent (represent the same edge).

• Determines whether a half-edge number corresponds to a primary half-edge.

• Determines whether a half-edge number corresponds to a valid half-edge.

• Returns the half-edge that follows a given half-edge in its polygon.

• Returns the next half-edges equivalent to a given half-edge.

• Returns the point into which the vertex following the destination vertex of a half-edge in its primitive is wired.

• Returns the vertex following the destination vertex of a half-edge in its primitive.

• Returns the point into which the vertex that precedes the source vertex of a half-edge in its primitive is wired.

• Returns the vertex that precedes the source vertex of a half-edge in its primitive.

• Returns the half-edge that precedes a given half-edge in its polygon.

• Returns the primitive that contains a half-edge.

• Returns the primary half-edge equivalent to a given half-edge.

• Returns the source point of a half-edge.

• Returns the source vertex of a half-edge.

• Finds and returns a half-edge with the given endpoints.

• Finds and returns a half-edge with a given source point or with given source and destination points.

• Returns the next half-edge with the same source as a given half-edge.

• Returns one of the half-edges contained in a primitive.

• Returns the half-edge which has a vertex as source.

## hex ¶

• Returns primitive number of an adjacent hexahedron.

• Returns vertex indices of each face of a hexahedron.

## Image Processing ¶

• Tells the COP manager that you need access to the given frame.

• Returns the default name of the alpha plane (as it appears in the compositor preferences).

• Samples a 2×2 pixel block around the given UV position, and bilinearly interpolates these pixels.

• Returns the default name of the bump plane (as it appears in the compositor preferences).

• Returns the name of a numbered channel.

• Samples the exact (unfiltered) pixel color at the given coordinates.

• Returns the default name of the color plane (as it appears in the compositor preferences).

• Returns the default name of the depth plane (as it appears in the compositor preferences).

• Reads the z-records stored in a pixel of a deep shadow map or deep camera map.

• Returns fully filtered pixel input.

• Queries if metadata exists on a composite operator.

• Returns 1 if the plane specified by the parameter exists in this COP.

• Returns the aspect ratio of the specified input.

• Returns the channel name of the indexed plane of the given input.

• Returns the last frame of the specified input.

• Returns the end time of the specified input.

• Returns 1 if the specified input has a plane named planename.

• Returns the number of planes in the given input.

• Returns the index of the plane named 'planename' in the specified input.

• Returns the name of the plane specified by the planeindex of the given input

• Returns the number of components in the plane named planename in the specified input.

• Returns the frame rate of the specified input.

• Returns the starting frame of the specified input.

• Returns the start time of the specified input.

• Returns the X resolution of the specified input.

• Returns the Y resolution of the specified input.

• Returns the default name of the luminaence plane (as it appears in the compositor preferences).

• Returns the default name of the mask plane (as it appears in the compositor preferences).

• Returns a metadata value from a composite operator.

• Reads a component from a pixel and its eight neighbors.

• Returns the default name of the normal plane (as it appears in the compositor preferences).

• Returns the index of the plane specified by the parameter, starting at zero.

• Returns the name of the plane specified by the index (e.

• Returns the number of components in the plane (1 for scalar planes and up to 4 for vector planes).

• Returns the default name of the point plane (as it appears in the compositor preferences).

• Returns the default name of the velocity plane (as it appears in the compositor preferences).

## Interpolation ¶

• Samples a Catmull-Rom (Cardinal) spline defined by position/value keys.

• Returns value clamped between min and max.

• Samples a Catmull-Rom (Cardinal) spline defined by uniformly spaced keys.

• Takes the value in one range and shifts it to the corresponding value in a new range.

• Takes the value in one range and shifts it to the corresponding value in a new range.

• Takes the value in the range (0, 1) and shifts it to the corresponding value in a new range.

• Takes the value in the range (1, 0) and shifts it to the corresponding value in a new range.

• Takes the value in the range (-1, 1) and shifts it to the corresponding value in a new range.

• Inverses a linear interpolation between the values.

• Performs linear interpolation between the values.

• Samples a polyline between the key points.

• Samples a polyline defined by linearly spaced values.

• Quaternion blend between q1 and q2 based on the bias.

• Spherical blends between two vectors based on the bias.

• Computes ease in/out interpolation between values.

## light ¶

• Returns the color of ambient light in the scene.

• Computes attenuated falloff.

• Sends a ray from the position P along the direction specified by the direction D.

• Sends a ray from the position P along direction D.

## Math ¶

• Returns the absolute value of the argument.

• Returns the inverse cosine of the argument.

• Returns the inverse sine of the argument.

• Returns the inverse tangent of the argument.

• Returns the inverse tangent of y/x.

• Returns the average value of the input(s)

• Returns the cube root of the argument.

• Returns the smallest integer greater than or equal to the argument.

• Combines Local and Parent Transforms with Scale Inheritance.

• Returns the cosine of the argument.

• Returns the hyperbolic cosine of the argument.

• Returns the cross product between the two vectors.

• Computes the determinant of the matrix.

• Extracts diagonal entries or constructs a diagonal matrix.

• Diagonalizes Symmetric Matrices.

• This function returns the closest distance between the point Q and the infinite line going through O parallel to vector D.

• This function returns the closest distance between the point Q and the semi-finite ray starting at O and extending in the direction D.

• This function returns the closest distance between the point Q and a finite line segment between points P0 and P1.

• Returns the dot product between the arguments.

• Returns the derivative of the given value with respect to U.

• Returns the derivative of the given value with respect to V.

• Returns the derivative of the given value with respect to the 3rd axis (for volume rendering).

• Computes the eigenvalues of a 3×3 matrix.

• Gauss error function.

• Inverse Gauss error function.

• Gauss error function’s complement.

• Returns the exponential function of the argument.

• Extracts Local Transform from a World Transform with Scale Inheritance.

• Returns the largest integer less than or equal to the argument.

• Returns the fractional component of the floating point number.

• Returns an identity matrix.

• Inverts a matrix.

• Checks whether a value is a normal finite number.

• Checks whether a value is a positive or negative infinity.

• Checks whether a value is not a number.

• Returns an interpolated value along a curve defined by a basis and key/position pairs.

• Returns the magnitude of a vector.

• Returns the squared distance of the vector or vector4.

• Returns the natural logarithm of the argument.

• Returns the logarithm (base 10) of the argument.

• Creates an orthonormal basis given a z-axis vector.

• Returns the induced matrix 1-norm.

• Returns the Frobenius norm of a matrix.

• Returns the induced matrix infinity-norm.

• Returns the matrix max-norm.

• Returns the matrix spectral norm.

• Returns a normalized vector.

• Returns the outer product between the arguments.

• Computes the pseudo-inverse of a matrix.

• Computes the intersection of a 3D sphere and an infinite 3D plane.

• Raises the first argument to the power of the second argument.

• Determines if a point is inside or outside a triangle circumcircle.

• Determines if a point is inside or outside a tetrahedron circumsphere.

• Determines the orientation of a point with respect to a line.

• Determines the orientation of a point with respect to a plane.

• Pre multiply matrices.

• Returns the product of a list of numbers.

• This function returns the closest distance between the point Q and a finite line segment between points P0 and P1.

• Finds distance between two quaternions.

• Inverts a quaternion rotation.

• Multiplies two quaternions and returns the result.

• Rotates a vector by a quaternion.

• Creates a vector4 representing a quaternion.

• Rounds the number to the closest whole number.

• Bit-shifts an integer left.

• Bit-shifts an integer right.

• Bit-shifts an integer right.

• Returns -1, 0, or 1 depending on the sign of the argument.

• Returns the sine of the argument.

• Returns the hyperbolic sine of the argument.

• Finds the normal component of frame slid along a curve.

• Solves a cubic function returning the number of real roots.

• Finds the real roots of a polynomial.

• Solves a quadratic function returning the number of real roots.

• Finds the angles of a triangle from its sides.

• Samples a value along a polyline or spline curve.

• Generate a cumulative distribution function (CDF) by sampling a spline curve.

• Returns the square root of the argument.

• Returns the sum of a list of numbers.

• Computes the singular value decomposition of a given matrix.

• Returns the trigonometric tangent of the argument

• Returns the hyperbolic tangent of the argument

• Returns the trace of the given matrix.

• Transposes the given matrix.

• Removes the fractional part of a floating point number.

## measure ¶

• Returns the distance between two points.

• Returns the squared distance between the two points.

• Sets two vectors to the minimum and maximum corners of the bounding box for the geometry.

• Returns the center of the bounding box for the geometry.

• Returns the maximum of the bounding box for the geometry.

• Returns the minimum of the bounding box for the geometry.

• Returns the size of the bounding box for the geometry.

• Returns the bounding box of the geometry specified by the filename.

• Sets two vectors to the minimum and maximum corners of the bounding box for the geometry.

• Returns the center of the bounding box for the geometry.

• Returns the maximum of the bounding box for the geometry.

• Returns the minimum of the bounding box for the geometry.

• Returns the size of the bounding box for the geometry.

• Computes the distance and closest point of a point to an infinite plane.

• Returns the relative position of the point given with respect to the bounding box of the geometry.

• Returns the relative position of the point given with respect to the bounding box of the geometry.

• Finds the distance of a point to a group of points along the surface of a geometry.

• Finds the distance of a uv coordinate to a geometry in uv space.

• Computes the winding number of a mesh around a point. Winding number indicates how many times a geometry wraps around a point. Useful for inside/outside test, the winding number is equal to one inside of the mesh and zero outside.

• Computes the winding number of a curve in XY plane around a point. Winding number indicates how many times a curve wraps around a point. Useful for inside/outside test, the winding number is equal to one inside of the curve and zero outside.

• Finds the distance from a point to the closest location on surface geometry.

## metaball ¶

• Once you get a handle to a metaball using metastart and metanext, you can query attributes of the metaball with metaimport.

• Takes the ray defined by p0 and p1 and partitions it into zero or more sub-intervals where each interval intersects a cluster of metaballs from filename.

• Iterate to the next metaball in the list of metaballs returned by the metastart() function.

• Open a geometry file and return a handle for the metaballs of interest, at the position p.

• Returns the metaweight of the geometry at position p.

## Nodes ¶

• Adds a mapping for an attribute to a local variable.

• Evaluates a channel (or parameter) and return its value.

• Evaluates a channel (or parameter) and return its value.

• Evaluates a channel (or parameter) and return its value.

• Evaluates a channel (or parameter) and return its value.

• Evaluates a key-value dictionary parameter and return its value.

• Evaluates a channel with a new segment expression.

• Evaluates a channel with a new segment expression at a given frame.

• Evaluates a channel with a new segment expression at a given time.

• Evaluates a channel (or parameter) and return its value.

• Evaluates a channel (or parameter) and return its value.

• Resolves a channel string (or parameter) and return op_id, parm_index and vector_index.

• Evaluates a channel (or parameter) and return its value.

• Evaluates a ramp parameter and return its value.

• Evaluates the derivative of a parm parameter with respect to position.

• Evaluates a channel (or parameter) and return its value.

• Evaluates an operator path parameter and return the path to the operator.

• Returns the raw string channel (or parameter).

• Evaluates a channel or parameter, and return its value.

• Evaluates a channel or parameter, and return its value.

• Returns the capture transform associated with a Capture Region SOP.

• Returns the deform transform associated with a Capture Region SOP.

• Returns the capture or deform transform associated with a Capture Region SOP based on the global capture override flag.

• Returns 1 if input_number is connected, or 0 if the input is not connected.

• Returns the full path for the given relative path

• Resolves an operator path string and return its op_id.

• Returns the parent bone transform associated with an OP.

• Returns the parent transform associated with an OP.

• Returns the parm transform associated with an OP.

• Returns the preconstraint transform associated with an OP.

• Returns the pre and parm transform associated with an OP.

• Returns the pre and raw parm transform associated with an OP.

• Returns the pretransform associated with an OP.

• Returns the raw parm transform associated with an OP.

• Returns the transform associated with an OP.

## Noise and Randomness ¶

• Generates alligator noise.

• Computes divergence free noise based on simplex noise.

• Computes divergence free noise in the plane based on simplex noise.

• Computes divergence free noise based on Perlin noise.

• Computes 2d divergence free noise based on Perlin noise.

• Computes divergence free noise based on Simplex noise.

• Computes 2d divergence free noise based on simplex noise.

• Generates Worley (cellular) noise using a Chebyshev distance metric.

• Generates 1D and 3D Perlin Flow Noise from 3D and 4D data.

• There are two forms of Perlin-style noise: a non-periodic noise which changes randomly throughout N-dimensional space, and a periodic form which repeats over a given range of space.

• Evaluates a simplex noise field.

• Evaluates a simplex noise field and its derivatives.

• Generates noise matching the output of the Hscript noise() expression function.

• Produces the exact same results as the Houdini expression function of the same name.

• Generates turbulence matching the output of the HScript turb() expression function.

• Generates Worley (cellular) noise using a Manhattan distance metric.

• MaterialX compatible cellnoise

• MaterialX compatible Perlin noise

• MaterialX compatible Voronoi noise

• MaterialX compatible Worley noise

• There are two forms of Perlin-style noise: a non-periodic noise which changes randomly throughout N-dimensional space, and a periodic form which repeats over a given range of space.

• Derivatives of Perlin Noise.

• Non-deterministic random number generation function.

• These functions are similar to wnoise and vnoise.

• There are two forms of Perlin-style noise: a non-periodic noise which changes randomly throughout N-dimensional space, and a periodic form which repeats over a given range of space.

• Periodic derivatives of Simplex Noise.

• Creates a random number between 0 and 1 from a seed.

• Generate a random number based on the integer position in 1-4D space.

• Generate a uniformly distributed random number.

• Hashes floating point numbers to integers.

• Hashes integer numbers to integers.

• Generates a random Poisson variable given the mean to the distribution and a seed.

• Hashes a string to an integer.

• Generate a uniformly distributed random number.

• These functions are similar to wnoise.

• Generates Voronoi (cellular) noise.

• Generates Worley (cellular) noise.

• Simplex noise is very close to Perlin noise, except with the samples on a simplex mesh rather than a grid. This results in less grid artifacts. It also uses a higher order bspline to provide better derivatives. This is the periodic simplex noise

• Simplex noise is very close to Perlin noise, except with the samples on a simplex mesh rather than a grid. This results in less grid artifacts. It also uses a higher order bspline to provide better derivatives.

• Derivatives of Simplex Noise.

## normals ¶

• In shading contexts, computes a normal. In the SOP contexts, sets how/whether to recompute normals.

• Returns the normal of the primitive (prim_number) at parametric location u, v.

## Open Color IO ¶

• Returns the names of active displays supported in Open Color IO

• Returns the names of active views supported in Open Color IO

• Imports attributes from OpenColorIO spaces.

• Parse the color space from a string

• Returns the names of roles supported in Open Color IO

• Returns the names of color spaces supported in Open Color IO.

• Transform colors using Open Color IO

• Transform colors to a view using Open Color IO

## particles ¶

• Samples the velocity field defined by a set of vortex filaments.

## Point Clouds and 3D Images ¶

• Returns the value of the point attribute for the metaballs if metaball geometry is specified to i3dgen.

• Returns the density of the metaball field if metaball geometry is specified to i3dgen.

• Transforms the position specified into the local space of the metaball.

• This function closes the handle associated with a pcopen function.

• Returns a list of closest points from a file within a specified cone.

• Returns a list of closest points from a file in a cone, taking into account their radii

• Writes data to a point cloud inside a pciterate or a pcunshaded loop.

• Returns the distance to the farthest point found in the search performed by pcopen.

• Filters points found by pcopen using a simple reconstruction filter.

• Returns a list of closest points from a file.

• Returns a list of closest points from a file taking into account their radii.

• Generates a point cloud.

• Imports channel data from a point cloud inside a pciterate or a pcunshaded loop.

• Imports channel data from a point cloud outside a pciterate or a pcunshaded loop.

• Imports channel data from a point cloud outside a pciterate or a pcunshaded loop.

• Imports channel data from a point cloud outside a pciterate or a pcunshaded loop.

• Imports channel data from a point cloud outside a pciterate or a pcunshaded loop.

• Imports channel data from a point cloud outside a pciterate or a pcunshaded loop.

• Imports channel data from a point cloud outside a pciterate or a pcunshaded loop.

• Imports channel data from a point cloud outside a pciterate or a pcunshaded loop.

• This function can be used to iterate over all the points which were found in the pcopen query.

• Returns a list of closest points to an infinite line from a specified file

• Returns a list of closest points to an infinite line from a specified file

• This node returns the number of points found by pcopen.

• Returns a handle to a point cloud file.

• Returns a handle to a point cloud file.

• Changes the current iteration point to a leaf descendant of the current aggregate point.

• Returns a list of closest points to a line segment from a specified file

• Returns a list of closest points to a line segment from a specified file

• Iterate over all of the points of a read-write channel which haven’t had any data written to the channel yet.

• Writes data to a point cloud file.

• Returns a list of closest points from a file.

• Samples a color from a photon map.

• Returns the value of the 3d image at the position specified by P.

• This function queries the 3D texture map specified and returns the bounding box information of the file.

## Sampling ¶

• Creates a cumulative distribution function (CDF) from an array of probability density function (PDF) values.

• Creates a probability density function from an array of input values.

• Limits a unit value in a way that maintains uniformity and in-range consistency.

• Initializes a sampling sequence for the nextsample function.

• Samples the Cauchy (Lorentz) distribution.

• Samples a cumulative distribution function (CDF).

• Generates a uniform unit vector2, within maxangle of center, given a uniform number between 0 and 1.

• Generates a uniform unit vector2, given a uniform number between 0 and 1.

• Generates a uniform vector2 with alpha < length < 1, where 0 < alpha < 1, given a vector2 of uniform numbers between 0 and 1.

• Generates a uniform vector2 with length < 1, within maxangle of center, given a vector2 of uniform numbers between 0 and 1.

• Generates a uniform vector2 with length < 1, given a vector2 of uniform numbers between 0 and 1.

• Generates a uniform unit vector, within maxangle of center, given a vector2 of uniform numbers between 0 and 1.

• Generates a uniform unit vector, given a vector2 of uniform numbers between 0 and 1.

• Returns an integer, either uniform or weighted, given a uniform number between 0 and 1.

• Samples the exponential distribution.

• Samples geometry in the scene and returns information from the shaders of surfaces that were sampled.

• Generates a unit vector, optionally biased, within a hemisphere, given a vector2 of uniform numbers between 0 and 1.

• Generates a uniform vector4 with length < 1, within maxangle of center, given a vector4 of uniform numbers between 0 and 1.

• Generates a uniform vector4 with length < 1, given a vector4 of uniform numbers between 0 and 1.

• Samples a 3D position on a light source and runs the light shader at that point.

• Samples the log-normal distribution based on parameters of the underlying normal distribution.

• Samples the log-normal distribution based on median and standard deviation.

• Samples the normal (Gaussian) distribution.

• Generates a uniform unit vector4, within maxangle of center, given a vector of uniform numbers between 0 and 1.

• Generates a uniform unit vector4, given a vector of uniform numbers between 0 and 1.

• Samples a 3D position on a light source and runs the light shader at that point.

• Generates a uniform vector with length < 1, within maxangle of center, given a vector of uniform numbers between 0 and 1.

• Generates a uniform vector with alpha < length < 1, where 0 < alpha < 1, given a vector of uniform numbers between 0 and 1.

• Generates a uniform vector with length < 1, given a vector of uniform numbers between 0 and 1.

• Warps uniform random samples to a disk.

• Computes the mean value and variance for a value.

## Sensor Input ¶

• Sensor function to render GL scene and query the result.

• Sensor function query a rendered GL scene.

• Sensor function to query average values from rendered GL scene.

• Sensor function query a rendered GL scene.

• Sensor function to save a rendered GL scene.

## Shading and Rendering ¶

• Returns the area of the micropolygon containing a variable such as P.

• Returns the anti-aliased weight of the step function.

• Computes the fresnel reflection/refraction contributions given an incoming vector, surface normal (both normalized), and an index of refraction (eta).

• If dot(I, Nref) is less than zero, N will be negated.

• Sends rays into the scene and returns information from the shaders of surfaces hit by the rays.

• Returns the blurred point position (P) vector at a fractional time within the motion blur exposure.

• Evaluates surface derivatives of an attribute.

• Returns the name of the current object whose shader is being run.

• Returns the depth of the ray tree for computing global illumination.

• Returns group id containing current primitive.

• Returns a light struct for the specified light identifier.

• Returns the light id for a named light (or -1 for an invalid name).

• Returns the name of the current light when called from within an illuminance loop, or converts an integer light ID into the light’s name.

• Returns an array of light identifiers for the currently shaded surface.

• Returns a selection of lights that illuminate a given material.

• Evaluates local curvature of primitive grid, using the same curvature evaluation method as Measure SOPs.

• Returns a material struct for the current surface.

• Returns material id of shaded primitive.

• Returns the object id for the current shading context.

• Returns the name of the current object whose shader is being run.

• Returns the integer ID of the light being used for photon shading.

• Returns the number of the current primitive.

• Returns the ptexture face id for the current primitive.

• Returns the depth of the ray tree for the current shading.

• Returns an approximation to the contribution of the ray to the final pixel color.

• Looks up sample data in a channel, referenced by a point.

• Returns a selection of objects visible to rays for a given material.

• Returns modified surface position based on a smoothing function.

• Evaluates UV tangents at a point on an arbitrary object.

• Returns the gradient of a field.

• Returns whether a light illuminates the given material.

• Loops through all light sources in the scene, calling the light shader for each light source to set the Cl and L global variables.

• Computes irradiance from the given Hosek Sky on a horizontal surface

• Interpolates a value across the currently shaded micropolygon.

• Finds the nearest intersection of a ray with any of a list of (area) lights and runs the light shader at the intersection point.

• Computes irradiance (global illumination) at the point P with the normal N.

• Returns 1 if the shader is being called to evaluate illumination for fog objects, or 0 if the light or shadow shader is being called to evaluate surface illumination.

• Returns 1 if Light Path Expressions are enabled. 0 Otherwise.

• Indicates whether a shader is being executed for ray tracing.

• Detects the orientation of default shading space.

• Returns 1 if the shader is being called to evaluate opacity for shadow rays, or 0 if the shader is being called to evaluate for surface color.

• Indicates whether the shader is being evaluated while doing UV rendering (e.g. texture unwrapping)

• Returns the bounce mask for a light struct.

• Returns the light id for a light struct.

• Queries the renderer for a named property.

• Imports a variable from the light shader for the surface.

• Returns a BSDF that matches the output of the traditional VEX blinn function.

• Returns a BSDF that matches the output of the traditional VEX specular function.

• Queries the renderer for a named property.

• Computes ambient occlusion.

• Computes global illumination using PBR for secondary bounces.

• Sends a ray from the position P along the direction D.

• Imports a value sent by a shader in a gather loop.

• Returns the vector representing the reflection of the direction against the normal.

• Computes the amount of reflected light which hits the surface.

• Returns the refraction ray given an incoming direction, the normalized normal and an index of refraction.

• Computes the illumination of surfaces refracted by the current surface.

• Queries the renderer for a named property.

• Returns the background color for rays that exit the scene.

• Evaluates a scattering event through the domain of a geometric object.

• Sets the current light

• Stores sample data in a channel, referenced by a point.

• Calls shadow shaders for the current light source.

• Executes the shadow shader for a given light and returns the amount of shadowing as a multiplier of the shaded color.

• Imports a variable from the shadow shader for the surface.

• Imports a variable sent by a surface shader in an illuminance loop.

• Returns the computed BRDFs for the different lighting models used in VEX shading.

• Stores exported data for a light.

• Use a different bsdf for direct or indirect lighting.

• Sends a ray from P along the normalized vector D.

• Returns a Lambertian translucence BSDF.

• Computes the position and normal at given (u, v) coordinates, for use in a lens shader.

• Writes color information to a pixel in the output image

## Strings ¶

• Returns the full path of a file.

• Converts an unicode codepoint to a UTF8 string.

• Concatenate all the strings specified to form a single string.

• Decodes a variable name that was previously encoded.

• Decodes a geometry attribute name that was previously encoded.

• Decodes a node parameter name that was previously encoded.

• Decodes a UTF8 string into a series of codepoints.

• Encodes any string into a valid variable name.

• Encodes any string into a valid geometry attribute name.

• Encodes any string into a valid node parameter name.

• Encodes a UTF8 string from a series of codepoints.

• Indicates the string ends with the specified string.

• Finds an item in an array or string.

• Returns 1 if all the characters in the string are alphabetic

• Returns 1 if all the characters in the string are numeric

• Converts an integer to a string.

• Concatenate all the strings of an array inserting a common spacer.

• Strips leading whitespace from a string.

• Forces a string to conform to the rules for variable names.

• This function returns 1 if the subject matches the pattern specified, or 0 if the subject doesn’t match.

• Returns the integer value of the last sequence of digits of a string

• Converts an UTF8 string into a codepoint.

• Converts an English noun to its plural.

• Matches a regular expression in a string

• Finds all instances of the given regular expression in the string

• Returns 1 if the entire input string matches the expression

• Replaces instances of regex_find with regex_replace

• Splits the given string based on regex match.

• Computes the relative path for two full paths.

• Returns the relative path to a file.

• Replaces occurrences of a substring.

• Replaces the matched string pattern with another pattern.

• Strips trailing whitespace from a string.

• Splits a string into tokens.

• Splits a file path into the directory and name parts.

• Formats a string like printf but returns the result as a string instead of printing it.

• Returns 1 if the string starts with the specified string.

• Strips leading and trailing whitespace from a string.

• Returns the length of the string.

• Returns a string that is the titlecase version of the input string.

• Converts all characters in string to lower case

• Converts all characters in string to upper case

## Subdivision Surfaces ¶

• Evaluates a point attribute at the subdivision limit surface using Open Subdiv.

• Evaluates a vertex attribute at the subdivision limit surface using Open Subdiv.

• Outputs the Houdini face and UV coordinates corresponding to the given coordinates on an OSD patch.

• Outputs the OSD patch and UV coordinates corresponding to the given coordinates on a Houdini polygon face.

• Returns a list of patch IDs for the patches in a subdivision hull.

## Tetrahedrons ¶

• Returns primitive number of an adjacent tetrahedron.

• Returns vertex indices of each face of a tetrahedron.

## Texturing ¶

• Looks up a (filtered) color from a texture file.

• The depthmap functions work on an image which was rendered as a z-depth image from mantra.

• Returns the color of the environment texture.

• Perform UDIM or UVTILE texture filename expansion.

• Test string for UDIM or UVTILE patterns.

• Remaps a texture coordinate to another coordinate in the map to optimize sampling of brighter areas.

• Evaluates an ocean spectrum and samples the result at a given time and location.

• Computes a filtered sample from a ptex texture map. Use texture instead.

• Looks up an unfiltered color from a texture file.

• The shadowmap function will treat the shadow map as if the image were rendered from a light source.

• Imports attributes from texture files.

• Similar to sprintf, but does expansion of UDIM or UVTILE texture filename expansion.

• Computes a filtered sample of the texture map specified.

## Transforms and Space ¶

• Computes the rotation matrix or quaternion which rotates the vector a onto the vector b.

• Transforms a position from normal device coordinates to the coordinates in the appropriate space.

• Gets the transform of a packed primitive.

• Returns a transform from one space to another.

• Creates an instance transform matrix.

• Computes a rotation matrix or angles to orient the negative z-axis along the vector (to-from) under the transformation.

• Builds a 3×3 or 4×4 transform matrix.

• Returns the camera space z-depth of the NDC z-depth value.

• Transforms a normal vector.

• Create an orthographic projection matrix.

• Transforms a normal vector from Object to World space.

• Transforms a position value from Object to World space.

• Transforms a direction vector from Object to World space.

• Transforms a packed primitive.

• Create a perspective projection matrix.

• Computes the polar decomposition of a matrix.

• Applies a pre rotation to the given matrix.

• Prescales the given matrix in three directions simultaneously (X, Y, Z - given by the components of the scale_vector).

• Pretranslates a matrix by a vector.

• Transforms a vector from one space to another.

• Applies a rotation to the given matrix.

• Rotates a vector by a rotation that would bring the x-axis to a given direction.

• Scales the given matrix in three directions simultaneously (X, Y, Z - given by the components of the scale_vector).

• Sets the transform of a packed primitive.

• Returns the closest equivalent Euler rotations to a reference rotation.

• Applies an inverse kinematics algorithm to a skeleton.

• Applies a curve inverse kinematics algorithm to a skeleton.

• Applies a full-body inverse kinematics algorithm to a skeleton.

• Applies an inverse kinematics algorithm to a skeleton.

• Applies a full-body inverse kinematics algorithm to a skeleton, with optional control over the center of mass.

• Transforms a position into normal device coordinates.

• Translates a matrix by a vector.

• Transforms a normal vector from Texture to World space.

• Transforms a position value from Texture to World space.

• Transforms a direction vector from Texture to World space.

• Transforms a directional vector.

• Transforms a normal vector from World to Object space.

• Transforms a position value from World to Object space.

• Transforms a direction vector from World to Object space.

• Transforms a normal vector from World to Texture space.

• Transforms a position value from World to Texture space.

• Transforms a direction vector from World to Texture space.

## usd ¶

• Creates an attribute of a given type on a primitive.

• Excludes an object from the collection

• Includes an object in the collection

• Appends an inversed transform operation to the primitive’s transform order

• Applies a quaternion orientation to the primitive

• Creates a primitive of a given type.

• Creates a primvar of a given type on a primitive.

• Adds a target to the primitive’s relationship

• Applies a rotation to the primitive

• Applies a scale to the primitive

• Creates an attribute of a given type on a primitive, and sets the custom metadata flag to False.

• Appends a transform operation to the primitive’s transform order

• Applies a transformation to the primitive

• Applies a translation to the primitive

• Apply an API schema to a primitive.

• Reads the value of an attribute from the USD primitive.

• Reads the value of an element from an array attribute.

• Returns the length of the array attribute.

• Returns the names of the attributes available on the primitive.

• Returns the tuple size of the attribute.

• Returns the time codes at which the attribute values are authored.

• Returns the name of the attribute type.

• Blocks the attribute.

• Blocks the primvar.

• Blocks the primvar.

• Blocks the primitive’s relationship

• Returns the material path bound to a given primitive.

• Returns the names of the primitive’s children.

• Clears the value of the metadata.

• Clears the primitive’s transform order

• Obtains the list of all objects that belong to the collection

• Checks if an object path belongs to the collection

• Obtains the object paths that are in the collection’s exclude list

• Obtains the collection’s expansion rule

• Obtains the object paths that are in the collection’s include list

• Returns the primitive’s draw mode.

• Retrurns primitive’s transform operation full name for given the transform operation suffix

• Reads the value of a flattened primvar directly from the USD primitive or from USD primitive’s ancestor.

• Reads an element value of a flattened array primvar directly from the USD primitive or from its ancestor.

• Reads the value of an flattened primvar directly from the USD primitive.

• Reads an element value of a flattened array primvar directly from a USD primitive.

• Sets two vectors to the minimum and maximum corners of the bounding box for the primitive.

• Returns the center of the bounding box for the primitive.

• Returns the maximum of the bounding box for the primitive.

• Returns the minimum of the bounding box for the primitive.

• Returns the size of the bounding box for the primitive.

• Obtains the primitive’s bounds

• Obtains the primitive’s bounds

• Checks if the primitive adheres to the given API.

• Checks if the primitive adheres to the given API.

• Reads the value of a primvar directly from the USD primitive or from USD primitive’s ancestor.

• Reads the value of an element from the array primvar directly from the USD primitive or from USD primitive’s ancestor.

• Returns the element size of the primvar directly from the USD primitive or from USD primitive’s ancestor.

• Returns the index array of an indexed primvar directly on the USD primitive or on USD primitive’s ancestor.

• Returns the element size of the primvar directly on the USD primitive or on USD primitive’s ancestor.

• Returns the length of the array primvar directly on the USD primitive or on USD primitive’s ancestor.

• Returns the names of the primvars available directly on the given USD primitive or on USD primitive’s ancestor.

• Returns the tuple size of the primvar directly on the USD primitive or on USD primitive’s ancestor.

• Returns the time codes at which the primvar values are authored directly on the given primitive or on its ancestor.

• Returns the name of the primvar type found on the given primitive or its ancestor.

• Checks if the primitive is abstract.

• Checks if the primitive is active.

• Checks if the attribute is an array.

• Checks if there is an array primvar directly on the USD primitive or on USD primitive’s ancestor.

• Checks if the given metadata is an array.

• Checks if there is an array primvar directly on the USD primitive.

• Checks if the primitive has an attribute by the given name.

• Checks if the collection exists.

• Checks if the path is a valid collection path.

• Checks if there is an indexed primvar directly on the USD primitive or on USD primitive’s ancestor.

• Checks if there is an indexed primvar directly on the USD primitive.

• Checks if the primitive is an instance.

• Checks if the primitive or its ancestor has a primvar of the given name.

• Checks if the primitive is of a given kind.

• Checks if the primitive has metadata by the given name.

• Checks if the primitive is a model.

• Checks if the path refers to a valid primitive.

• Checks if the primitive has a primvar of the given name.

• Checks if the primitive has a relationship by the given name.

• Checks if the stage is valid.

• Checks if the primitive transform is reset

• Checks if the primitive is of a given type.

• Checks if the primitive is visible.

• Returns the primitive’s kind.

• Obtains the primitive’s local transform

• Constructs an attribute path from a primitive path and an attribute name.

• Constructs a collection path from a primitive path and a collection name.

• Constructs an property path from a primitive path and an property name.

• Constructs an relationship path from a primitive path and a relationship name.

• Forces a string to conform to the rules for naming USD primitives.

• Forces a string to conform to the rules for paths to USD primitives.

• Reads the value of metadata from the USD object.

• Reads the value of an element from the array metadata.

• Returns the length of the array metadata.

• Returns the names of the metadata available on the object.

• Returns the name of the primitive.

• Returns the path of the primitive’s parent.

• Sets two vectors to the minimum and maximum corners of the bounding box for the given instance inside point instancer.

• Returns the center of the bounding box for the instance inside a point instancer primitive.

• Returns the maximum position of the bounding box for the instance inside a point instancer primitive.

• Returns the minimum position of the bounding box for the instance inside a point instancer primitive.

• Returns the size of the bounding box for the instance inside a point instancer primitive.

• Returns the relative position of the point given with respect to the bounding box of the geometry.

• Obtains the transform for the given point instance

• Reads the value of a primvar directly from the USD primitive.

• Returns the namespaced attribute name for the given primvar.

• Reads the value of an element from the array primvar directly from the USD primitive.

• Returns the element size of the primvar directly from the USD primitive.

• Returns the index array of an indexed primvar directly on the USD primitive.

• Returns the element size of the primvar directly on the USD primitive.

• Returns the length of the array primvar directly on the USD primitive.

• Returns the names of the primvars available on the given USD primitive.

• Returns the tuple size of the primvar directly on the USD primitive.

• Returns the time codes at which the primvar values are authored directly on the given primitive.

• Returns the name of the primvar type found on the given primitive.

• Returns the primitive’s purpose.

• Obtains the relationship forwarded targets.

• Returns the names of the relationships available on the primitive.

• Obtains the relationship targets.

• Returns the relative position of the point given with respect to the bounding box of the geometry.

• Remove a target from the primitive’s relationship

• Sets the primitive active state.

• Sets the value of an attribute.

• Sets the value of an element in an array attribute.

• Sets the excludes list on the collection

• Sets the expansion rule on the collection

• Sets the includes list on the collection

• Sets the primitive’s draw mode.

• Sets the primitive’s kind.

• Sets the value of an metadata.

• Sets the value of an element in an array metadata.

• Sets the value of a primvar.

• Sets the value of an element in an array primvar.

• Sets the element size of a primvar.

• Sets the indices for the given primvar.

• Sets the interpolation of a primvar.

• Sets the primitive’s purpose.

• Sets the targets in the primitive’s relationship

• Sets the primitive’s transform order

• Sets/clears the primitive’s transform reset flag

• Sets the selected variant in the given variant set.

• Configures the primitive to be visible, invisible, or to inherit visibility from the parent.

• Makes the primitive visible or invisible.

• Returns the primitive’s specifier.

• Constructs a full name of a transform operation

• Obtains the primitive’s transform order

• Extracts the transform operation suffix from the full name

• Infers the transform operation type from the full name

• Returns the name of the primitive’s type.

• Constructs a unique full name of a transform operation

• Returns the variants belonging to the given variant set on a primitive.

• Returns the currently selected variant in a given variant set.

• Returns the variant sets available on a primitive.

• Obtains the primitive’s world transform

## Utility ¶

• Returns 1 if the VEX assertions are enabled (see HOUDINI_VEX_ASSERT) or 0 if assertions are disabled. Used the implement the assert macro.

• An efficient way of extracting the components of a vector or matrix into float variables.

• Reports a custom runtime VEX error.

• Extracts a single component of a vector type, matrix type, or array.

• Parameters in VEX can be overridden by geometry attributes (if the attributes exist on the surface being rendered).

• Check whether a VEX variable is varying or uniform.

• Ends a long operation.

• Start a long operation.

• Reversibly packs an integer into a finite, non-denormal float.

• Prints a message only once, even in a loop.

• Prints values to the console which started the VEX program.

• Evaluates a Houdini-style ramp at a specific location.

• Packs a set of arrays into a string-encoded ramp.

• Unpacks a string-encoded ramp into a set of arrays.

• Returns one of two parameters based on a conditional.

• Creates a new value based on its arguments, such as creating a vector from its components.

• Sets a single component of a vector or matrix type, or an item in an array.

• Yields processing for a certain number of milliseconds.

• Rearranges the components of a vector.

• Reverses the packing of pack_inttosafefloat to get back the original integer.

• Reports a custom runtime VEX warning.

## volume ¶

• Returns the volume of the microvoxel containing a variable such as P.

• Samples the volume primitive’s value.

• Samples the volume primitive’s value.

• Calculates the volume primitive’s gradient.

• Gets the value of a specific voxel.

• Gets the active setting of a specific voxel.

• Gets the integer value of a specific voxel.

• Gets the index of the bottom left of a volume primitive.

• Gets the vector4 value of a specific voxel.

• Converts a volume voxel index into a position.

• Gets the vector2 value of a specific voxel.

• Gets the vector value of a specific voxel.

• Converts a position into a volume voxel index.

• Gets the resolution of a volume primitive.

• Samples the volume primitive’s float value.

• Samples the volume primitive’s integer value.

• Samples the volume primitive’s vector4 value.

• Samples the volume primitive’s vector2 value.

• Samples the volume primitive’s vector value.

• Samples the volume primitive’s value.

• Samples the volume primitive’s value.

• Gets the typeid of the data of a volume or VDB primitive.

• Computes the approximate diameter of a voxel.

## weightarray ¶

• Blends an existing name/weight array pair with another array or named item.

• Initializes an index array and weight array pair with a single named entry.

• Normalizes an array of floats so it sums to 1.0.

• Discards any weights below a threshold from an name/weight array pair.