Commit graph

109 commits

Author SHA1 Message Date
the_fiddler
d0cd45e6d0 Optimized Matrix4(d).Mult for a 7x speedup. Code courtesy of http://www.edais.co.uk/blog/?p=27 2011-09-04 20:52:42 +00:00
the_fiddler
ed5c64208b * Quaternion.cs:
* Quaterniond.cs: Check for W > 1.0 _or_ W < -1.0 before normalizing
  in ToAxisAngle. Resolves issue [#2465]: "Quaternion rotation bug".
2011-07-10 14:48:29 +00:00
the_fiddler
c4475ec05b Added missing double-precision radian-to-degree conversion routines. 2011-02-08 20:10:42 +00:00
the_fiddler
8677320714 * Vector4.cs: Fixed doc comment to refer to the single-precision
version of the structure, rather than the double-precision one.
2010-11-24 21:15:38 +00:00
the_fiddler
0153acb799 Updated documentation on Vector4(Vector3) constructor to state that the w component is initialized to 0. 2010-11-24 20:50:47 +00:00
the_fiddler
8be8190ee8 Fixed issue [#1895]: "Vector3d.Equals(object obj) defined in terms of Vector3, not Vector3d". 2010-11-21 10:54:11 +00:00
the_fiddler
8e88dbb352 Relaxed parameter checks for CreatePerspectiveFieldOfView. Fixes issue [#1693]: "CreatePerspectiveFieldOfView throws in valid cases". 2010-11-21 00:15:18 +00:00
the_fiddler
f925ec1507 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
adc4d1ae59 Added 1-parameter constructors. 2010-11-15 22:34:52 +00:00
the_fiddler
7f6fa886da Fixed issue [#2072]: "Box2 constructor bug". 2010-10-11 07:54:46 +00:00
the_fiddler
1f4b5be7d0 Synced trunk with 1.0 branch. 2010-10-02 18:52:34 +00:00
the_fiddler
da7e4c7252 Backported bugfixes from 1.0 branch. 2010-02-03 19:04:42 +00:00
the_fiddler
f12cbf1cd5 Synced trunk with 1.0 branch. 2009-11-16 18:45:41 +00:00
the_fiddler
c6ae9ae3fe Applied fix for use of C# 3.0 features from 1.0 branch. 2009-11-11 23:16:42 +00:00
the_fiddler
8af490627f Fixed a large number of recurring spelling mistakes in documentation (patch by iRBiS). Fixes issue [#1341]: "Vector4 constructor describes w component as z component + other spelling corrections". 2009-11-09 08:15:38 +00:00
the_fiddler
aedb514b84 Fixed documentation which describes w components as z components (patch by iRBiS). 2009-11-09 08:12:34 +00:00
the_fiddler
e35f9d5374 Disabled OpenTK.Point, Size and Rectangle structures that were meant to replace their System.Drawing implementations until the correct course of action can be determined. This change is too disruptive to existing applications, especially if they are also using Windows.Forms (see discussion here: http://www.opentk.com/node/1348). 2009-11-08 23:02:53 +00:00
the_fiddler
62fee03192 * Rectangle.cs: Fixed ToString formatting code. 2009-11-06 10:04:32 +00:00
the_fiddler
c09c21dc64 Cleaned up a large number of documentation issues. 2009-11-04 20:48:02 +00:00
the_fiddler
6770e171ed Enabled System.Drawing.Point/Size/Rectangle replacements. 2009-11-04 19:10:32 +00:00
the_fiddler
eb92aa8223 Implemented Tranform(Vector, Quaternion) overloads. Fixes issue [#1028]: "[Math] Add vector transformation by quaternion". 2009-11-03 12:20:21 +00:00
the_fiddler
b5eb7fdb93 Deprecated Mult in favor of Multiply.
Modified operator * to use Multiply internally (reduces code duplication).
2009-11-03 12:11:51 +00:00
the_fiddler
eeda1bf866 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
4d3e84701c Modified Transform(ref Vector4, ref Matrix4, out Vector4) overload to work correctly when the ref and out parameters point to the same Vector4.
Modified Transform(Vector4, Matrix4): Vector4 to call the reference overload internally. Faster and reduces code duplication.
2009-11-03 11:41:36 +00:00
the_fiddler
1073c8ccac * Matrix4d.cs: M44 should be 1.0 to conform with GL.Ortho(). Fixes issue [#1307]: "GL.Ortho behaves other than combination of OpenTK.Matrix4d.CreateOrthographic and GL.MultMatrix". 2009-11-02 13:25:41 +00:00
the_fiddler
600f657b70 Improved interoperation with System.Drawing with new addition, subtraction and implicit conversion operators, as well as additional method overloads.
Only expose fields through public properties to allow for parameter validation.
2009-11-02 07:20:59 +00:00
the_fiddler
ff572e83b7 Added experimental OpenTK.Point/Size/Rectangle alternatives to System.Drawing, to make OpenTK usable without referencing System.Drawing (disabled by default, #define EXPERIMENTAL to test). Modified a number of using directives and namespace qualifiers to accommodate this change. 2009-11-01 12:44:38 +00:00
the_fiddler
83514567f4 Corrected documentation on the M42 property. Fixes issue [#1227]: "Matrix4.M42 documentation". 2009-10-14 18:30:12 +00:00
the_fiddler
34f36d579f Added missing CreatePerspectiveFieldOfView and CreatePerspectiveOffCenter methods (fixes issue [#1226]: "Matrix4d.CreatePerspectiveFieldOfView").
Replaced several instances of float values by double equivalents.
2009-10-13 21:33:59 +00:00
the_fiddler
8992f90571 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
f926595b64 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
65c6b29918 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
6b79a2d251 Fixed formatting. 2009-10-06 08:57:48 +00:00
the_fiddler
ce77b57566 Implemented Quaternion scaling by scalars. Fixes issue [#1131]: "[Math] add Quaternion scaling (easy)". 2009-09-05 16:17:47 +00:00
the_fiddler
00930380b5 Fixed XML documentation warnings. 2009-09-04 23:11:20 +00:00
the_fiddler
33db1f6b74 Fixed a large number of documentation warnings. 2009-09-04 21:44:39 +00:00
the_fiddler
7601c2b57d Removed this property to maintain parity with the Matrix4 structure. 2009-09-04 21:37:53 +00:00
the_fiddler
abf3787e8e Added missing XML documentation and fixed invalid XML doc references.
Removed deprecated methods from IGraphicsContext.
2009-09-04 21:25:29 +00:00
the_fiddler
72f0fb86da Added missing Matrix4./Matrix4d.CreateRotation[XYZ] methods.
Added missing Matrix4d.CreateFromAxisAngle method.
Fixed Matrix4d constructor to take double parameters instead of float.
2009-09-04 13:02:23 +00:00
the_fiddler
b240db8cd9 Added mathematical constants used by XNA (Pi, E, logarithms).
Removed unused code.
2009-08-14 14:15:30 +00:00
the_fiddler
3cfc3906b8 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
276675fd9c Merged fix for bug [#1060]: "Wrong XML Comment on the W property in Vector4[d]". 2009-08-01 14:24:47 +00:00
the_fiddler
16dd351255 Added NextPowerOfTwo float and double overloads. 2009-07-19 20:58:35 +00:00
the_fiddler
7726212921 Replaced tabs with spaces. 2009-07-17 08:27:25 +00:00
the_fiddler
e8754784f8 Fixed XML docs and remove unnecessary CLSCompliance attributes. 2009-06-28 10:52:58 +00:00
the_fiddler
e8cf64a177 Added missing XML docs. 2009-06-28 10:49:10 +00:00
the_fiddler
9b17ee1559 Added several missing XML comments. 2009-06-28 10:33:32 +00:00
the_fiddler
33fb214266 Added CreateFromAxisAngle method. 2009-06-26 21:45:26 +00:00
the_fiddler
42374a73d4 Obsoleted Frustum and Perspective methods in favor of CreatePerspectiveOffCenter and CreatePerspectiveFieldOfView, respectively. 2009-06-25 22:47:01 +00:00
the_fiddler
df6671cb4a Removed OpenTK.Math namespace. Math functions now go directly into the OpenTK namespace. 2009-06-25 11:42:05 +00:00