Commit Graph

661 Commits

Author SHA1 Message Date
sebcrozet f2bad264ef Re-export conversion functions. 2018-09-23 17:10:49 +02:00
sebcrozet eea13ffa7d Add swizzling up to dimension 3 to vectors. 2018-09-23 17:10:49 +02:00
sebcrozet 38c7ed3a11 Add methods to see a Perspective3 or Orthographic3 as a Projective3. 2018-09-22 16:15:11 +02:00
sebcrozet 23bde7dfd0 Reduce requiremens from Real to Ring on the cg module. 2018-09-22 16:15:11 +02:00
sebcrozet 7884f20ea7 Add quaternion dot product. 2018-09-22 16:15:11 +02:00
sebcrozet 832bf42b56 Add slerp for unit vectors. 2018-09-22 16:15:11 +02:00
sebcrozet a03fd6bff7 Add zip_zip_map to map on three matrices simultaneously. 2018-09-22 16:15:11 +02:00
Jacob Kiesel 787d20cff4 Add magnitude synonym functions for ease of use 2018-09-21 18:28:44 +02:00
sebcrozet 08685122ea Fix projective * point multiplication.
The scaling did not occur at the right time.
2018-09-20 20:59:01 +02:00
sebcrozet 99b54465c7 Add a copy_from_slice method.
Fix #381.
2018-09-13 08:37:20 +02:00
sebcrozet b272f3ba76 Fix compilation errors when the serde-serialize feature is enabled.
Fix #369.
2018-09-13 07:49:38 +02:00
Cloud Han 7615212e85 Fixed error in comments
M-by-N matrices are not square when M != N
2018-09-10 05:57:20 +02:00
sebcrozet dba752e91e Implement Send + Sync for SliceStorage{Mut}.
Fix #366.
2018-09-04 07:54:12 +02:00
sebcrozet 24eb7880f3 Release v0.16.0. 2018-07-20 16:35:57 +02:00
sebcrozet afb6317893 Fix Xargo build. 2018-07-20 16:33:59 +02:00
sebcrozet 378b39db9c Update impls of abomonation. 2018-07-20 16:33:59 +02:00
sebcrozet 3b19b6553e Update dependencies. 2018-07-20 16:33:59 +02:00
Benjamin Saunders aad94661c9 Document distribution uniformity, fix `Rotation2` distribution
Also tweak UnitComplex distribution for consistency
2018-07-10 20:17:52 +02:00
Sébastien Crozet 8e90e2adf7 Use StandardNormal on rand::distributions. 2018-07-10 20:17:52 +02:00
Sébastien Crozet a1d8aba501 Use StandardNormal only with the "std" feature. 2018-07-10 20:17:52 +02:00
Benjamin Saunders 352e71656d Uniformly distributed random rotations, unit vectors 2018-07-10 20:17:52 +02:00
Bernardo Meurer c9be27abb5 Added imax/imin() as variations of iamax/iamin() 2018-07-10 20:15:21 +02:00
sebcrozet 3eaa65c9cf Minor doc fixes. 2018-07-07 17:37:15 +02:00
Thomas Forgione b1616e236c Changed loops order in from_fn_generic 2018-06-16 14:27:55 +02:00
Simon Heath ba5bc77262 Removes DefaultAllocatorBound from mint::Point conversions 2018-06-09 00:36:19 +02:00
Simon Heath 491903e1de Replace mem::transmute() with pointer casts
And fix erroneous #[cfg]
2018-06-09 00:36:19 +02:00
Simon Heath a3c4dbca95 Adds conversions to and from mint Point types. 2018-06-09 00:36:19 +02:00
Hoàng Xuân Phú 4b3a157513 Fix mismatching description for is_empty 2018-05-29 07:55:06 +02:00
sebcrozet 3ee13ec528 Update changelog. 2018-05-27 12:25:58 +02:00
Shane Pearman 2814e09d31 Add from array impl for points. 2018-05-27 12:23:54 +02:00
sebcrozet c2d597e744 Release v0.15.0. 2018-05-26 22:26:06 +02:00
sebcrozet cdfa73eba6 Fix warnings. 2018-05-26 22:07:57 +02:00
sebcrozet 0c29a04042 Fix compilation with the 'mint' feature. 2018-05-26 22:07:57 +02:00
sebcrozet d759db682c Make the alloc feature actually work. 2018-05-26 22:07:57 +02:00
sebcrozet a51744f86b Update to rand 0.5. 2018-05-26 22:07:57 +02:00
sebcrozet 57fa307d4d Remove deprecated code related to the incoherent_fundamental_impl lint 2018-05-26 22:07:57 +02:00
sebcrozet 6c895ed383 gemm: don't return early for scalar types other than f32,f64. 2018-05-26 22:07:57 +02:00
sebcrozet 40e74e0186 Fix compilation with and without #![no_std]. 2018-05-26 22:07:57 +02:00
sebcrozet ca093fad29 Move core/* to base/* + add conditional compilation to dynamics matrices when no_std is enabled. 2018-05-26 22:07:57 +02:00
sebcrozet 88055dfc45 Update to approx 0.2. 2018-05-26 22:07:57 +02:00
sebcrozet 8cfd89f287 Add ::from_distribution to build a matrix from a user-provided distribution. 2018-05-17 15:59:51 +02:00
Sébastien Crozet 60fcff9e1d Re-add the ::new slice constructor, but mark them as deprecated. 2018-05-06 23:44:57 +02:00
sebcrozet d89e3dbac6 Rename the matrix slice constructors from `::new_*` to `_from_slice_*`. 2018-05-06 23:44:57 +02:00
sebcrozet fefba2ef4e Fix conflicting impls for isometry multiplication. 2018-05-06 23:44:57 +02:00
Sébastien Crozet 7357d17b77 Fix typos. 2018-05-06 23:31:36 +02:00
Sébastien Crozet 31e3547401 Add UnitQuaternion::{new_eps, from_scaled_axis_eps}. 2018-05-06 23:31:36 +02:00
Sébastien Crozet 1ac8bbd3d1 Add .axis_angle to UnitComplex and UnitQuaternion + .rotation_between_axis to UnitComplex. 2018-03-08 17:30:59 +01:00
Sébastien Crozet 5ce41060e5 Fix typos. 2018-02-03 15:25:04 +01:00
Sébastien Crozet daba16023a Comment the argument of the (private) extend_rows function. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 487af7d979 Fix matrix resizing with empty matrices.
Fix #306.
2018-02-03 13:59:05 +01:00
Sébastien Crozet 9bd2890875 Add documentation. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 84a01a720d Fix unnecessary parenthesis. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 662cc9cd7f Run rust fmt. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 6d4bfc3b79 Fix warnings. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 5c28af3a53 Add 3d cross-product matrix construction from a vector. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 3dc76caf7e Add Isometry × Unit<Vector>.
Fix #285.
2018-02-03 13:59:05 +01:00
Sébastien Crozet 144dfbd555 Add quadform/cmpy/cdpy. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 52598de44c Add rotation_between_axis/scaled_rotation_between_axis. 2018-02-03 13:59:05 +01:00
Sébastien Crozet dc41b55e5a Add iamin. 2018-02-03 13:59:05 +01:00
Sébastien Crozet fcfcc391b5 Rename slice constructors to remove the "_slice" after "new". 2018-02-03 13:59:05 +01:00
Sébastien Crozet 4cb43498a4 Add unsafe slice construction. 2018-02-03 13:59:05 +01:00
Sébastien Crozet a35e40b38e Add the `repeat` constructor. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 300b3d0452 Add transpose gemv. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 1a7f0dea9f Add column vector slice aliases. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 1ee8a702ea Fix quadratic form computation.
For the moment only the version that does not make any assumption regarding symmetry is
implemented.
2018-02-03 13:59:05 +01:00
Sébastien Crozet 39d20306f1 Add symmetric quadratic form computation. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 94c1ab8e7b Add matrix slice construction from array slices. 2018-02-03 13:59:05 +01:00
Sébastien Crozet adbb7d989e Add aliases for matrix slices. 2018-02-03 13:59:05 +01:00
Eduard Bopp 098d91cae0 Remove phantom data from matrix debug output
Addresses #295.
2018-01-31 19:24:42 +01:00
Nil Goyette 2ad227661a Fix RowVector3 cross product 2018-01-17 11:23:27 -05:00
Jack Wrenn 922b339fb0 Implement to_euler_angles for Rotation3 and UnitQuaternion
Resolves sebcrozet/nalgebra#243.
2018-01-09 15:15:57 -05:00
Colin Wallace e5259130e5 Fix spelling of "below" 2017-10-26 21:13:35 -07:00
Dzmitry Malyshau 94db3f533b Mint rebase 2017-10-09 20:22:24 +02:00
Dzmitry Malyshau 6b6a0717c2 Mint matrices 2017-10-09 20:22:24 +02:00
Dzmitry Malyshau ce2063c191 Mint Euler angles 2017-10-09 20:22:24 +02:00
Dzmitry Malyshau b0127ab5dc Mint quaternions 2017-10-09 20:22:24 +02:00
Dzmitry Malyshau 7d96007bdb Mint vector conversions 2017-10-09 20:22:24 +02:00
Eduard Bopp 3a1fb0ed88 Fix feature flagging for abomonation-serialize
The tests can now be run without the abomonation feature. Also fixes a
bug in the feature flagging for abomonation.
2017-09-18 20:10:32 +02:00
Sébastien Crozet 48f80d99cc Fix abomonation integration. 2017-08-15 19:36:38 +02:00
Sébastien Crozet afef66227e Merge branch 'master' into abomonation 2017-08-15 19:18:39 +02:00
Sébastien Crozet 740d19437c Fix unused_result lint errors. 2017-08-15 19:07:18 +02:00
Sébastien Crozet b475c4da9f Move `set_row`, `set_column` from matrix.rs to edition.rs. 2017-08-15 19:07:18 +02:00
Sébastien Crozet 3e349b80cf Implement serde traits for all linalg structs. 2017-08-15 19:07:18 +02:00
Sébastien Crozet e84b73c848 Deprecate into_owned and clone_owned for Quaternion, UnitQuaternion, and Transform. 2017-08-15 19:07:18 +02:00
Sébastien Crozet 70bb2cbe46 Implement Clone, Debug, Copy for all linalg structures. 2017-08-15 19:07:18 +02:00
Sébastien Crozet b22eb91a16 Add documentation. 2017-08-15 19:07:18 +02:00
Sébastien Crozet c258d13f98 Fix stepping for slices.
The previous implementation was wrong compared to what the documentatino claimed.
2017-08-15 19:07:18 +02:00
Sébastien Crozet 41f5231446 Add `assign` and generalize `map` to other return types.
The method assign replaces each components with the result of a closure (that takes the
corresponding component as parameter).
2017-08-15 19:07:18 +02:00
Sébastien Crozet 053de0576f nalgebra-lapack: unify API of LU.solve and Cholesky.solve with nalgebra. 2017-08-15 19:07:18 +02:00
Sébastien Crozet 00039c0a76 Add methods for computing decompositions. 2017-08-15 19:07:18 +02:00
Sébastien Crozet aaa359f3b0 Remove hand-written rustdoc doc for quaternon and unit_complex.
Those are now generated automatically by rustdoc.
2017-08-15 19:07:18 +02:00
Sébastien Crozet a7bce9cf3f symmetric_eigen: allow computing only eigenvalues. 2017-08-15 19:07:18 +02:00
Sébastien Crozet 3f70af97dd Add the most common matrix decompositions. 2017-08-15 19:07:18 +02:00
Eduard Bopp a45ef26375 Provide safer Abomonation impl for matrix arrays
This is more robust than delegating to a slice, which has been removed
upstream due to unsafety. Since we can rely on there being no pointer
indirection in a GenericArray, we just iterate over the array.
2017-08-14 20:53:55 +02:00
Eduard Bopp e09af0ca82 Implement Abomonation for remaining types 2017-08-14 14:32:02 +02:00
Eduard Bopp f67a7bd324 Implement Abomonation for rotations 2017-08-14 12:41:03 +02:00
Eduard Bopp 308177a7d6 Implement Abomonation for translations 2017-08-14 12:37:16 +02:00
Eduard Bopp 7c3a05f668 Implement Abomonation for dynamic matrices 2017-08-14 12:33:14 +02:00
Eduard Bopp 49f12a379d Implement Abomonation for static-size points 2017-08-14 12:18:47 +02:00
Eduard Bopp 65fa4cf740 Implement Abomonation for static matrices 2017-08-14 12:07:06 +02:00