diff --git a/Source/OpenTK/Math/Matrix3d.cs b/Source/OpenTK/Math/Matrix3d.cs index 21aa8c9e..d0ed5ba6 100644 --- a/Source/OpenTK/Math/Matrix3d.cs +++ b/Source/OpenTK/Math/Matrix3d.cs @@ -192,7 +192,10 @@ namespace OpenTK #region Instance #region public void Invert() - + + /// + /// Converts this instance into its inverse. + /// public void Invert() { this = Matrix3d.Invert(this); @@ -201,7 +204,10 @@ namespace OpenTK #endregion #region public void Transpose() - + + /// + /// Converts this instance into its transpose. + /// public void Transpose() { this = Matrix3d.Transpose(this); @@ -214,7 +220,13 @@ namespace OpenTK #region Static #region CreateFromAxisAngle - + + /// + /// Build a rotation matrix from the specified axis/angle rotation. + /// + /// The axis to rotate about. + /// Angle in radians to rotate counter-clockwise (looking in the direction of the given axis). + /// A matrix instance. public static void CreateFromAxisAngle(Vector3d axis, double angle, out Matrix3d result) { //normalize and create a local copy of the vector. @@ -248,7 +260,13 @@ namespace OpenTK result.Row2.Y = tYZ + sinX; result.Row2.Z = tZZ + cos; } - + + /// + /// Build a rotation matrix from the specified axis/angle rotation. + /// + /// The axis to rotate about. + /// Angle in radians to rotate counter-clockwise (looking in the direction of the given axis). + /// A matrix instance. public static Matrix3d CreateFromAxisAngle(Vector3d axis, double angle) { Matrix3d result; @@ -259,7 +277,12 @@ namespace OpenTK #endregion #region CreateFromQuaternion - + + /// + /// Build a rotation matrix from the specified quaternion. + /// + /// Quaternion to translate. + /// Matrix result. public static void CreateFromQuaternion(ref Quaterniond q, out Matrix3d result) { Vector3d axis; @@ -267,7 +290,12 @@ namespace OpenTK q.ToAxisAngle(out axis, out angle); CreateFromAxisAngle(axis, angle, out result); } - + + /// + /// Build a rotation matrix from the specified quaternion. + /// + /// Quaternion to translate. + /// A matrix instance. public static Matrix3d CreateFromQuaternion(Quaterniond q) { Matrix3d result; @@ -278,7 +306,12 @@ namespace OpenTK #endregion #region CreateRotation[XYZ] - + + /// + /// Builds a rotation matrix for a rotation around the x-axis. + /// + /// The counter-clockwise angle in radians. + /// The resulting Matrix3d instance. public static void CreateRotationX(double angle, out Matrix3d result) { double cos = System.Math.Cos(angle); @@ -290,14 +323,24 @@ namespace OpenTK result.Row2.Y = -sin; result.Row2.Z = cos; } - + + /// + /// Builds a rotation matrix for a rotation around the x-axis. + /// + /// The counter-clockwise angle in radians. + /// The resulting Matrix3d instance. public static Matrix3d CreateRotationX(double angle) { Matrix3d result; CreateRotationX(angle, out result); return result; } - + + /// + /// Builds a rotation matrix for a rotation around the y-axis. + /// + /// The counter-clockwise angle in radians. + /// The resulting Matrix3d instance. public static void CreateRotationY(double angle, out Matrix3d result) { double cos = System.Math.Cos(angle); @@ -309,14 +352,24 @@ namespace OpenTK result.Row2.X = sin; result.Row2.Z = cos; } - + + /// + /// Builds a rotation matrix for a rotation around the y-axis. + /// + /// The counter-clockwise angle in radians. + /// The resulting Matrix3d instance. public static Matrix3d CreateRotationY(double angle) { Matrix3d result; CreateRotationY(angle, out result); return result; } - + + /// + /// Builds a rotation matrix for a rotation around the z-axis. + /// + /// The counter-clockwise angle in radians. + /// The resulting Matrix3d instance. public static void CreateRotationZ(double angle, out Matrix3d result) { double cos = System.Math.Cos(angle); @@ -328,7 +381,12 @@ namespace OpenTK result.Row1.X = -sin; result.Row1.Y = cos; } - + + /// + /// Builds a rotation matrix for a rotation around the z-axis. + /// + /// The counter-clockwise angle in radians. + /// The resulting Matrix3d instance. public static Matrix3d CreateRotationZ(double angle) { Matrix3d result; @@ -422,14 +480,26 @@ namespace OpenTK #endregion #region Multiply Functions - + + /// + /// Multiplies two instances. + /// + /// The left operand of the multiplication. + /// The right operand of the multiplication. + /// A new instance that is the result of the multiplication public static Matrix3d Mult(Matrix3d left, Matrix3d right) { Matrix3d result; Mult(ref left, ref right, out result); return result; } - + + /// + /// Multiplies two instances. + /// + /// The left operand of the multiplication. + /// The right operand of the multiplication. + /// A new instance that is the result of the multiplication public static void Mult(ref Matrix3d left, ref Matrix3d right, out Matrix3d result) { double lM11 = left.Row0.X, lM12 = left.Row0.Y, lM13 = left.Row0.Z, @@ -578,12 +648,22 @@ namespace OpenTK #endregion #region Transpose - + + /// + /// Calculate the transpose of the given matrix + /// + /// The matrix to transpose + /// The transpose of the given matrix public static Matrix3d Transpose(Matrix3d mat) { return new Matrix3d(mat.Column0, mat.Column1, mat.Column2); } - + + /// + /// Calculate the transpose of the given matrix + /// + /// The matrix to transpose + /// The result of the calculation public static void Transpose(ref Matrix3d mat, out Matrix3d result) { result.Row0 = mat.Column0; @@ -596,17 +676,35 @@ namespace OpenTK #endregion #region Operators - + + /// + /// Matrix multiplication + /// + /// left-hand operand + /// right-hand operand + /// A new Matrix3d which holds the result of the multiplication public static Matrix3d operator *(Matrix3d left, Matrix3d right) { return Matrix3d.Mult(left, right); } - + + /// + /// Compares two instances for equality. + /// + /// The first instance. + /// The second instance. + /// True, if left equals right; false otherwise. public static bool operator ==(Matrix3d left, Matrix3d right) { return left.Equals(right); } - + + /// + /// Compares two instances for inequality. + /// + /// The first instance. + /// The second instance. + /// True, if left does not equal right; false otherwise. public static bool operator !=(Matrix3d left, Matrix3d right) { return !left.Equals(right); @@ -664,7 +762,10 @@ namespace OpenTK #endregion #region IEquatable Members - + + /// Indicates whether the current matrix is equal to another matrix. + /// A matrix to compare with this matrix. + /// true if the current matrix is equal to the matrix parameter; otherwise, false. public bool Equals(Matrix3d other) { return diff --git a/Source/OpenTK/Math/Matrix4d.cs b/Source/OpenTK/Math/Matrix4d.cs index 7653f016..34896c93 100644 --- a/Source/OpenTK/Math/Matrix4d.cs +++ b/Source/OpenTK/Math/Matrix4d.cs @@ -336,7 +336,7 @@ namespace OpenTK /// Builds a rotation matrix for a rotation around the x-axis. /// /// The counter-clockwise angle in radians. - /// The resulting Matrix4 instance. + /// The resulting Matrix4d instance. public static void CreateRotationX(double angle, out Matrix4d result) { double cos = System.Math.Cos(angle); @@ -352,7 +352,7 @@ namespace OpenTK /// Builds a rotation matrix for a rotation around the x-axis. /// /// The counter-clockwise angle in radians. - /// The resulting Matrix4 instance. + /// The resulting Matrix4d instance. public static Matrix4d CreateRotationX(double angle) { Matrix4d result; @@ -364,7 +364,7 @@ namespace OpenTK /// Builds a rotation matrix for a rotation around the y-axis. /// /// The counter-clockwise angle in radians. - /// The resulting Matrix4 instance. + /// The resulting Matrix4d instance. public static void CreateRotationY(double angle, out Matrix4d result) { double cos = System.Math.Cos(angle); @@ -380,7 +380,7 @@ namespace OpenTK /// Builds a rotation matrix for a rotation around the y-axis. /// /// The counter-clockwise angle in radians. - /// The resulting Matrix4 instance. + /// The resulting Matrix4d instance. public static Matrix4d CreateRotationY(double angle) { Matrix4d result; @@ -392,7 +392,7 @@ namespace OpenTK /// Builds a rotation matrix for a rotation around the z-axis. /// /// The counter-clockwise angle in radians. - /// The resulting Matrix4 instance. + /// The resulting Matrix4d instance. public static void CreateRotationZ(double angle, out Matrix4d result) { double cos = System.Math.Cos(angle); @@ -408,7 +408,7 @@ namespace OpenTK /// Builds a rotation matrix for a rotation around the z-axis. /// /// The counter-clockwise angle in radians. - /// The resulting Matrix4 instance. + /// The resulting Matrix4d instance. public static Matrix4d CreateRotationZ(double angle) { Matrix4d result; @@ -1220,7 +1220,7 @@ namespace OpenTK /// /// left-hand operand /// right-hand operand - /// A new Matrix44 which holds the result of the multiplication + /// A new Matrix4d which holds the result of the multiplication public static Matrix4d operator *(Matrix4d left, Matrix4d right) { return Matrix4d.Mult(left, right); @@ -1302,7 +1302,7 @@ namespace OpenTK #region IEquatable Members /// Indicates whether the current matrix is equal to another matrix. - /// An matrix to compare with this matrix. + /// A matrix to compare with this matrix. /// true if the current matrix is equal to the matrix parameter; otherwise, false. public bool Equals(Matrix4d other) {