/PhysicsEngines/Jitter/JitterDatatypesMapping.cs
C# | 122 lines | 74 code | 7 blank | 41 comment | 0 complexity | fd2c9ef5f62c05ba0b9328fdce8cb911 MD5 | raw file
Possible License(s): Apache-2.0
- using Delta.Utilities.Datatypes;
- using Jitter.LinearMath;
-
- namespace Delta.PhysicsEngines.Jitter
- {
- /// <summary>
- /// Implements mapping between Jitter data types and Delta engine data types.
- ///
- /// Sadly we can't do all the nice union stuff we do with XNA, because we
- /// don't have Jitter referenced in the datatypes.
- /// </summary>
- internal static class JitterDatatypesMapping
- {
- #region Convert (Static)
- /// <summary>
- /// Perform conversion between DeltaEngine Matrix and Jitter Matrix.
- /// </summary>
- /// <param name="matrix">The DeltaEngine matrix.</param>
- /// <returns>The converted Jitter matrix.</returns>
- public static JMatrix Convert(ref Matrix matrix)
- {
- JMatrix result;
- result.M11 = matrix.M11;
- result.M12 = matrix.M12;
- result.M13 = matrix.M13;
- result.M21 = matrix.M21;
- result.M22 = matrix.M22;
- result.M23 = matrix.M23;
- result.M31 = matrix.M31;
- result.M32 = matrix.M32;
- result.M33 = matrix.M33;
- return result;
- }
-
- /// <summary>
- /// Convert a Jitter matrix into a Delta Matrix.
- /// </summary>
- /// <param name="matrix">The Jitter matrix to convert.</param>
- /// <param name="result">The converterd delta matrix.</param>
- public static void Convert(JMatrix matrix, ref Matrix result)
- {
- result.M11 = matrix.M11;
- result.M12 = matrix.M12;
- result.M13 = matrix.M13;
- result.M21 = matrix.M21;
- result.M22 = matrix.M22;
- result.M23 = matrix.M23;
- result.M31 = matrix.M31;
- result.M32 = matrix.M32;
- result.M33 = matrix.M33;
- }
-
- /// <summary>
- /// Convert DeltaEngine vector to Jitter vector.
- /// </summary>
- /// <param name="vector">DeltaEngine vector.</param>
- /// <returns>The converted Jitter vector.</returns>
- public static JVector Convert(ref Vector vector)
- {
- JVector result;
- result.X = vector.X;
- result.Y = vector.Y;
- result.Z = vector.Z;
- return result;
- }
-
- /// <summary>
- /// Convert DeltaEngine vector to Jitter vector.
- /// </summary>
- /// <param name="vector">DeltaEngine vector.</param>
- /// <param name="result">The converted Jitter vector.</param>
- public static void Convert(ref Vector vector, out JVector result)
- {
- result.X = vector.X;
- result.Y = vector.Y;
- result.Z = vector.Z;
- }
- #endregion
-
- #region ConvertSlow (Static)
- /// <summary>
- /// Convert DeltaEngine vector to Jitter vector.
- /// </summary>
- /// <param name="vector">DeltaEngine vector.</param>
- /// <returns>The converted Jitter vector.</returns>
- public static JVector ConvertSlow(Vector vector)
- {
- JVector result;
- result.X = vector.X;
- result.Y = vector.Y;
- result.Z = vector.Z;
- return result;
- }
- #endregion
-
- #region Convert (Static)
- /// <summary>
- /// Convert Jitter vector to DeltaEngine vector.
- /// </summary>
- /// <param name="vector">Jitter vector.</param>
- /// <param name="result">The converted Jitter vector.</param>
- public static void Convert(JVector vector, out Vector result)
- {
- result.X = vector.X;
- result.Y = vector.Y;
- result.Z = vector.Z;
- }
-
- /// <summary>
- /// Convert Jitter vector to DeltaEngine vector.
- /// </summary>
- /// <param name="vector">Jitter vector.</param>
- /// <param name="result">The converted Jitter vector.</param>
- public static void Convert(ref JVector vector, out Vector result)
- {
- result.X = vector.X;
- result.Y = vector.Y;
- result.Z = vector.Z;
- }
- #endregion
- }
- }