using FishNet.Documenting;
using UnityEngine;
namespace FishNet.Utility.Extension
{
[APIExclude]
public static class TransformFN
{
///
/// Sets the offset values of target from a transform.
///
/// Position offset result.
/// Rotation offset result.
public static void SetTransformOffsets(this Transform t, Transform target, ref Vector3 pos, ref Quaternion rot)
{
if (target == null)
return;
pos = (t.position - target.position);
rot = (t.rotation * Quaternion.Inverse(target.rotation));
}
///
/// Sets local position and rotation for a transform.
///
public static void SetLocalPositionAndRotation(this Transform t, Vector3 pos, Quaternion rot)
{
t.localPosition = pos;
t.localRotation = rot;
}
///
/// Sets local position, rotation, and scale for a transform.
///
public static void SetLocalPositionRotationAndScale(this Transform t, Vector3 pos, Quaternion rot, Vector3 scale)
{
t.localPosition = pos;
t.localRotation = rot;
t.localScale = scale;
}
}
}