// MIT License - Copyright (C) The Mono.Xna Team // This file is subject to the terms and conditions defined in // file 'LICENSE.txt', which is part of this source code package. namespace CommonLang.Geometry { /// <summary> /// Defines how the <see cref="Curve"/> value is determined for position before first point or after the end point on the <see cref="Curve"/>. /// </summary> public enum CurveLoopType { /// <summary> /// The value of <see cref="Curve"/> will be evaluated as first point for positions before the beginning and end point for positions after the end. /// </summary> Constant, /// <summary> /// The positions will wrap around from the end to beginning of the <see cref="Curve"/> for determined the value. /// </summary> Cycle, /// <summary> /// The positions will wrap around from the end to beginning of the <see cref="Curve"/>. /// The value will be offset by the difference between the values of first and end <see cref="CurveKey"/> multiplied by the wrap amount. /// If the position is before the beginning of the <see cref="Curve"/> the difference will be subtracted from its value; otherwise the difference will be added. /// </summary> CycleOffset, /// <summary> /// The value at the end of the <see cref="Curve"/> act as an offset from the same side of the <see cref="Curve"/> toward the opposite side. /// </summary> Oscillate, /// <summary> /// The linear interpolation will be performed for determined the value. /// </summary> Linear } }