Commit Graph

1282 Commits

Author SHA1 Message Date
Sébastien Crozet
ec700ab7cf Fix conflicting Default impl for unit-quaternions. 2021-10-14 11:48:12 +02:00
Sébastien Crozet
7275b5146e Implement Default for most geometry types 2021-10-14 11:39:22 +02:00
Sébastien Crozet
97a79a994b Add methods to compute the products of a single matrix components/rows/columns 2021-10-06 10:48:46 +02:00
Sébastien Crozet
2e9c8aef20
Merge pull request #1002 from MaxVerevkin/unsafe-dim
make Dim trait unsafe
2021-10-04 09:32:13 +02:00
Max Verevkin
65d3b42ff9 make Dim trait unsafe 2021-10-03 20:26:34 +03:00
Max Verevkin
ba7ededbf9 remove unnecessary T: Scalar 2021-09-26 21:07:34 +03:00
Max Verevkin
5cbff59f80 simplify Matrix::is_identity while also improving performance 2021-09-26 19:34:19 +03:00
Sébastien Crozet
7f236d88aa
Merge pull request #991 from MaxVerevkin/fix-ub
Fix UB in `Matrix::perp()`
2021-09-26 11:05:44 +02:00
Sébastien Crozet
5d9dbb62ef
Merge pull request #993 from MaxVerevkin/deny-unused-mut
deny unused_mut and unused_variables
2021-09-26 10:59:27 +02:00
Max Verevkin
f4a8b4cfa1 deny unused_mut and unused_variables 2021-09-25 22:05:31 +03:00
Max Verevkin
b91eecebcd Matrix::perp() fix UB 2021-09-25 21:52:09 +03:00
Sébastien Crozet
85202f85f7
Merge pull request #986 from Ralith/concise-debug
Concise Debug impls
2021-09-25 17:23:14 +02:00
Sébastien Crozet
dd8b6800f5
Merge pull request #992 from MaxVerevkin/exp-rs
exp.rs: factorial(): use precomputed factorial array
2021-09-25 12:32:11 +02:00
Sébastien Crozet
d12ad891f9
Merge pull request #981 from geieredgar/dev
Implement conversion traits for glam 0.18
2021-09-25 12:12:25 +02:00
Max Verevkin
ad8250c361 exp.rs: factorial(): use precomputed factorial array 2021-09-21 23:14:42 +03:00
Sébastien Crozet
654eca7f80
Merge pull request #979 from Fuuzetsu/cholesky-lax
Allow setting Cholesky field directly; more lax decomposition method
2021-09-17 05:16:39 -07:00
Benjamin Saunders
0541f13b26 Concise Debug impls
Replace the verbose derived (or nearly equivalent) Debug impls for
several newtypes with explicit impls that forward to the inner type,
making readable diagnostics logging much easier.
2021-09-12 10:56:25 -07:00
Mateusz Kowalczyk
fc3526b58a
Allow fallback value for Cholesky decomposition
This is useful in case where the values are very close to zero or
possibly even slightly negative. This can quite easily happen due to
numerical errors.

A common strategy is to replace these values with a small epsilon value
that keeps the matrix SPD. Some libraries even do this by default (such
as https://github.com/STOR-i/GaussianProcesses.jl/issues/1).

We point the user to `LU` decomposition and also make it clearer that
the method is basically a hack. The public method no longer takes an
`Option` which didn't really make sense. A private method is used to not
repeat implementation in `new`.
2021-09-03 09:01:04 +09:00
Mateusz Kowalczyk
a4c2ca941d
Allow constructing Cholesky struct directly
This is useful if there the data for the matrix comes from elsewhere,
such as a custom algorithm. One such use-case can be seen
https://github.com/nestordemeure/friedrich/issues/43 where we do special
handling for the try_sqrt or is_zero cases that would normally fail the
decomposition in `Cholesky::new()`.
2021-09-03 09:01:04 +09:00
Edgar Geier
bc21b6f1e6
Add support for conversion with glam 0.18 2021-08-30 18:31:21 +02:00
Sébastien Crozet
319597e137
Merge pull request #974 from cchillen/RotationDocumentation
Improve clarity of Rotation doc comments
2021-08-30 10:32:47 +02:00
Sébastien Crozet
90e531337a
Merge pull request #969 from remilauzier/dev
Fix some clippy warnings
2021-08-30 10:11:51 +02:00
Rémi Lauzier
ea9a9e8b7f
Fix some clippy warnings 2021-08-28 12:05:21 -04:00
cchillen
5b84c46840 Update imports in doc example. 2021-08-28 09:41:09 -04:00
cchillen
25341e40f0 Improve clarity of Rotation doc comments
The doc comments for `Rotation` incorreclty refer to quaternion instead of a rotation matrix. No code change, purely documentation.
2021-08-28 09:09:53 -04:00
raimundo saona
2233a38048 Implement conversion methods for RowDVector 2021-08-26 11:07:00 +02:00
Sébastien Crozet
bd9e0fb72c Add support for conversion with glam 0.16 and 0.17 2021-08-08 17:41:10 +02:00
Sébastien Crozet
a9ed6cb621 Fix wrong sign in UnitComplex::axis_angle 2021-08-08 13:23:09 +02:00
Sébastien Crozet
1bc919e0db
Merge pull request #962 from dimforge/non-copy-types
Tha clone wars: allow non-copy scalar types everywhere
2021-08-08 13:21:39 +02:00
Marius Knaust
649e0f5a59
Fix wrong reference in docs. 2021-08-07 12:06:15 +02:00
Sébastien Crozet
dd6c40016e Remove the Copy requirement from SimdRealField. 2021-08-04 17:34:25 +02:00
Sébastien Crozet
65b299557c More inlining. 2021-08-04 11:19:57 +02:00
Sébastien Crozet
6d57396a42 Remove the Scalar::is method, which is unsound. 2021-08-03 17:53:48 +02:00
Sébastien Crozet
eedb860565 Fix missing docs. 2021-08-03 17:27:15 +02:00
Sébastien Crozet
d609a2f174 Address unsoundness in the resizing API. 2021-08-03 17:02:42 +02:00
Sébastien Crozet
27ae30b46a First step to fix unsoundness on the resize API. 2021-08-03 10:59:03 +02:00
Sébastien Crozet
f67a81e50a Fix build with --all-features 2021-08-03 10:07:05 +02:00
Sébastien Crozet
7a1a4bcc02 Fix test and no-std builds. 2021-08-03 09:54:11 +02:00
Sébastien Crozet
8c6ebf2757 Implement the single-allocator-trait approach. 2021-08-02 18:41:46 +02:00
Sébastien Crozet
d34fed45bc Merge branch 'dev' into ub3 2021-08-02 18:40:33 +02:00
Sébastien Crozet
441bfcb3ff
Merge pull request #955 from qu1x/reflection
Add bias getter and alias for reflection.
2021-08-01 10:29:11 +02:00
Violeta Hernández
2243a11e89 Added some derives 2021-07-29 12:33:45 -05:00
Rémi Lauzier
c35f792b4f
Fix some warnings 2021-07-27 19:24:55 -04:00
Sébastien Crozet
2a80e96766
Merge pull request #948 from CAD97/ops-transform-complex
Add Transform × UnitComplex & friends
2021-07-27 15:22:53 +02:00
Sébastien Crozet
99a79d51f5
Merge pull request #925 from CAD97/bytemuck
Impl bytemuck traits for geometry types
2021-07-27 15:19:14 +02:00
Sébastien Crozet
15c4a25c96
Merge pull request #950 from CAD97/moar-const
Make `from_matrix_unchecked`es const
2021-07-27 15:18:42 +02:00
Rouven Spreckels
9824fbc67b Add reflection alias. 2021-07-27 15:18:07 +02:00
Rouven Spreckels
06e20b4b95 Add getter for reflection bias. Fix typos. 2021-07-27 15:17:30 +02:00
Sébastien Crozet
0d3af06e01
Merge pull request #952 from remilauzier/dev
Fix rust_2018_idioms warnings
2021-07-27 10:29:40 +02:00
Andreas Longva
de540aa7ff Do not require T: (De)Serialize for OPoint impl
The bounds recently got a little too strict by accident.
2021-07-26 17:57:24 +02:00