Skip to content

HzMath

static class · namespace Hazel

public static class HzMath

Fields

Field Description
public const float EPSILON = 1e-6f
public const float MIN_NORM = 1e-9f
public const float PI = 3.14159265358979323846f
public const float TWO_PI = 2.0f * PI

Methods

AxisAngleFromQuat(Quaternion, float)

static

public static Vector3 AxisAngleFromQuat(Quaternion q, float eps = EPSILON)

Clamp(T, T, T)

static

public static T Clamp<T>(T value, T min, T max) where T : IComparable<T>

CombineFrameTransforms(Vector3, Quaternion, Vector3, Quaternion, Vector3, Quaternion)

static

public static void CombineFrameTransforms(in Vector3 t01, in Quaternion q01, in Vector3 t12, in Quaternion q12, out Vector3 outPos, out Quaternion outQuat)

ComputeAngularVelocity(Quaternion, Quaternion, float)

static

public static Vector3 ComputeAngularVelocity(in Quaternion currentQuat, in Quaternion previousQuat, float deltaTime)

ComputeLinearVelocity(Vector3, Vector3, float)

static

public static Vector3 ComputeLinearVelocity(in Vector3 currentPos, in Vector3 previousPos, float deltaTime)

MatrixFromQuat6D(Quaternion, float[], int)

static

public static void MatrixFromQuat6D(in Quaternion q, float[] outArr, int startIndex = 0)

NormalizeAngle(float)

static

public static float NormalizeAngle(float angle)

QuatApply(Quaternion, Vector3)

static

public static Vector3 QuatApply(in Quaternion q, in Vector3 v)

QuatApplyInverse(Quaternion, Vector3)

static

public static Vector3 QuatApplyInverse(in Quaternion q, in Vector3 v)

QuatConjugate(Quaternion)

static

public static Quaternion QuatConjugate(in Quaternion q)

QuatInverse(Quaternion)

static

public static Quaternion QuatInverse(in Quaternion q)

QuatMultiply(Quaternion, Quaternion)

static

public static Quaternion QuatMultiply(in Quaternion q1, in Quaternion q2)

SampleGaussian(System.Random, float)

static

public static float SampleGaussian(System.Random random, float stdDev)

SubtractFrameTransforms(Vector3, Quaternion, Vector3, Quaternion, Vector3, Quaternion)

static

public static void SubtractFrameTransforms(in Vector3 t01, in Quaternion q01, in Vector3 t02, in Quaternion q02, out Vector3 outPos, out Quaternion outQuat)

Source: Hazel/Learn/Utilities/HzMath.cs