/// <summary> /// Converts the angle vector to euler rotation in radians. /// </summary> /// <returns></returns> public Vector3 ToRadians() { return(new Vector3(RotationConverter.AngleToRadians(X), RotationConverter.AngleToRadians(Y), RotationConverter.AngleToRadians(Z))); }
/// <summary> /// Converts the angle vector into a rotation matrix. /// </summary> /// <returns></returns> public Matrix4x4 ToRotationMatrix() { return(Matrix4x4.CreateRotationX(RotationConverter.AngleToRadians(X)) * Matrix4x4.CreateRotationY(RotationConverter.AngleToRadians(Y)) * Matrix4x4.CreateRotationZ(RotationConverter.AngleToRadians(Z))); }
/// <summary> /// Converts the angle vector into a rotation matrix around an origin. /// </summary> /// <param name="origin"></param> /// <returns></returns> public Matrix4x4 ToRotationMatrixZXY(Vector3 origin) { return(Matrix4x4.CreateRotationZ(RotationConverter.AngleToRadians(X), origin) * Matrix4x4.CreateRotationX(RotationConverter.AngleToRadians(Y), origin) * Matrix4x4.CreateRotationY(RotationConverter.AngleToRadians(Z), origin)); }