Brendan Zabarauskas
74a771af79
Rename matrix scale functions for better ergonomics
...
Uniform scale matrices are probably the more common case. It probably makes sense that this has the shorter constructor.
2015-12-07 23:46:24 +11:00
Brendan Zabarauskas
f75c8aa7f1
Merge pull request #261 from bjz/add-matrix-scale-functions
...
Add matrix scale functions
2015-12-06 21:08:27 +11:00
Brendan Zabarauskas
1a291c720c
Simplify impl bounds
...
All the useful functions are implemented for BaseFloat, so it seems reasonable to not require such fine-grained impls. This should also make the generated documentation easier to read.
2015-12-06 19:53:23 +11:00
Brendan Zabarauskas
4f0aabb164
Clarify comments about the kind of matrices that are returned by the constructors
2015-12-06 19:53:23 +11:00
Brendan Zabarauskas
2d6b4e785c
Add Matrix4::{from_scale, from_uniform_scale} functions
2015-12-06 19:53:23 +11:00
Brendan Zabarauskas
2dc0a4a43f
Rename SquareMatrix::one to identity
...
Fixes #260
2015-12-06 19:36:38 +11:00
Brendan Zabarauskas
5b2b10d65f
Rename Array::swap_elems to Array::swap_elements
2015-11-14 22:05:44 +11:00
Brendan Zabarauskas
dcb0afd57b
Remove Array::replace_elem
...
Doesn't seem very useful...
2015-11-14 22:04:04 +11:00
Brendan Zabarauskas
70dbef1eb1
Rename Array1 to Array
2015-11-14 22:02:17 +11:00
Brendan Zabarauskas
ab24f3f8fe
Make Matrix trait work for matrices of arbritrary dimensions
2015-11-14 22:02:17 +11:00
Brendan Zabarauskas
ac2bba01cf
Make pointer access function names match those in std
2015-11-14 22:02:17 +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
7af4ebb28d
Add some by-value operator overloads
...
Working towards #247
2015-11-08 17:45:33 +11:00
Brendan Zabarauskas
490997c93f
Add an alias to Vector::Scalar in Point
2015-11-03 15:50:07 +11:00
Brendan Zabarauskas
89e656b1f6
Add comments noting rust bugs
2015-11-03 15:40:52 +11:00
Brendan Zabarauskas
cda76e3bbb
Remove type parameters from Matrix trait
2015-11-03 15:32:17 +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
25aea84e0d
Make scalar an an associated type on Vector
2015-11-03 14:30:59 +11:00
Brendan Zabarauskas
a434f18ba4
Make array type parameters associated types
2015-11-03 14:15:11 +11:00
Brendan Zabarauskas
0584bcac64
Make epsilon an associated type on ApproxEq
2015-11-03 14:00:39 +11:00
Brendan Zabarauskas
78f86a33cd
Make vectors an associated type on Point
2015-11-03 11:32:15 +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
9e53629459
Clean up index operator usages
2015-10-04 12:58:53 +11:00
Colin Sherratt
c4e8d8ae69
Merge pull request #239 from bjz/method-renames
...
Method renames
2015-10-02 22:41:03 -04:00
Brendan Zabarauskas
fc2943e27b
Rename $Self_ in macros
2015-10-02 14:54:33 +10: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
d9675f7c7e
Formatting
2015-09-30 20:47:38 +10:00
Brendan Zabarauskas
e845fd9b8c
Reduce scope of dot_matrix4! macro
2015-09-30 20:06:17 +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
8b6fb94685
Implement binary operators for points
...
We can't yet remove the operator methods, due to rust-lang/rust#20671
2015-09-30 18:23:01 +10:00
Brendan Zabarauskas
be5c6fb55b
Compress point formatting
2015-09-30 18:09:40 +10:00
Brendan Zabarauskas
b7b1f6c9cb
Implement binary operators for quaternions
2015-09-30 18:05:20 +10:00
Brendan Zabarauskas
e3e06297a0
Implement by-ref operators for vectors, and remove by-value implementations
...
We can't yet remove the operator methods, due to rust-lang/rust#20671
This also removes the implementations of `Zero` and `One` for vectors.
2015-09-30 17:37:52 +10:00
Brendan Zabarauskas
7a3f4f9e2d
Fix formatting
2015-09-30 09:33:44 +10:00
Brendan Zabarauskas
5023b6c01e
Consistently use associated functions throughout codebase
2015-09-30 09:32:25 +10:00
Brendan Zabarauskas
494f2b65ad
Fix Quaternion::mul_self_q
...
Fixes #224
I haven't really thought about whether there is a faster way to do this, but at least it is fixed.
2015-09-29 18:36:41 +10:00
Colin Sherratt
5dd8bc7ef3
Merge pull request #233 from bjz/remove-map-method
...
Remove {Array1, Array2}::map method
2015-09-29 02:22:51 -04: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
Brendan Zabarauskas
3ea0b3c5b2
Move some methods onto the Matrix trait
...
Now we can call them like `Matrix4::identity()`! Yay!
2015-09-29 09:34:41 +10:00
Brendan Zabarauskas
7f73c2cdd9
Add conversion tests for vectors, points, and quaternions
2015-09-27 17:20:02 +10:00
Brendan Zabarauskas
69caaf48b6
Add index tests
2015-09-27 13:01:14 +10:00
Brendan Zabarauskas
aff340dc1e
Add range index operators
2015-09-21 07:56:03 +10:00
Brendan Zabarauskas
0ce28fbe10
Remove FixedArray trait in favour of std::convert
...
Fixes #225
2015-09-21 06:49:33 +10:00
Tim Neumann
0469935161
fix rfc 1214 fallout
2015-09-12 13:07:22 +02:00
Pierre Krieger
9cd7f71875
Make functions in angle.rs more generic
2015-05-08 16:40:22 +02:00
Pierre Krieger
1a6dc52e51
Remove ToQuaternion
2015-05-06 16:27:03 +02:00
Pierre Krieger
6ce250b10d
Remove ToBasis2/ToBasis3 in favor of Into
2015-05-06 16:27:03 +02:00
Pierre Krieger
151c6c6e64
Replace as_matrix* by impl AsRef<Matrix
2015-05-06 16:27:02 +02:00