Sébastien Crozet
eb24c4063f
Remove the {Any,Float}{Pnt,Vec}Ext traits.
...
They are meaningless and too hard to implement in an ad-hoc way to be really useful.
2014-10-30 08:38:05 +01:00
Sébastien Crozet
074c9356bf
Rename: PartialOrd -> POrd, PartialOrdering -> POrdering.
...
This avoids name clashes with the standard library.
2014-10-30 08:38:05 +01:00
Sébastien Crozet
a960afa4f9
Make `AnyVec` inherit from `Basis`.
...
Every vector must have a basis.
2014-10-30 08:38:05 +01:00
Sébastien Crozet
2f273d655a
Rename: VecExt -> AnyVecExt, PntExt -> AnyPntExt.
2014-10-30 08:38:05 +01:00
Sébastien Crozet
25f564128b
Merge pull request #29 from steveklabnik/master
...
fail -> panic
2014-10-30 08:23:19 +01:00
Steve Klabnik
426ba307ab
fail -> panic
2014-10-30 00:25:47 -04:00
Sébastien Crozet
f998368fd7
Merge pull request #28 from globin/master
...
Upgrade to newer rust.
2014-10-22 17:05:28 +02:00
Robin Gloster
4e4eb62ffc
upgrade to newer rust
2014-10-22 13:35:17 +02:00
Sébastien Crozet
e2fc8aa764
Deprecate `to_pnt`, `as_pnt` and `VecAsPnt`.
...
Those are meaningless. Use `na::orig() + the_vector` instead.
2014-10-20 22:35:43 +02:00
Sébastien Crozet
276bf3f999
Update to the last rust-nightly.
...
Version of rustc: 0.13.0-nightly (222ae8b9b 2014-10-18 00:47:22 +0000).
2014-10-18 20:52:35 +02:00
Sébastien Crozet
8288ebdfab
Add quaternions to the feature list.
2014-10-14 22:24:10 +02:00
Sébastien Crozet
5ba9f27530
Add quaternions.
...
Fix #24 .
2014-10-14 22:20:49 +02:00
Sébastien Crozet
162346ab47
Fix typos.
2014-10-13 08:46:39 +02:00
Sébastien Crozet
0cf725f5f2
Add 3D orthogonal and perspective projection structures.
...
Fix #26 .
2014-10-12 20:40:46 +02:00
Sébastien Crozet
03eda09084
Some documentation fixes.
...
Fix #25 .
2014-10-12 10:35:56 +02:00
Sébastien Crozet
b6090042ac
Add a `Axpy` that implements y <- y + ax.
...
This is very useful for accumulations to compute, e.g. centers.
2014-10-12 09:24:16 +02:00
Sébastien Crozet
de2479b70f
Do not implement `Transform<Vec*> for Vec*`.
...
This is error prone as this is a no-op for vectors and a translation for points.
2014-10-11 00:23:10 +02:00
Sébastien Crozet
70de340498
Remove the `Iso * Vec` overload and the ability to Transform a Vector with an Iso.
...
This is too error prone as the user has to remember if he is using a vector or a point.
Istead, to transform a vector with an Isometry, use the internal rotation matrix of the isometry:
`iso.rotation * vector` instead of `iso * vector`.
The `Rotation` trait can also be used.
2014-10-10 22:21:05 +02:00
Sébastien Crozet
bf67f079e7
Add a function `nalgebra::center(a, b)` that computes the center of two points.
2014-10-10 21:24:18 +02:00
Sébastien Crozet
b3e7540b3c
Delete the deprecated `na::` module.
2014-10-10 20:57:20 +02:00
Sébastien Crozet
6fb6d35980
Documentation fixes.
2014-10-10 20:56:40 +02:00
Sébastien Crozet
e852eb4783
Fix the implementation of `ToHomogeneous` for `Iso*`.
2014-10-10 20:56:24 +02:00
Sébastien Crozet
7e9bb98823
Add `to_pnt` and `to_vec` methods.
2014-10-10 12:19:37 +02:00
Sébastien Crozet
924d8269d8
Add points.
...
This adds the Pnt{1,2,3,4,5,6} structures.
This adds the traits:
− AnyPnt
− FloatPnt
− PntExt
− FloatPntExt
− Orig (to return the zero point)
− PntAsVec
− VecAsPnt
This adds operator overloading:
− Pnt + Vec
− Pnt - Vec
− Pnt * Scalar
− Pnt / Scalar
− Pnt + Scalar
− Pnt - Scalar
− Iso * Pnt
− Rot * Pnt
− Pnt * Iso
− Pnt * Rot
This changes some behavior:
− Iso multiplication with a Vec does not translate the vector any more.
− ToHomogeneous adds a 0.0 at the end of a Vec and a 1.0 at the end of a Pnt.
− FromHomogeneous performs w-normalization on a Pnt, but not on a Vec.
− The Translate<Vec> trait is never implemented (i-e. a Vec is not to be translated).
cc #25
2014-10-10 11:45:20 +02:00
Sébastien Crozet
ba18f5aa70
Deprecate `na::`, move all reexport to the root crate.
...
This also moves the tests and benches to cargo-complient folders.
Fix #21 .
2014-09-28 19:22:57 +02:00
Sébastien Crozet
8f89ac421c
Update to the last rust.
...
Version of rustc: rustc 0.12.0-nightly (d64b4103d 2014-09-26 21:47:47 +0000).
2014-09-27 09:54:03 +02:00
Sébastien Crozet
a9c7fe7420
Fix the matrix inversion test.
...
This prevent the test from failing when the matrix is non-inversible.
2014-09-19 23:53:36 +02:00
Sébastien Crozet
086088a0ed
Fix the implementation of `Row` for fixed-size matrices.
...
Matrices are column-major.
2014-09-19 23:51:27 +02:00
Sébastien Crozet
1945cb09f2
Merge pull request #20 from bjz/warnings
...
Fix warnings
2014-09-19 23:43:46 +02:00
Sébastien Crozet
1a83622a2d
Merge pull request #19 from bjz/index-operators
...
Implement index operators
2014-09-19 23:43:14 +02:00
Brendan Zabarauskas
d3abbfcd4c
Fix warnings
2014-09-18 15:20:04 +10:00
Brendan Zabarauskas
b6959ef913
Implement index operators
...
Closes #18
2014-09-18 12:23:52 +10:00
Sébastien Crozet
972bbcc845
Merge pull request #17 from bfops/master
...
update for rustc 21d1f4d7c
2014-09-16 08:36:04 +02:00
Ben Foppa
6c8f14966c
update for rustc 21d1f4d7c
2014-09-15 21:30:36 -04:00
Sébastien Crozet
560dff3891
Update to the last rust-nightly.
...
Version of rustc: 0.12.0-pre-nightly (2e92c67dc 2014-08-28 23:56:20 +0000).
2014-08-29 21:35:42 +02:00
Sébastien Crozet
f83e7d25a8
Update .travis.yml.
2014-08-23 19:37:14 +02:00
Sébastien Crozet
1b7cd5fe1f
Fix .travis.yml to use rustup.
2014-08-18 21:05:36 +02:00
Sébastien Crozet
c408d5a0b2
Update to the last rust-nightly.
...
Version of rustc: 0.12.0-pre-nightly (01ec6fab2 2014-08-18 00:46:10 +0000).
2014-08-18 19:35:47 +02:00
Sébastien Crozet
ff95e2a9d8
Remove the shifting from the qr algorithm.
2014-08-17 22:42:16 +02:00
Sébastien Crozet
844092205e
Do not compute the matrix inverse if the determinant is near-zero.
2014-08-17 22:41:55 +02:00
Sébastien Crozet
314f0c0043
Add `na::eigen_qr` that performs an eigendecomposition using the qr algorithm.
2014-08-16 15:34:34 +02:00
Sébastien Crozet
663f8b3ccb
Add a `Diag` to build, get and set a matrix diagonal.
2014-08-16 13:22:53 +02:00
Sébastien Crozet
40c9915870
Add the types: DVec1, .., DVec6.
...
They are stack-allocated, dynamically sized vectors with a maximum size.
This is useful for slicing small matrices, without allocation.
2014-08-16 12:16:26 +02:00
Sébastien Crozet
7d6884c3df
Add a `Det` trait to compute the determinant + implement it for `Mat{1,2,3}`.
2014-08-11 19:54:13 +02:00
Sébastien Crozet
725f53d1e7
Add a `clean` rule to the makefile.
2014-07-27 09:13:43 +02:00
Sébastien Crozet
2f0234e7ac
Avoid modulo on `DMat::from_fn`.
2014-07-27 09:13:13 +02:00
Sébastien Crozet
335bdd8a01
Merge pull request #16 from nathanic/master
...
Fix coordinate calculation in DMat::from_fn().
2014-07-27 09:11:18 +02:00
Nathan Stien
ebe1ed1f16
Fix coordinate calculation in DMat::from_fn().
...
The builder function `f` was receiving incorrect coordinates, often
involving a uint underflow.
Added a test case to verify the new behavior.
2014-07-26 19:03:37 -05:00
Sébastien Crozet
97c2e71fd6
Remove `crate_type` from Cargo.toml.
2014-07-22 19:58:26 +02:00
Sébastien Crozet
5b1388888b
Update the compilation section of the README.
2014-07-14 17:56:35 +02:00