public static void AngleAxis(Vector3 origin, float angle, Vector3 axis, Quaternion startRotation, BaseVectorDirection builtinDirection = default(BaseVectorDirection), float halfAxisLenght = 3, bool showVectorLabel = !default(bool)) { Vector3 direction = ColorsAndDirections.GetBaseDirection(builtinDirection); AngleAxisRaw(origin, angle, axis, startRotation, builtinDirection, halfAxisLenght, direction, showVectorLabel); }
public static void RotateTowards(Vector3 origin, Quaternion from, Quaternion to, BaseVectorDirection builtinDirection = default(BaseVectorDirection), float lenght = lenght6, bool showVectorLabel = !default(bool)) { Vector3 direction = ColorsAndDirections.GetBaseDirection(builtinDirection); Slerp(origin, from, to, builtinDirection, lenght, direction, showVectorLabel, "from", "to"); }
/// <summary> /// Visualizes the rotate towards with posibility to show one of default axis. /// </summary> /// <param name="origin">Origin of rotating object</param> /// <param name="current">Current direction of rotating object.</param> /// <param name="target">Target direction.</param> /// <param name="lenght">Lenght of vectors.</param> /// <param name="showPlane">If set to <c>true</c> show plane in which are current and target direction are.</param> public static void VisualizeRotateTowards(Vector3 origin, Vector3 current, Vector3 target, float lenght = 6, bool showPlane = default(bool)) { Vector3 direction = ColorsAndDirections.GetBaseDirection(default(BaseVectorDirection)); VisualizeRotateTowardsRaw(origin, current, target, default(BaseVectorDirection), lenght, current); }
public static void Slerp(Vector3 origin, Quaternion startRotation, Quaternion endRotation, BaseVectorDirection builtinDirection = default(BaseVectorDirection), float lenght = lenght6, bool showVectorLabel = !default(bool)) { Vector3 direction = ColorsAndDirections.GetBaseDirection(builtinDirection); InterpolateQuaternions(Quaternion.Slerp, origin, startRotation, endRotation, builtinDirection, lenght, direction, showVectorLabel); }
public static void SlerpUnclamped(Vector3 origin, Quaternion startRotation, Quaternion endRotation, float howFuther, BaseVectorDirection builtinDirection = default(BaseVectorDirection), float lenght = lenght6, bool showVectorLabel = !default(bool)) { Vector3 direction = ColorsAndDirections.GetBaseDirection(builtinDirection); SlerpUnclampedRaw(origin, startRotation, endRotation, howFuther, builtinDirection, lenght, direction, showVectorLabel); }
public static void Angle(Vector3 origin, Quaternion startRotation, Quaternion endRotation, BaseVectorDirection builtinDirection = default(BaseVectorDirection), float lenght = lenght6, bool showVectorLabel = !default(bool)) { Vector3 direction = ColorsAndDirections.GetBaseDirection(builtinDirection); InterpolateQuaternions(Quaternion.Slerp, origin, startRotation, endRotation, builtinDirection, lenght, direction, showVectorLabel); GizmosForVector.ShowLabel(origin, "angle: " + System.Math.Round(Quaternion.Angle(startRotation, endRotation), 0) + "\xB0", new Color32(127, 0, 255, 255)); }
public static void FromToRotation(Vector3 origin, Vector3 fromDirection, Vector3 toDirection, float lenght = lenght6, bool showVectorLabel = !default(bool)) { Quaternion startRotation = Quaternion.FromToRotation(Vector3.right, fromDirection); Quaternion endRotation = Quaternion.FromToRotation(Vector3.right, toDirection); //Slerp (origin, startRotation, endRotation, BaseVectorDirection.right, lenght, showVectorLabel); Vector3 direction = ColorsAndDirections.GetBaseDirection(BaseVectorDirection.right); InterpolateQuaternions(Quaternion.Slerp, origin, startRotation, endRotation, BaseVectorDirection.right, lenght, direction, showVectorLabel); }
public static void ToAngleAxis(Vector3 origin, Quaternion rotation, BaseVectorDirection builtinDirection = default(BaseVectorDirection), float halfAxisLenght = 3, bool showVectorLabel = !default(bool)) { float angle; Vector3 axis; rotation.ToAngleAxis(out angle, out axis); Vector3 direction = ColorsAndDirections.GetBaseDirection(builtinDirection); Quaternion startRotation = Quaternion.FromToRotation(Vector3.right, direction); AngleAxisRaw(origin, angle, axis, startRotation, builtinDirection, halfAxisLenght, Vector3.right, showVectorLabel); }