the_fiddler
bbe606da53
Vector3(d).Cross: do not modify 'result' more than once to ensure that Cross(ref a, ref b, out a) works correctly.
...
Optimized vector-quaternion transform. Fixes issue [#1373 ]: "[Math] optimize Vector transform by Quaternion".
2009-11-16 13:23:04 +00:00
the_fiddler
0605607e6a
Changed vector-quaternion transformations to use standard q * v * q^-1 convention. Fixes issue [ #1372 ]: "[Math] Vector transformation by Quaternion follows non-standard quaternion math convention".
2009-11-16 13:00:42 +00:00
the_fiddler
01bb1971e4
* Vector4.cs:
...
* Vector3.cs:
* Vector2.cs:
* Vector4d.cs:
* Vector3d.cs:
* Vector2d.cs: Removed code using C# 3.0 features.
2009-11-11 22:37:04 +00:00
the_fiddler
70140e62ef
Implemented Tranform(Vector, Quaternion) overloads. Fixes issue [ #1028 ]: "[Math] Add vector transformation by quaternion".
2009-11-03 12:20:21 +00:00
the_fiddler
9ce7437cbd
Fixed Vector3.Transform signature to return a Vector3, not a Vector4. It was previously impossible to transform a Vector3 structure without intermediate conversions to Vector4.
2009-11-03 11:45:20 +00:00
the_fiddler
99aab2fa2e
Replaced calls to obsolete methods.
...
Fixed parameters in double versions of BaryCentric() (should be double instead of float).
2009-10-06 09:51:13 +00:00
the_fiddler
f2c91d4a7c
Obsoleted Scale() instance method (reason: redundant. Mult()/Multiply() instance/static methods can be used to achieve the same effect).
2009-10-06 09:45:09 +00:00
the_fiddler
201b06931e
Added vector overloads to Multiply and Divide methods.
...
Renamed Sub to Subtract, Mult to Multiply and Div to Divide (reason: conform with the class library design guidelines).
Obsoleted instance Add, Sub, Mult and Div methods in favor of static ones (reason: reduce API bloat, they are completely redudant).
Improved documentation for new methods.
2009-10-06 09:42:21 +00:00
the_fiddler
376a1fca65
Fixed XML documentation warnings.
2009-09-04 23:11:20 +00:00
the_fiddler
87b2fe1a9d
Obsoleted OpenTK.Functions in favor of OpenTK.MathHelper (reason: XNA compatibility).
...
Added Matrix4.LookAt overload that does not use Vector3 parameters.
2009-08-14 12:37:18 +00:00
the_fiddler
a7363b54e6
Removed OpenTK.Math namespace. Math functions now go directly into the OpenTK namespace.
2009-06-25 11:42:05 +00:00
the_fiddler
bf89289ad9
Added static readonly Vector[234]d?.One properties.
2009-06-04 16:51:45 +00:00
the_fiddler
9265747541
Fixed all known build warnings, apart from missing xml comments.
2009-03-25 21:53:12 +00:00
the_fiddler
a22019d890
Normalize line endings and set the mime-type=text/plain and eol-style=native properties on all files.
2009-02-22 10:43:35 +00:00
the_fiddler
b40ccdc726
Marked the swizzle properties with the XmlIgnoreAttribute.
2009-02-13 20:40:57 +00:00
the_fiddler
92d79bb47b
Added Xy and Xyz swizzle operators.
2009-02-13 19:51:35 +00:00
chrisbrandtner
0ab939a744
Added ref/out overloads to all static Vector*.Transform* methods.
2009-01-25 15:06:42 +00:00
chrisbrandtner
5a3cd34953
Removed cast to float from Vector3d.CalculateAngle (unnecessary precision loss as double is returned).
...
Overloaded static Vector3 and Vector3d CalculateAngle methods.
2009-01-24 16:15:04 +00:00
chrisbrandtner
46f25f27a4
Overloaded instance methods Add, Sub, Scale to pass-vector-by-value and set CLS compliance flags.
...
Overloaded static method BaryCentric to pass-by-reference.
2009-01-24 14:54:52 +00:00
chrisbrandtner
4e6a3cf981
Added instance methods to all single and double precision Vector structs:
...
Add(ref vec)
Sub(ref vec)
Mult(float)
Div(float)
Scale(ref vec)
2009-01-23 21:55:21 +00:00
chrisbrandtner
01e971741d
Added ref/out overloads to static Vector*.Dot and Vector*.Lerp methods. Simplified the slow Vector3/Vector3d's static Cross methods. Occasional tweaks to inline documentation (spelling, consistency)
2009-01-23 15:04:53 +00:00
the_fiddler
2e3b56f89c
Added OpenEXR terms to the License.
...
Added Half and Vector[234]h structs.
Added Vector[234]d, Matrix4d and Quaterniond structs.
2008-12-09 20:45:18 +00:00
the_fiddler
0dea16ebf8
Documented static public fields.
...
Added missing SizeInBytes field to Vector2 and Vector4.
2008-11-15 21:36:46 +00:00
the_fiddler
175f5aab87
Added serializable attribute.
...
Added IEquatable interface and operator== overloads to Matrix4 and Vector* structs.
2008-07-10 14:01:38 +00:00
the_fiddler
9a70822c22
Added George's patch which fixes some region strings, and adds PerpendicularLeft.
2008-04-06 15:43:35 +00:00
the_fiddler
a60ac7204d
Updated licensing information.
2007-11-10 23:29:25 +00:00
the_fiddler
621cfbccec
george's patch for camera and transform functions.
2007-11-10 18:53:25 +00:00
the_fiddler
dd4943e835
Added SizeInBytes readonly field. Made UnitX/Y/Z fields readonly.
2007-11-06 20:59:39 +00:00
the_fiddler
9fd384420d
Removed (IntPtr) and (float*) cast operators. Added this indexer (Vector3[0], Vector3[0] etc)
2007-11-06 14:01:35 +00:00
the_fiddler
e2b08d0bd6
Renamed Min/Max to ComponentMin/ComponentMax and added Min and Max functions based on vector length.
2007-11-06 14:00:03 +00:00
the_fiddler
f96b2e4fbc
New math classes by george.
2007-11-04 15:34:04 +00:00
the_fiddler
a5cd312bc1
Completed the OpenTK.Math Vector[234] overhaul. Added LengthFast and NormalizeFast functions. Removed overloads. Made the pointer conversions explicit.
2007-10-24 23:40:06 +00:00
the_fiddler
2750081048
Vector and example updates.
2007-09-25 21:11:16 +00:00
the_fiddler
038f9a4b08
Complete Vector2, Vector3 and Vector4 structs.
2007-09-25 15:46:52 +00:00
the_fiddler
da03090ffa
Vector23 math and operator overloads.
2007-09-24 20:11:44 +00:00
the_fiddler
1c893bdbb5
Added initial OpenTK.Math implementation. Contains Vector2, Vector3 and Vector4 structs.
2007-09-21 23:38:19 +00:00