本文整理汇总了C#中UnityEngine.Quaternion.Inverse方法的典型用法代码示例。如果您正苦于以下问题:C# Quaternion.Inverse方法的具体用法?C# Quaternion.Inverse怎么用?C# Quaternion.Inverse使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UnityEngine.Quaternion
的用法示例。
在下文中一共展示了Quaternion.Inverse方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Project
/// <summary>
/// Project this point into a plane defined by the given position and rotation.
/// </summary>
/// <param name="v"></param>
/// <param name="position">Reference position of the plane.</param>
/// <param name="rotation">Rotation of the plane.</param>
/// <returns>The point's projection into the plane.</returns>
public static Vector3 Project(this Vector3 v, Vector3 position, Quaternion rotation)
{
var localv = rotation.Inverse() * v;
var localPos = rotation.Inverse() * position;
localv.z = localPos.z;
return rotation * localv;
}
示例2: Rotate
public override void Rotate(Quaternion rotate)
{
// Apply the inverse rotation to the part itself. Don't involve the parent.
rotate = rotate.Inverse();
part.transform.Translate(childToParent.position);
part.transform.rotation = rotate * part.transform.rotation;
part.transform.Translate(-childToParent.position);
}
示例3: InverseTransformPoint
/// <summary>
/// Change a point's base to a reference's local space.
/// </summary>
/// <param name="point">Point to transform.</param>
/// <param name="refPoint">World space centre of new base.</param>
/// <param name="refRotation">World space rotation of new base.</param>
/// <returns>The position of the point in the new base.</returns>
public static Vector3 InverseTransformPoint(this Vector3 point, Vector3 refPoint, Quaternion refRotation)
{
return point.RotateAround(refPoint, refRotation.Inverse()) - refPoint;
}