Brendan Zabarauskas
ba41a8ce5a
Implement the sum and product traits for matrices
...
Closes #264
2017-07-02 01:27:16 +10:00
Sébastien Crozet
b78dcb3155
Add methods to set a row or a column of the matrix.
2017-05-17 22:47:45 +02:00
Sébastien Crozet
35d2b6dc88
Add kronecker product.
...
Closes #248
2017-05-03 22:47:18 +02:00
Andreas Longva
a52b079578
Relax invertibility test in try_inverse()
...
The previous implementation of try_inverse() used an approximate
check of the determinant against 0 for small matrices to
determine if the matrix was invertible. This is not a reliable test,
and may fail for perfectly invertible matrices. This change
simply makes the test criterion an exact comparison instead.
2017-04-28 19:11:33 +02:00
Andreas Longva
9489e8f97e
Add basic tests for Matrix::try_inverse
2017-04-28 19:11:33 +02:00
Sébastien Crozet
e6ee11617a
Add a method to compute the trace of a matrix.
...
Fix #231 .
2017-03-19 22:44:08 +01:00
Sébastien Crozet
d6285e1165
Implement AsRef, AsMut, Into, From.
2017-02-18 13:44:03 +01:00
Sébastien Crozet
086e6e719f
Doc + slerp + conversions.
2017-02-12 18:17:09 +01:00
Sébastien Crozet
377f8b5596
Fix travis.yml.
2016-12-04 23:17:27 +01:00
Sébastien Crozet
99b6181b1e
Complete library rewrite.
...
See comments on #207 for details.
2016-12-04 22:47:36 +01:00
Sébastien Crozet
89c745fa17
Fix &DMatrix - DMatrix.
...
Fix #203 .
2016-09-06 19:42:28 +02:00
Dimitri Sabadie
4afb2ff476
Fixed tests ( #198 ).
2016-08-26 11:00:34 +02:00
Sébastien Crozet
c4728a33d4
Fix quaternion polar decomposition.
2016-08-16 12:40:39 +02:00
Sébastien Crozet
9c4bff1f85
Rename methods starting with new_with_
to from_
.
2016-08-16 10:48:41 +02:00
Dimitri 'phaazon' Sabadie
1fdd8979af
Fixed Zero and One for Quaternion.
2016-07-30 14:08:55 +02:00
Dimitri Sabadie
f9c1a2fd98
Added a test for Quaternion::exp().
2016-07-29 18:02:37 +02:00
Sébastien Crozet
df872f407d
Replace "col" by "column".
...
Related to #176 .
2016-04-18 08:32:12 +02:00
Sébastien Crozet
0c84d18850
Substitute: diag -> diagonal.
2016-04-17 19:47:56 +02:00
Sébastien Crozet
e6156727f2
Use full names for everything.
...
Note that `sqdist` becomes `distance_squared` and `sqnorm` becomes `norm_squared`.
Fix #176 .
2016-04-17 17:26:58 +02:00
Sébastien Crozet
9a87e2360d
Implement Outer for DVec. ( #186 )
...
Fix #181 .
2016-04-17 13:20:58 +02:00
Sébastien Crozet
9e739676a7
Implement *Assign
traits for everything.
...
Fix #184 .
2016-04-17 12:57:54 +02:00
Sébastien Crozet
4c58e37910
Make look_at, perspective, and orthographic projection matrices conform to computer-graphics convensions.
...
The `look_at` method itself has been split into a right-handed and a left-handed variant:
`look_at_rh` and `look_at_lh`.
Fix #171 , #158 , #88 , #79 .
2016-03-31 21:22:02 +02:00
Sébastien Crozet
91e14670ed
Add multiplications between Iso, Rot, and Sim.
2016-03-28 17:05:44 +02:00
Sébastien Crozet
5b7af11555
Add Sim/Rot, Sim/Iso, Iso/Rot multiplications.
2016-03-28 15:18:28 +02:00
Sébastien Crozet
02001667f7
Fix look_at matrices + implement Display for statically sized structures.
2016-03-28 14:56:25 +02:00
Sébastien Crozet
87a80c2de6
Fix tests.
2016-03-24 19:44:08 +01:00
Sébastien Crozet
f8f4924e47
Add vector perametrizable by their sizes.
2016-03-24 19:03:29 +01:00
Sébastien Crozet
bfd97beffe
Merge branch 'misc'
2016-01-10 15:46:06 +01:00
Sébastien Crozet
3cd4221bf7
Implement Row
and Col
for DMat
.
...
Fix #153 .
2016-01-10 14:49:55 +01:00
Sébastien Crozet
5cbbc25bb2
Make vectors indexable the same way as slices.
...
This includes range indexing.
In addition, for unification, the methods `.as_slice` and `.as_mut_slice` of DVec have been renamed
to `.as_ref` and `.as_mut`.
2016-01-10 14:49:37 +01:00
Oleg Beloglazov
c4bce82290
Implement Row & Col Traits for DMat
2016-01-10 16:03:04 +03:00
Daniel D
179a6560ce
Fix eigenvalue calculation for diagonal matrices
2015-11-14 15:40:35 +01:00
Daniel
c4753aaf65
Implemented QR algorithm with initial transformation to Hessenberg form and Wilkinson shift for symmetric matrices
2015-09-22 15:17:03 +02:00
Anders Kalør
5e41fbfe2a
Add RowSlice and ColSlice test cases for DMat
2015-08-27 16:53:20 +02:00
Tim Kuehn
e2c21c4ae2
Fix transpose_mut for square matrices.
...
And add a test for it.
2015-08-12 16:52:55 -07:00
Daniel
1716dd86db
Made tests more readable - missed a function
2015-08-08 17:22:47 +02:00
Daniel
9bb6325846
Made tests more readable
2015-08-08 14:52:57 +02:00
Daniel
dc571838bb
Added check for symmetricity of input matrix
2015-08-07 15:03:38 +02:00
Daniel
b197959e2b
Implemented Cholesky decomposition with tests
2015-08-07 14:44:25 +02:00
Arttu Ylä-Outinen
8b14cef4e7
Add a test for multiplication of non-square DMats.
...
Demonstrates a bug in Mul implementation.
2015-07-12 09:42:31 +03:00
mitchmindtree
51381ff84d
Allow for non-consuming std operations on DMat. Added DMat multiplication test.
2015-06-21 00:20:39 +10:00
Sébastien Crozet
410c3c9566
Add pointwise addition and subtraction for DMat
.
...
Fix #132 .
2015-06-06 12:59:47 +02:00
Sébastien Crozet
b859b32804
Add tests for ::angle_between
and ::rotation_between
.
2015-06-01 22:39:33 +02:00
Sébastien Crozet
0988b837dc
Update to the last rust-nighly.
...
Version of rustc: rustc 1.0.0-nightly (123a754cb 2015-03-24).
2015-03-25 22:39:06 +01:00
Pierre Krieger
7c415692c3
Update for rustc
2015-03-23 14:38:48 +01:00
Jameson Ernst
744e9782fc
Fix deprecated suffixes in tests
2015-03-01 12:35:11 -08:00
Eduard Bopp
870f9afb34
Fix dependency in arbitrary tests
2015-02-17 13:54:25 +01:00
Eduard Bopp
f14f240aa7
Migrate random generation to use crates.io rand
...
The standard library random generation facilities have been deprecated in
favour of a new crate on crates.io.
2015-02-17 13:45:16 +01:00
Eduard Bopp
7dd698423c
Avoid superfluous plugin usage in test
2015-02-17 13:28:40 +01:00
Eduard Bopp
5ca3e41375
Implement AssertEq for reference types
...
Just as the standard library's PartialEq is implemented for reference types,
the ApproxEq trait should be implemented on them as well. This is mostly an
ergonomic improvement for certain testing situations, where a method yields a
reference. For non-copy types it allows using the assert_approx_… macros, which
would otherwise not be possible.
2015-01-25 19:51:07 +01:00