Commit graph

947 commits

Author SHA1 Message Date
Brendan Zabarauskas
90dbd29f6d Make some documentation more succinct 2016-04-04 20:45:37 +10:00
Brendan Zabarauskas
f766973a74 Remove neg_self methods
These are a weird methods... they aren't associated with any traits. I think they were left-over from before we moved to operator impls.
2016-04-04 20:45:37 +10:00
Brendan Zabarauskas
019cac1f74 Add some links to wikipedia pages 2016-04-04 20:45:37 +10:00
Brendan Zabarauskas
40a3ad3185 Add a default implementation for EuclideanVector::angle 2016-04-04 20:45:37 +10:00
Brendan Zabarauskas
3b55ad5f70 Move Vector::from_value function to Array trait 2016-04-04 20:45:37 +10:00
Brendan Zabarauskas
e0a5164967 Improve documentation for vector traits 2016-04-04 20:45:37 +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
1905354d26 Fix spelling 2016-04-03 13:56:26 +10:00
Brendan Zabarauskas
1d33c231e3 Improve the documentation for some angle methods 2016-04-03 13:49:58 +10:00
Brendan Zabarauskas
aa6fd71ab8 Move Angle::new to be implemented directly on angle types
This is more in keeping with most Rust APIs, and the other types in this library
2016-04-03 13:36:31 +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
5f7e47371e Merge remote-tracking branch 'origin/master' into element-wise 2016-03-27 16:43:20 +11:00
Brendan Zabarauskas
fb5228f14f Clean up some function calls 2016-03-27 16:25:03 +11:00
Brendan Zabarauskas
f7bc6dcc54 Rename Vector::length to Vector::magnitude 2016-03-27 16:17:11 +11:00
Brendan Zabarauskas
813b4aa5c2 Add constrained conversion functions 2016-03-26 16:41:31 +11:00
Brendan Zabarauskas
8d10f1dc6d Remove extraneous operator overloads on vectors, and add Elementwise trait 2016-03-26 13:28:49 +11:00
Brendan Zabarauskas
652ec87dd8 Add prelude module 2016-03-25 15:27:57 +11:00
Brendan Zabarauskas
3d55187a7d Mark some types as #[repr(C, packed)]
Closes #296
2016-03-25 12:42:17 +11:00
Brendan Zabarauskas
667888a0c5 Improve documentation for the Point trait 2016-03-24 22:56:21 +11:00
Cameron Hart
73c34e9f05 Small doc fix for EuclideanVector trait 2016-02-17 22:43:41 +11:00
Cameron Hart
24a21d5fc6 Added scalar arithmetic operators for Matrix types 2016-01-02 16:11:16 +11:00
Cameron Hart
15b14c1e87 Rename vector identifier to point 2016-01-02 16:10:35 +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
338c494735 Make macro usage more like existing style 2016-01-02 00:09:11 +11:00
Cameron Hart
7426d8d807 Support for scalar on the lhs of arithmetic operators 2016-01-01 18:05:32 +11:00
Brendan Zabarauskas
429d2659fe Improve fmt::Debug impls 2015-12-29 21:50:43 +11:00
Brendan Zabarauskas
0875ea4444 Merge pull request #284 from DerekBurch/fix-matrix3-to-quaternion
Fix conversion from Matrix3 to Quaternion
2015-12-23 13:12:03 +11:00
derekburch
744fb78662 Fix conversion from Matrix3 to Quaternion 2015-12-22 17:53:06 -08:00
Brendan Zabarauskas
f60e85b61a Merge pull request #282 from bjz/assignment-ops
Implement most assignment operators
2015-12-23 07:35:16 +11:00
Brendan Zabarauskas
e9dc8404ef Make Quaternion::magnitude pass self by-value 2015-12-22 23:14:16 +11:00
Brendan Zabarauskas
59d5e6f53a Implement most assignment operators 2015-12-22 22:34:34 +11:00
Brendan Zabarauskas
8c05db962a Implement by-ref negations for matrices 2015-12-22 00:43:15 +11:00
Brendan Zabarauskas
23c632acca Use SquareMatrix::ColumnRow instead of Matrix::Column 2015-12-21 22:10:28 +11: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
519af35d71 Remove Angle % Angle::Unitless 2015-12-14 04:42:02 +11:00
Brendan Zabarauskas
db35af6ae9 Angle % Angle should return an Angle 2015-12-14 04:40:09 +11:00
Brendan Zabarauskas
1cc11d2c8b Simplify method implementations using From::from 2015-12-13 23:51:46 +11:00
Brendan Zabarauskas
612be7fecc Move free trigonometric functions onto Angle trait 2015-12-13 23:51:00 +11:00
Brendan Zabarauskas
5b9eeb15a0 Remove Debug constraint form Angle 2015-12-13 18:38:48 +11:00
Brendan Zabarauskas
a49462426b Remove ScalarConv trait and Angle::from 2015-12-13 18:35:03 +11:00
Brendan Zabarauskas
a1f73ddf0d Remove *_self methods from Angle 2015-12-13 18:13:11 +11:00
Brendan Zabarauskas
e76921881f Remove operator methods on angles 2015-12-13 16:18:39 +11:00
Brendan Zabarauskas
369c1202c3 Fully impl operator permutations, and remove Zero and One impls 2015-12-13 15:54:10 +11:00
Brendan Zabarauskas
8f60f0a666 Angles should not implement Hash
Angles are implemented over floating point values - they will never be hashable.
2015-12-13 15:52:33 +11:00
Brendan Zabarauskas
981836626b Make Angle's type parameter an associated type 2015-12-13 13:09:44 +11:00
Brendan Zabarauskas
de4389759b Merge pull request #273 from bjz/operator-method-sweep
Operator method sweep
2015-12-13 13:05:40 +11:00
Brendan Zabarauskas
7df65333cb Simplify projection type parameters 2015-12-13 12:35:09 +11:00
Brendan Zabarauskas
a02b94fb70 Remove 'static constraints
These seem to be relics from an older Rust...
2015-12-13 12:24:30 +11:00