CurveLoopType.cs 1.6 KB

1234567891011121314151617181920212223242526272829303132333435
  1. // MIT License - Copyright (C) The Mono.Xna Team
  2. // This file is subject to the terms and conditions defined in
  3. // file 'LICENSE.txt', which is part of this source code package.
  4. namespace CommonLang.Geometry
  5. {
  6. /// <summary>
  7. /// Defines how the <see cref="Curve"/> value is determined for position before first point or after the end point on the <see cref="Curve"/>.
  8. /// </summary>
  9. public enum CurveLoopType
  10. {
  11. /// <summary>
  12. /// 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.
  13. /// </summary>
  14. Constant,
  15. /// <summary>
  16. /// The positions will wrap around from the end to beginning of the <see cref="Curve"/> for determined the value.
  17. /// </summary>
  18. Cycle,
  19. /// <summary>
  20. /// The positions will wrap around from the end to beginning of the <see cref="Curve"/>.
  21. /// The value will be offset by the difference between the values of first and end <see cref="CurveKey"/> multiplied by the wrap amount.
  22. /// 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.
  23. /// </summary>
  24. CycleOffset,
  25. /// <summary>
  26. /// 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.
  27. /// </summary>
  28. Oscillate,
  29. /// <summary>
  30. /// The linear interpolation will be performed for determined the value.
  31. /// </summary>
  32. Linear
  33. }
  34. }