Version: Unity 6.7 Alpha (6000.7)
LanguageEnglish
  • C#

PhysicsMath.TryGetPlaneMatrix2D

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Declaration

public static bool TryGetPlaneMatrix2D(Matrix4x4 matrix, TransformPlane transformPlane, out Matrix4x4 planeMatrix);

Parameters

Parameter Description
matrix The matrix to build from.
transformPlane The transform plane to use.
planeMatrix The resulting matrix, or the default matrix if this returns false.

Returns

bool Whether a valid matrix was calculated. Returns false when the matrix has an in-plane axis too small to build from.

Description

Try to get a matrix suitable for use with PhysicsMath.GetRelativeMatrix2D or PhysicsMath.GetRelativePose2D from the specified matrix, ignoring its scale on the transform plane's out-of-plane axis.

A matrix whose out-of-plane scale is at or near zero, such as one built from flattened 2D data, is rebuilt with that axis treated as one; left as zero it makes the whole matrix singular, and inverting it later would produce a NaN result. A negative out-of-plane scale is treated the same way, since its sign and magnitude have no meaning in 2D and left as-is it turns the extracted rotation into NaN instead.