Commit graph

164 commits

Author SHA1 Message Date
Colin Sherratt
b0187ddeaa Update to match the latest std::ops::* traits 2014-12-17 02:16:13 -05:00
Jameson Ernst
5726e6c7dc Add deriving Copy to all structs that would previously be inferred to be Copy
Remove use of deprecated Equiv trait
Remove unsed attributes
2014-12-12 17:06:52 -08:00
Eduard Bopp
9f8580eeca Replace deprecated std::num traits
These traits are akin to the deprecated standard library traits (Zero, One,
Primitive) to keep everything running as before. However, for the long term a
better algebraic abstraction should be used/provided.
2014-11-20 16:28:02 +01:00
Sébastien Crozet
0bbefed4bc Improve the benchmark suite.
As a side effect, this adds `Rand` deriving to the benchmarked strucures.
2014-11-07 16:23:10 +01:00
Tomaka17
4fcfde13de fail! -> panic! 2014-10-30 10:11:33 +01:00
Tomaka17
1b5da61ccb Update for rustc 0e784e168 2014-09-16 23:26:11 +0000 2014-09-18 16:19:26 +02:00
bachm
825f5f2975 deriving Encodable, Decodable for all structs 2014-08-23 14:34:33 +02:00
Brendan Zabarauskas
3ff1eb583f Add fixed-length array conversions
Closes #111

`FixedArray::from_fixed` cannot yet be implemented due to  rust-lang/rust#16418
2014-08-11 21:10:38 +10:00
Brendan Zabarauskas
f93963919a Transition codebase to the new method names 2014-08-11 18:55:14 +10:00
Brendan Zabarauskas
325ebad75e Use more self-explanatory names for indexing methods 2014-08-11 17:02:25 +10:00
Brendan Zabarauskas
8999d88216 Remove deprecated functions from array traits 2014-08-11 16:54:39 +10:00
Vyacheslav Zeronov
535b5aa01f Added Matrix3::from_diagonal
Useful for creation of scale matrices.
2014-08-08 13:46:25 +06:00
Aaron Jacobs
bfc8efff80 Fixes Matrix2::from_angle invocation and adds a test for the feature.
Signed-off-by: Aaron Jacobs <atheriel@gmail.com>
2014-08-05 22:28:03 -07:00
Brendan Zabarauskas
1e1f60379e Deprecate element and column accessors in favour of index operators
Also removes some unnecessary `clone` calls.
2014-07-30 04:06:31 +10:00
Brendan Zabarauskas
61a6810324 Merge pull request #96 from atheriel/vecmap
Add a map() method for vectors.
2014-07-05 19:24:12 -07:00
Aaron Jacobs
d58fac1117 Use pointers for the column map.
Signed-off-by: Aaron Jacobs <atheriel@gmail.com>
2014-07-04 17:37:24 -07:00
HeroesGrave
047dbefd6f remove lifetime notations causing errors 2014-07-05 12:15:10 +12:00
Aaron Jacobs
b0f706a96e Adds map() to Array1, and provides implementations for Vectors,
Points, Matrices, and Quaternions.

Signed-off-by: Aaron Jacobs <atheriel@gmail.com>
2014-07-02 21:34:26 -07:00
Colin Sherratt
1cf9f8d4ef - added translate to Matrix
- fixed spaces and tabs
2014-06-28 16:53:05 -04:00
Erick Tryzelaar
1c5b6f0b7a Update to compile with rust (9f8149e) 2014-06-25 21:26:15 -07:00
Corey Richardson
c9bdf838a5 Update for Cargo 2014-06-23 23:49:29 -07:00
Brendan Zabarauskas
8199cbe742 Create Dimensional trait 2012-11-15 12:22:41 +10:00
Brendan Zabarauskas
90ee516370 Move numeric-specific modules to num module, clean up imports 2012-11-15 10:31:35 +10:00
Brendan Zabarauskas
aada68c23e Add mat3_from_rotation function 2012-11-14 18:23:15 +10:00
Brendan Zabarauskas
bfe1a272ec Rename type parameters 2012-11-14 14:53:13 +10:00
Brendan Zabarauskas
342817610d Move add_m and sub_m methods 2012-11-14 14:00:26 +10:00
Brendan Zabarauskas
e582e5edf5 Move to_ptr methods 2012-11-14 11:55:54 +10:00
Brendan Zabarauskas
07df95313e Move index overload methods into main Vector/Matrix impls 2012-11-14 10:28:56 +10:00
Brendan Zabarauskas
37d3bcd495 Inherit Neg and move neg method into appropriate impls 2012-11-14 10:20:36 +10:00
Brendan Zabarauskas
7492677366 Begin taking advantage of trait inheritance 2012-11-13 11:44:44 +10:00
Brendan Zabarauskas
16ba5ccb9b Use abs function 2012-11-12 11:52:32 +10:00
Brendan Zabarauskas
1a60dfa095 Idiomatic range loops 2012-11-12 11:41:28 +10:00
Brendan Zabarauskas
a3e4d090d6 Replace from_int function calls with cast for consistency 2012-11-11 13:43:37 +10:00
Brendan Zabarauskas
de72215d05 Rename SquareMatrix to NumericMatrix_NxN 2012-11-08 13:30:00 +10:00
Luqman Aden
e904f91105 Determinant is only defined for square matricies. 2012-11-07 22:04:11 -05:00
Luqman Aden
520ba818e6 Fix determinant/inver for 2x2. 2012-11-07 21:52:16 -05:00
Luqman Aden
a76378e83e Big oops, not all 2x2 matricies are upper/lower triangular. 2012-11-07 21:37:41 -05:00
Luqman Aden
f7fb7f7100 Added determinants and inversion. 2012-11-07 21:34:38 -05:00
Brendan Zabarauskas
bfe318aff5 Add explanation to matrix multiplication 2012-11-07 11:07:13 +10:00
Brendan Zabarauskas
1fe0d52fe4 Improve matrix multiplication 2012-11-07 08:38:44 +10:00
Brendan Zabarauskas
b792b8d7cd Add NumericMatrix trait 2012-11-06 20:03:55 +10:00
Brendan Zabarauskas
e2cfe36b9d Make type aliases public 2012-11-06 12:23:06 +10:00
Brendan Zabarauskas
40e847f34f Move functions to funs module. Add additional functions as per the GLSL spec 2012-11-06 11:57:15 +10:00
Brendan Zabarauskas
d2cf5c9da3 Use dot product for matrix-vector multiplication 2012-11-05 17:33:11 +10:00
Brendan Zabarauskas
8bab3a96ce Remove unnecessary type parameter 2012-11-05 17:03:32 +10:00
Brendan Zabarauskas
a1a31907d7 Add and implement SquareMatrix trait 2012-11-05 14:46:28 +10:00
Brendan Zabarauskas
9491c4d93f Add GLSL type aliases 2012-11-05 12:39:58 +10:00
Brendan Zabarauskas
4e90754263 Reduce zero and one casts 2012-11-05 00:37:52 +10:00
Brendan Zabarauskas
e96a1d007f Remove transformation functions 2012-11-04 16:35:58 +10:00
Brendan Zabarauskas
b245244b7d Add more matrix constructors and corresponding tests 2012-11-04 16:27:41 +10:00
Brendan Zabarauskas
a0cd3f77d8 Reduce zero and one casts, implement new constructors 2012-11-04 14:39:09 +10:00
Brendan Zabarauskas
5080853cbe Reorganise modules 2012-11-02 10:10:27 +10:00
Brendan Zabarauskas
c001329e14 Remove superfluous type bounds 2012-11-02 00:27:01 +10:00
Brendan Zabarauskas
5f307b1a26 Move values in matrix constructors 2012-11-02 00:19:43 +10:00
Brendan Zabarauskas
cfed77185a Improve naming scheme in constructor parameters 2012-11-02 00:12:03 +10:00
Brendan Zabarauskas
12498701a1 Convert vector arrays to separate fields in matrix types 2012-11-02 00:06:12 +10:00
Brendan Zabarauskas
35058611f3 Rename and move constructors 2012-11-01 17:41:42 +10:00
Brendan Zabarauskas
bf6bf8b3e6 Make library generic 2012-11-01 11:34:38 +10:00
Brendan Zabarauskas
891736a2d7 improve method names 2012-10-30 14:35:02 +10:00
Brendan Zabarauskas
28a9265568 Add and implement ToPtr trait 2012-10-30 13:24:50 +10:00
Brendan Zabarauskas
819c092321 Change inline attributes to inline(always) 2012-10-30 12:55:20 +10:00
Brendan Zabarauskas
6f0b49aa0c Move exact_eq to trait 2012-10-30 12:45:18 +10:00
Brendan Zabarauskas
c80b95da59 Moved constants to submodules 2012-10-30 00:11:27 +10:00
Brendan Zabarauskas
5d8319fff0 Fix collision of omath::vec and core::vec 2012-10-29 21:53:25 +10:00
Renamed from src/mat.rs (Browse further)