Houdini 21.0 Nodes APEX nodes

transform::PolarDecompose<T>

Decomposes a matrix into rotation and stretch matrices using polar decomposition.

On this page
Since 20.0

Performs polar decomposition of matrix m into matrices rigid and stretch such that m = stretch * rigid. rigid is an orthogonal matrix that represents the closest orientation to m, and stretch is a positive semi-definite matrix that is composed of additional scaling and shearing.

Note

If matrix m has a reflection, the rigid matrix will also contain a reflection.

Inputs

m: Matrix3, Matrix4

The input matrix to decompose.

Outputs

rigid: Matrix3, Matrix4

An orthogonal rotation matrix representing the closest orientation to the input matrix m.

stretch: Matrix3

A stretch matrix composed of the additional scaling and shearing components left over once the rigid rotation matrix has been computed.

success: Bool

Returns True if the decomposition is successful. The decomposition fails if the input matrix is singular.

See also

APEX nodes