factorRigidWithSignedScale Method

Test if the instance is the product of a rigid matrix and a signed scale, and return both.

  • Specifically, this is a test of whether the instance rows and columns are pairwise perpendicular and have equal length. If so, the scale factor is this length, or its negative if the instance is a mirror, and dividing the columns by this scale factor produces a rigid matrix (a rotation).

factorRigidWithSignedScale(result?: Matrix3d): undefined | { rigidAxes: Matrix3d, scale: number }

@returns the factorization { rigidAxes, scale } where rigidAxes is the instance matrix with scale factor removed, or undefined if the factorization failed.

Parameter Type Description
result Matrix3d optional pre-allocated object to populate and return

Returns - undefined | { rigidAxes: Matrix3d, scale: number }

the factorization { rigidAxes, scale } where rigidAxes is the instance matrix with scale factor removed, or undefined if the factorization failed.

Defined in

Last Updated: 14 November, 2024