Click or drag to resize

TransformDecomposeSymmetric Method

A Symmetric linear transformation can be decomposed A = Q * Diag * Q ^ T, where Diag is a diagonal transformation. Diag[i][i] is an eigenvalue of A and the i-th column of Q is a corresponding unit length eigenvector. Note, this transformation must be Linear and Symmetric.

Namespace:  Rhino.Geometry
Assembly:  RhinoCommon (in RhinoCommon.dll)
Since: 6.12
Syntax
public bool DecomposeSymmetric(
	out Transform matrix,
	out Vector3d diagonal
)

Parameters

matrix
Type: Rhino.GeometryTransform
An orthonormal matrix of eigenvectors (Q).
diagonal
Type: Rhino.GeometryVector3d
A vector of eigenvalues.

Return Value

Type: Boolean
true if successful, false otherwise.
Remarks
If success, this== Q*Diagonal(diagonal) * QT, where QT == Q.Transpose(). If L.IsLinear and LT==L.Transpose then LT*L is symmetric and is a common source of symmetric transformations.
See Also