/// <summary> /// Creates a rotation matrix around an arbitrary axis (Eulers Theorem). /// </summary> /// <param name="c"> Cosine of the angle of the rotation.</param> /// <param name="s"> Sine of the angle of the rotation.</param> /// <param name="axis"><see cref="Vector3"/> object that represents axis of rotation.</param> /// <param name="t"> Optional translation vector.</param> /// <returns>A new rotation matrix around an arbitrary axis.</returns> public static Matrix34 CreateRotationAroundAxis(float c, float s, Vector3 axis, Vector3 t = default(Vector3)) { var matrix = new Matrix34(); matrix.SetRotationAroundAxis(c, s, axis, t); return(matrix); }
/// <summary> /// Creates a rotation matrix around an arbitrary axis (Eulers Theorem). /// </summary> /// <param name="rot"> /// <see cref="Vector3"/> object which length represents an angle of rotation and which /// direction represents an axis of rotation. /// </param> /// <param name="t"> Optional translation vector.</param> /// <returns>A new rotation matrix.</returns> public static Matrix34 CreateRotationAroundAxis(Vector3 rot, Vector3 t = default(Vector3)) { var matrix = new Matrix34(); matrix.SetRotationAroundAxis(rot, t); return(matrix); }