Commit graph

34 commits

Author SHA1 Message Date
the_fiddler e986af3b6e Fixed issue [#1895]: "Vector3d.Equals(object obj) defined in terms of Vector3, not Vector3d". 2010-11-21 10:54:11 +00:00
the_fiddler 4be74af5d4 Modified TransformPerspective to work correctly with orthographic projection matrices. Fixes issue [#1827]: "OpenTK.Vector3.TransformPerspective code is wrong". 2010-11-21 00:09:50 +00:00
the_fiddler c89f8e375e Added 1-parameter constructors. 2010-11-15 22:34:52 +00:00
the_fiddler 53b84d18d4 Backported bugfixes from 1.0 branch. 2010-02-03 19:04:42 +00:00
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 144d5dd450 Hopefully fixed all remaining encoding problems. 2009-02-22 11:26:17 +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 493e52e05b Added explicit operators for converting single-precision Vector234 <-> double-precision Vector234d. 2009-02-13 13:26:39 +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 e6303e9e5b Suppress cls-compliance warnings (should be restored when the code goes public). 2008-12-02 16:02:08 +00:00
the_fiddler 706875c3de Added George's patch which fixes some region strings, and adds PerpendicularLeft. 2008-04-06 15:50:48 +00:00
the_fiddler b7214409cc Marked double precision math structures as internal (need more work before release). 2008-04-06 15:36:42 +00:00
the_fiddler 6553c71cb5 Fixed licenses. Resaved some docs as unicode. 2008-03-06 21:06:52 +00:00
the_fiddler 3d2bc15a84 Documentation updates. Getting rid of warnings. 2008-01-20 19:00:03 +00:00
the_fiddler d4a63df42b Added JTalton's double precision mathlib. 2008-01-20 17:14:12 +00:00