Orthonormalize
Computes the orthonormalized matrix from an input matrix or array of matrices. In practice, this involves treating the columns (or rows, depending on whether column-major or row-major semantics are being utilized for matrix descriptions - in mathematics the former is often used, while in computer graphics the latter tends to be preferred) of each input matrix as independent vectors that span some N-dimensional space (N being the number of column or row vectors in the matrix) and finding another set of mutually-perpendicular vectors that span the same space before normalizing each one (hence the term “orthonormal”; also see the so-called “Gram-Schmidt Process” that details exactly how one can go about performing this computation); these new sets of vectors can then be combined to form the “orthonormal” versions of each input matrix.
Installation
To use this node enable omni.graph.nodes in the Extension Manager.
Inputs
Name |
Type |
Descripton |
Default |
---|---|---|---|
Matrix (inputs:matrix) |
|
Input matrix or array of matrices to orthonormalize. |
None |
Outputs
Name |
Type |
Descripton |
Default |
---|---|---|---|
Result (outputs:result) |
|
The orthonormalized matrix or array of matrices (with preserved typing). |
None |
Metadata
Name |
Value |
---|---|
Unique ID |
omni.graph.nodes.Orthonormalize |
Version |
1 |
Extension |
omni.graph.nodes |
Has State? |
False |
Implementation Language |
C++ |
Default Memory Type |
cpu |
Generated Code Exclusions |
None |
uiName |
Orthonormalize |
Categories |
math:operator |
Generated Class Name |
OgnOrthonormalizeDatabase |
Python Module |
omni.graph.nodes |