Commit Graph

144 Commits

Author SHA1 Message Date
Sébastien Crozet
b08a8384ae Add outer product. 2013-08-12 16:45:31 +02:00
Sébastien Crozet
3858c63291 Update to work with the last Rust api. 2013-08-11 16:07:34 +02:00
Sébastien Crozet
c59911168e Fix curly braces. 2013-08-05 10:13:44 +02:00
Sébastien Crozet
a810bf6008 Indentation fixes. 2013-08-05 09:44:56 +02:00
Sébastien Crozet
e75fe80966 Add documentation. 2013-07-24 16:50:40 +02:00
Sébastien Crozet
321574a827 from_homogeneous -> from 2013-07-23 23:26:47 +02:00
Sébastien Crozet
e2f34023ed Add traits MatCast and VecCast.
VecCast casts a Vec<N1> to a Vec<N2> with N1 and N2 bounded by NumCast.
MatCast casts a Mat<N1> to a Mat<N2> with N1 and N2 bounded by NumCast.
2013-07-22 23:42:35 +02:00
Sébastien Crozet
cf216f9b90 Removed occurences of copy/Copy + improved api.
Now, access to vector components are x, y, z, w, a, b, ... instead of at[i].
The method at(i) has the same (read only) effect as the old at[i].

Now, access to matrix components are m11, m12, ... instead of mij[offset(i, j)]...
The method at((i, j)) has the same effect as the old mij[offset(i, j)].

Automatic implementation of all traits the compiler supports has been added on the #[deriving]
clause for both matrices and vectors.
2013-07-20 15:07:49 +02:00
Sébastien Crozet
8918cb5d7e invert -> inplace_inverse to avoid name clash with iterators. 2013-07-13 13:34:41 +00:00
Sébastien Crozet
6f081b70b8 Add sphere sempling trait + Copy becomes Clone 2013-07-04 14:23:08 +00:00
Sébastien Crozet
68d601a642 Basis trait now uses internal iterators to avoid allocations. 2013-07-01 16:33:22 +00:00
Sébastien Crozet
02e22717a4 More rotation sugar. 2013-06-29 19:02:51 +00:00
Sébastien Crozet
f8515f4683 Add rotation wrt center of a matrix. 2013-06-29 18:59:04 +00:00
Sébastien Crozet
3bb470ac95 Add Column + Homogeneous + Indexable traits.
Column: to access a matrix column.
Homogeneous: to convert a matrix/vector from/to homogenous coordinates.
Indexable: to access a matrix/vector element using indices.
2013-06-29 11:40:31 +00:00
Sébastien Crozet
cd355dfb30 Refactor vec{1, 2, 3} implemenation + add some useful traits. 2013-06-28 21:03:40 +00:00
Sébastien Crozet
8abcdeeedc #[inline(always)] -> #[inline] 2013-06-27 17:40:37 +00:00
Sébastien Crozet
6723693b49 Refined traits for rotation/translation/transformation. 2013-06-27 16:16:07 +00:00
Sébastien Crozet
ffbcf4882a Removed a lot of Copy + made Rotation and Translation more flexible. 2013-06-26 20:56:30 +00:00
Sébastien Crozet
edc5bb616d Removed some useless references. 2013-06-24 21:38:52 +00:00
Sébastien Crozet
caee7eb423 workarounds -> traits. All ICE are now compiler errors. 2013-06-15 20:16:44 +00:00
Sébastien Crozet
6e627f3378 Add Ord instances. 2013-06-15 18:06:13 +00:00
Sébastien Crozet
513d4d7b08 Add inlining pragmas. 2013-06-13 16:48:28 +00:00
Sébastien Crozet
4cc5b178c8 Add DeltaTransformVector tait and fix transformation. 2013-06-13 14:44:15 +00:00
Sébastien Crozet
fb20ffdf8b Add automatic implementation of VectorSpace. 2013-06-11 11:03:16 +02:00
Sébastien Crozet
53486fe614 Changed flattening function names. 2013-06-10 09:46:42 +02:00
Sébastien Crozet
4c65f793e8 Add flatten trait. 2013-06-10 00:09:36 +00:00
Sébastien Crozet
c02edb9d09 Used a better type parametter name. 2013-06-09 23:36:47 +00:00
Sébastien Crozet
e9948f55d0 Add rotation wrt a point. 2013-06-06 22:57:07 +00:00
Sébastien Crozet
0b8058e88f Adapted for the compiler 'incomming' branch. 2013-06-01 20:50:00 +02:00
Sébastien Crozet
a77013e4c7 Use automatic ToStr deriving for everything. 2013-05-25 18:30:03 +00:00
Sébastien Crozet
898a87b46c Add SubDot trait and basic implementations. 2013-05-25 13:51:51 +00:00
Sébastien Crozet
2b9dc1d2e3 Fix comment. 2013-05-21 23:20:09 +00:00
Sébastien Crozet
3fa933d13f Add comments and adapted to new rust syntax. 2013-05-21 22:46:33 +00:00
Sébastien Crozet
4312daa53c Removed the triginometric trait workaround. 2013-05-20 10:02:02 +00:00
Sébastien Crozet
f3ed302874 Add delta-transformation. 2013-05-19 19:45:04 +00:00
Sébastien Crozet
dc0757b2e5 Add rotation and translation traits. 2013-05-19 11:44:27 +00:00
Sébastien Crozet
01d37a1b56 Refined ScalaOp trait. 2013-05-18 18:06:36 +00:00
Sébastien Crozet
890cdb73f2 Add tests and basis generation. 2013-05-18 17:04:03 +00:00
Sébastien Crozet
98b484c311 Fix readme for workarounds. 2013-05-17 22:13:07 +00:00
Sébastien Crozet
7a58f2c66a Add comments for traits. 2013-05-16 21:59:41 +00:00
Sébastien Crozet
d636fdd346 Add matrix adaptors and addapted to the now rust features. 2013-05-16 21:30:39 +00:00
Sébastien Crozet
30d82f2408 Add n-dimensional vector and matrix. 2013-05-15 00:18:13 +00:00
Sébastien Crozet
4582492fda Addesome traits and configuration file. 2013-05-14 21:08:29 +00:00
Sébastien Crozet
8b18310c3c Add basic operations. 2013-05-14 11:35:01 +00:00