Commit graph

145 commits

Author SHA1 Message Date
the_fiddler 5281902f60 Implemented IEquatable interface.
Fixed ToAxisAngle implementation at 0-degree angles.
Added ToAxisAngle overload that returns a Vector4 struct.
2009-02-13 19:53:46 +00:00
the_fiddler e187ed5a18 Added Xy and Xyz swizzle operators. 2009-02-13 19:51:35 +00:00
chrisbrandtner da7972ad37 Added explicit operators for converting single-precision Vector234 <-> double-precision Vector234d. 2009-02-13 13:26:39 +00:00
the_fiddler 989b0c81c6 Added (Vector3, float) and (Vector3d, double) constructors. 2009-01-29 00:41:09 +00:00
chrisbrandtner d7498d62b4 Added ref/out overloads to all static Vector*.Transform* methods. 2009-01-25 15:06:42 +00:00
chrisbrandtner 6c22e8522d 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 8c56d505b7 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 49e132911d 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 1eee53da4f 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 969d66e9f1 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 a29d72fc90 Suppress cls-compliance warnings (should be restored when the code goes public). 2008-12-02 16:02:08 +00:00
the_fiddler 57ff9428d6 Documented static public fields.
Added missing SizeInBytes field to Vector2 and Vector4.
2008-11-15 21:36:46 +00:00
the_fiddler 2af017c3ea Added serializable attribute.
Added IEquatable interface and operator== overloads to Matrix4 and Vector* structs.
2008-07-10 14:01:38 +00:00
the_fiddler 59e8c4be14 Apply Andy's patch on Matrix.Frustum and with skewed matrices. 2008-05-04 16:41:48 +00:00
the_fiddler 6c690dc8c6 Added George's patch which fixes some region strings, and adds PerpendicularLeft. 2008-04-06 15:50:48 +00:00
the_fiddler 0e85f2208d Added George's patch which fixes some region strings, and adds PerpendicularLeft. 2008-04-06 15:43:35 +00:00
the_fiddler b5959e0db5 Added George's patch with instance members for beziers. 2008-04-06 15:41:27 +00:00
the_fiddler 90f6523116 Marked double precision math structures as internal (need more work before release). 2008-04-06 15:36:42 +00:00
the_fiddler 7001076f5a Moved OpenTK.OpenAL to OpenTK.Audio.
Added SoundReader class.
Added OpenTK.Math.Functions.NextPowerOfTwo 
Fixed several AL functions, and added overloads to AL.BufferData.
Added OpenAL wave playback sample.
2008-04-04 19:46:08 +00:00
the_fiddler 05d8f839e2 Fixed licenses. Resaved some docs as unicode. 2008-03-06 21:06:52 +00:00
the_fiddler c946bc6fb8 Added Bezier Curves. Added Factorial and BinomialCoefficient to Functions.cs. Added Vector2d?.Perpendicular 2008-03-06 21:04:53 +00:00
the_fiddler 878af03601 Documentation updates. Getting rid of all remaining warnings in debug build. 2008-01-20 19:29:42 +00:00
the_fiddler 5a66d44f19 Documentation updates. Getting rid of warnings. 2008-01-20 19:00:03 +00:00
the_fiddler 41a7d2a90e JTalton's new functions. 2008-01-20 17:26:40 +00:00
the_fiddler b80a67b687 Added JTalton's double precision mathlib. 2008-01-20 17:14:12 +00:00
the_fiddler b05f8728aa Fixed Perspective implementation. 2007-12-31 12:16:39 +00:00
the_fiddler cba3413059 Updated licensing information. 2007-11-10 23:29:25 +00:00
the_fiddler 47dad78e44 george's patch for camera and transform functions. 2007-11-10 18:53:25 +00:00
the_fiddler 050eddbbd9 Added ToString() method. Added documentation. 2007-11-08 15:55:38 +00:00
the_fiddler 61b1a4f804 Added SizeInBytes readonly field. Made UnitX/Y/Z fields readonly. 2007-11-06 20:59:39 +00:00
the_fiddler ef8873904e Throw exception when encountering a singular matrix on matrix inversion. Add indexer: (Matrix4[i, j]) (not implemented yet) 2007-11-06 14:03:05 +00:00
the_fiddler 5409a5d6b5 Removed (IntPtr) and (float*) cast operators. Added this indexer (Vector3[0], Vector3[0] etc) 2007-11-06 14:01:35 +00:00
the_fiddler d25278e25e 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 020a31bc81 Added Box2 class. 2007-11-06 13:32:17 +00:00
the_fiddler cd1b48f207 New math classes by george. 2007-11-04 15:34:04 +00:00
the_fiddler 95da49b8e8 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 1d8e5545da Added InverseSqrtFast. Vector2.LengthFast uses this to approximate the magnitude. 2007-10-24 23:23:24 +00:00
the_fiddler b675c7e621 Fixed compilation issue. Added OpenTK.Math.Functions. 2007-10-24 17:34:34 +00:00
the_fiddler 9e5de11616 Improved the Vector2 interface. Vector2.Add/Sub/Dot/Scale no longer create temporary objects. Removed Vector3/4 overloads. 2007-10-24 17:26:05 +00:00
the_fiddler a267b4a381 Vector and example updates. 2007-09-25 21:11:16 +00:00
the_fiddler 146fef1135 Complete Vector2, Vector3 and Vector4 structs. 2007-09-25 15:46:52 +00:00
the_fiddler 27d8c47403 Fixed cast issues with Math.Sqrt. 2007-09-24 20:56:17 +00:00
the_fiddler d39787c9de Added length, normal and scale calculations. 2007-09-24 20:18:51 +00:00
the_fiddler 4b29b626b8 Vector23 math and operator overloads. 2007-09-24 20:11:44 +00:00
the_fiddler 0e3a330065 Added initial OpenTK.Math implementation. Contains Vector2, Vector3 and Vector4 structs. 2007-09-21 23:38:19 +00:00