/// <summary> /// Calculates the final position to apply based on the given target <see cref="Transform"/>. /// </summary> /// <param name="givenSource">The source <see cref="TransformData"/> that will be used to determine the position transformation that is to be applied.</param> /// <param name="givenTarget">The target <see cref="TransformData"/> that will have the position transformations applied to.</param> protected virtual void SetPosition(TransformData givenSource, TransformData givenTarget) { finalPosition = givenTarget.Position; if (applyTransformations.HasFlag(TransformProperties.Position)) { finalPosition = CalculatePosition(givenTarget, givenSource.Position, givenSource.Rotation, finalScale); } }