Commit graph

70 commits

Author SHA1 Message Date
Jordan Miner c11371794f Fix Euler angle to matrix conversion
The equations were written with rows horizontally instead of vertically
and some signs were wrong.
2016-05-12 01:28:16 -05:00
Jordan Miner b56119a42f Test converting axis angles to quaternions 2016-05-12 01:28:15 -05:00
Jordan Miner 467e87f3d3 Fix Euler angles to quaternion conversion and vise versa
Add tests that rotate a vector in all three axes, and tests to check
the axis rotation sequence.
2016-05-12 01:28:15 -05:00
Brendan Zabarauskas a1d8eaed10 Make Rotation trait depend on One 2016-05-12 08:36:34 +10:00
Brendan Zabarauskas 65e744c8cd Remove self inversion methods 2016-05-10 21:55:11 +10:00
Mark Hintz 074cb2c36f Change the name of methods on the Transform trait to avoid clashes
Transform::invert becomes Transform::inverse_transform, and Transform::invert_self becomes Transform::to_inverse. Tests passing for me now
2016-05-01 14:59:38 +02:00
Brendan Zabarauskas 0259acb87f Switch to an Euler angle type for defining rotations 2016-04-23 16:56:07 +10:00
Brendan Zabarauskas 2cd6f402df Move the dot method onto EuclideanVector
The Vector and EuclideanVector traits roughly line up with the concept of vector spaces and inner spaces respectively. It makes more sense to group `dot` with the other methods that depend on it.
2016-04-04 20:45:37 +10:00
Brendan Zabarauskas 40232ec063 Remove Angle::equiv
Thus relied on the == operator, which doesn't make sense for floats. It seems better to leave this up to clients to decide if they want to normalize.
2016-04-03 13:32:55 +10:00
Brendan Zabarauskas 0de8942748 Merge pull request #311 from bjz/rename-vector-length
Rename Vector::length to Vector::magnitude
2016-03-28 13:47:50 +11:00
Brendan Zabarauskas f7bc6dcc54 Rename Vector::length to Vector::magnitude 2016-03-27 16:17:11 +11:00
Brendan Zabarauskas 8d10f1dc6d Remove extraneous operator overloads on vectors, and add Elementwise trait 2016-03-26 13:28:49 +11:00
Cameron Hart e773da36d2 Removed constant only used on one place 2016-01-02 16:15:49 +11:00
Cameron Hart 24a21d5fc6 Added scalar arithmetic operators for Matrix types 2016-01-02 16:11:16 +11:00
Cameron Hart 9096e409d1 Added scalar arithmetic operators for Quaternions 2016-01-02 11:13:27 +11:00
Cameron Hart 3febc46d5a Added scalar arithmetic operators for Point types 2016-01-02 10:14:47 +11:00
Cameron Hart 1e6f615f9e Split arithmetic operator tests into per op tests 2016-01-02 09:12:13 +11:00
Cameron Hart 62b6c961a4 Test by-ref arithmetic operators against by-val results 2016-01-02 08:57:16 +11:00
Cameron Hart 043a63c45a Expand vector aritmetic operator tests
Add test for vector on vector operators and different permutations
of vector references.
2016-01-02 00:18:48 +11:00
Cameron Hart 7426d8d807 Support for scalar on the lhs of arithmetic operators 2016-01-01 18:05:32 +11:00
Brendan Zabarauskas fb722e1dac Clean up matrix tests 2015-12-29 15:49:01 +11:00
derekburch 744fb78662 Fix conversion from Matrix3 to Quaternion 2015-12-22 17:53:06 -08:00
Brendan Zabarauskas 1d886f6197 Add all permutations of matrix ops, and remove operator methods
Completes #247
2015-12-21 21:02:40 +11:00
Brendan Zabarauskas e76921881f Remove operator methods on angles 2015-12-13 16:18:39 +11:00
Brendan Zabarauskas 43634f0b49 Remove more *_self methods from Vector trait 2015-12-13 12:01:00 +11:00
Brendan Zabarauskas 25f5dfd5fc Remove operator methods from Vector trait 2015-12-13 12:01:00 +11:00
Brendan Zabarauskas 75b6548179 Remove ToComponents and CompositeTransform traits
Fixes #274

# Conflicts:
#	src/transform.rs
2015-12-13 10:20:53 +11:00
Brendan Zabarauskas 2dc0a4a43f Rename SquareMatrix::one to identity
Fixes #260
2015-12-06 19:36:38 +11:00
Brendan Zabarauskas 25ca567060 Move element-wise operations into Array1 trait 2015-11-14 12:17:03 +11:00
Brendan Zabarauskas 178272da3d Make lots of methods take vectors and points by value 2015-11-09 20:18:02 +11:00
Brendan Zabarauskas 669e43ab59 Make scalar type parametrs out of transform and rotation traits 2015-11-03 15:23:22 +11:00
Brendan Zabarauskas 943a92e691 Remove collision types and traits from the library
Closes #244
2015-11-01 13:42:58 +11:00
Brendan Zabarauskas b168c03174 Rename identity to one
Zero is the additive identity, so this disambiguates it
2015-10-01 18:56:31 +10:00
Brendan Zabarauskas af38e8a8be Rename comp_{add, mul} to {sum, product} 2015-10-01 18:52:55 +10:00
Brendan Zabarauskas 902215b532 Implement binary operators for matrices
We can't yet remove the operator methods, due to rust-lang/rust#20671
2015-09-30 19:01:30 +10:00
Brendan Zabarauskas 4be95bcb7d Remove {Array1, Array2}::map method
This doesn't seem to be used anywhere - not sure how useful it is. It isn't really a proper `map` anyway, because it mutates `self`.
2015-09-29 09:47:57 +10:00
Pierre Krieger 151c6c6e64 Replace as_matrix* by impl AsRef<Matrix 2015-05-06 16:27:02 +02:00
Pierre Krieger 8ab8d7551d Replace ToMatrix* by Into 2015-05-06 16:27:02 +02:00
Pierre Krieger e5822e3864 Replace ToDeg/ToRad by From/Into 2015-05-06 16:27:02 +02:00
Dzmitry Malyshau 498df01729 Fixed all the warnings, compile issues, and tests 2015-04-04 22:31:18 -04:00
Dzmitry Malyshau b36039a6ee Fixed the tests 2015-03-25 22:14:17 -04:00
Jonathan Neuschäfer 2b952a2577 Add tests for inverted rotations 2015-03-18 18:21:39 +01:00
Jonathan Neuschäfer 241441a650 #[should_fail] -> #[should_panic] 2015-03-18 18:21:39 +01:00
Jonathan Neuschäfer 4c527f8334 s/AUTHORS file/Cargo.toml file/ 2015-03-18 17:51:03 +01:00
Colin Sherratt 146a64cc1b fix is->isize in vector 2015-03-15 16:54:38 -04:00
Dzmitry Malyshau 6691dce420 Added Bound::relate_clip_space with default implementation 2015-03-15 22:37:11 +03:00
Dzmitry Malyshau fa3aacafcf Improved Plane, fixed Frustum computation from Matrix4, implemented Frustum contains() tests. 2015-03-15 22:36:09 +03:00
Dzmitry Malyshau 715f3b7157 Added tests for aabb to_corners(). Fixed test warnings. 2015-03-15 22:36:07 +03:00
Dzmitry Malyshau 4d71e8aad9 Moved the bound tests around. Added one for Aabb3 2015-03-15 22:36:04 +03:00
Dzmitry Malyshau d3d7241c86 Moved bound implementations into the corresponding modules 2015-03-15 22:36:03 +03:00