Commit graph

122 commits

Author SHA1 Message Date
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 612be7fecc Move free trigonometric functions onto Angle trait 2015-12-13 23:51:00 +11:00
Brendan Zabarauskas 25f5dfd5fc Remove operator methods from Vector trait 2015-12-13 12:01:00 +11:00
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 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 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 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 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 9e53629459 Clean up index operator usages 2015-10-04 12:58:53 +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 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 5023b6c01e Consistently use associated functions throughout codebase 2015-09-30 09:32:25 +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 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 1a6dc52e51 Remove ToQuaternion 2015-05-06 16:27:03 +02:00
Pierre Krieger 8ab8d7551d Replace ToMatrix* by Into 2015-05-06 16:27:02 +02:00
Dzmitry Malyshau 16302ffa20 Fixed the num crate 2015-04-24 23:28:31 -04:00
Pierre Krieger d560242ed4 Allow writing matrix * scalar 2015-04-19 15:45:13 +02:00
Dzmitry Malyshau 498df01729 Fixed all the warnings, compile issues, and tests 2015-04-04 22:31:18 -04:00
Dzmitry Malyshau 8db429acae Using rust-lang/num 2015-04-04 21:19:11 -04:00
Dzmitry Malyshau 94d428d23e Fixed the Neg disaster 2015-04-04 20:15:00 -04:00
Dzmitry Malyshau 05c4147cec Fixed Index implementations 2015-03-25 21:58:33 -04:00
Jonathan Neuschäfer bc8a47fb8d use if/else if/else instead of match ()
It looks more idiomatic.
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 64fedca8e9 Manually add rand trait 2015-03-14 22:54:02 -04:00
Pierre Krieger 8895654f92 Remove dependencies to rand and rand_macros
Conflicts:
	src/cgmath.rs
2015-03-14 22:07:15 -04:00
Colin Sherratt 74707ed8d2 fix closure syntax 2015-03-01 13:28:38 -05:00
Ben Foppa 562dfeb7a6 Add #[must_use] on functions with in-place variants. 2015-02-22 16:33:16 -05:00
Colin Sherratt 778a3c13aa use the new rand_macros crate 2015-02-08 13:25:42 -05:00
Colin Sherratt e712bdee7c fmt::Show to fmt::Debug 2015-02-08 13:19:32 -05:00
Hyeon Kim 23fbac94e7 Update rust
`Output` is not a member of trait `IndexMut` anymore.
2015-02-09 02:50:35 +09:00