Sotiris Papatheodorou
251ec42087
Return 0 volume for empty AlignedBox
2024-03-04 17:32:44 +00:00
Antonio Sánchez
043442e21b
Fix preshear transformation.
2024-01-30 06:37:33 +00:00
Tobias Wood
f38e16c193
Apply clang-format
2023-11-29 11:12:48 +00:00
François Girinon
92a77a596b
Fix call to static functions from device by adding EIGEN_DEVICE_FUNC attribute to run methods
2023-09-13 04:16:52 +00:00
Antonio Sánchez
6e4d5d4832
Add IWYU private pragmas to internal headers.
2023-08-21 16:25:22 +00:00
H S Helson Go
bc57b926a0
Add Quaternion constructor from real scalar and imaginary vector
2023-06-27 05:38:17 +00:00
Rasmus Munk Larsen
de1c884687
Add reference to writeup of approach used in canonicalEulerAngles.
2023-05-24 15:52:26 +00:00
Juraj Oršulić
c18f94e3b0
Geometry/EulerAngles: introduce canonicalEulerAngles
2023-05-19 15:42:22 +00:00
Rasmus Munk Larsen
1321821e86
Add missing braces in Umeyama.h
2023-05-09 19:10:50 +00:00
Rasmus Munk Larsen
524c329ab2
Work around compiler bug in Umeyama.h.
2023-05-09 18:53:56 +00:00
Rasmus Munk Larsen
0b51f763cb
Revert "Geometry/EulerAngles: make sure that returned solution has canonical ranges"
...
This reverts commit 7f06bcae2c4aae657fded7c7b999d69ee68962d9
2023-04-27 00:06:23 +00:00
Juraj Oršulić
7f06bcae2c
Geometry/EulerAngles: make sure that returned solution has canonical ranges
2023-04-19 19:12:24 +00:00
Gabriele Buondonno
6431dfdb50
Cross product for vectors of size 2. Fixes #1037
2022-11-15 22:39:42 +00:00
Rasmus Munk Larsen
273e0c884e
Revert "Add constexpr, test for C++14 constexpr."
2022-09-16 21:14:29 +00:00
Tobias Schlüter
133498c329
Add constexpr, test for C++14 constexpr.
2022-09-07 03:42:34 +00:00
William Talbot
2c0ef43b48
Added Scaling function overload for vector rvalue reference
2022-04-04 16:50:09 +00:00
Erik Schultheis
421cbf0866
Replace Eigen type metaprogramming with corresponding std types and make use of alias templates
2022-03-16 16:43:40 +00:00
Tobias Schlüter
cd2ba9d03e
Add construct_at, destroy_at wrappers. Use throughout.
2022-03-08 20:43:22 +00:00
Arthur
18b50458b6
Update SVD Module with Options template parameter
2022-02-02 00:15:44 +00:00
Arthur
5fe0115724
Update comment referencing removed macro EIGEN_SIZE_MIN_PREFER_DYNAMIC
2022-01-14 19:29:47 +00:00
Kolja Brix
8d81a2339c
Reduce usage of reserved names
2022-01-10 20:53:29 +00:00
Erik Schultheis
c20e908ebc
turn some macros intro constexpr functions
2021-12-10 19:27:01 +00:00
Rasmus Munk Larsen
085c2fc5d5
Revert "Update SVD Module to allow specifying computation options with a...
2021-11-30 18:45:54 +00:00
Arthur
eef33946b7
Update SVD Module to allow specifying computation options with a template parameter. Resolves #2051
2021-11-29 20:50:46 +00:00
Erik Schultheis
f33a31b823
removed EIGEN_HAS_CXX11_* and redundant EIGEN_COMP_CXXVER checks
2021-11-29 19:18:57 +00:00
Pablo Speciale
d04edff570
Update Umeyama.h: src_var
is only used when with_scaling == true
. Therefore, the actual computation can be avoided when with_scaling == false
.
2021-11-16 17:58:22 +00:00
Rasmus Munk Larsen
2b9297196c
Update Transform.h to make transform_construct_from_matrix
and transform_take_affine_part
callable from device code. Fixes #2377 .
2021-11-16 00:58:30 +00:00
Gilad
0d73440fb2
Documentation of Quaternion constructor from MatrixBase
2021-11-04 16:21:26 +00:00
benardp
b63c096fbb
Extend EIGEN_QT_SUPPORT to Qt6
2021-10-23 23:43:06 +00:00
Rasmus Munk Larsen
6cadab6896
Clean up EIGEN_STATIC_ASSERT to only use standard c++11 static_assert.
2021-09-16 20:43:54 +00:00
Rasmus Munk Larsen
d7d0bf832d
Issue an error in case of direct inclusion of internal headers.
2021-09-10 19:12:26 +00:00
Alexander Karatarakis
4ba872bd75
Avoid leading underscore followed by cap in template identifiers
2021-08-04 22:41:52 +00:00
Antonio Sanchez
12e8d57108
Remove pset, replace with ploadu.
...
We can't make guarantees on alignment for existing calls to `pset`,
so we should default to loading unaligned. But in that case, we should
just use `ploadu` directly. For loading constants, this load should hopefully
get optimized away.
This is causing segfaults in Google Maps.
2021-06-16 18:41:17 -07:00
Rasmus Munk Larsen
fc87e2cbaa
Use bit_cast to create -0.0 for floating point types to avoid compiler optimization changing sign with --ffast-math enabled.
2021-06-11 02:35:53 +00:00
Steve Bronder
e7b8643d70
Revert "Revert "Adds EIGEN_CONSTEXPR and EIGEN_NOEXCEPT to rows(), cols(), innerStride(), outerStride(), and size()""
...
This reverts commit 5f0b4a4010af4cbf6161a0d1a03a747addc44a5d.
2021-03-24 18:14:56 +00:00
David Tellenbach
5f0b4a4010
Revert "Adds EIGEN_CONSTEXPR and EIGEN_NOEXCEPT to rows(), cols(), innerStride(), outerStride(), and size()"
...
This reverts commit 6cbb3038ac48cb5fe17eba4dfbf26e3e798041f1 because it
breaks clang-10 builds on x86 and aarch64 when C++11 is enabled.
2021-03-05 13:16:43 +01:00
Steve Bronder
6cbb3038ac
Adds EIGEN_CONSTEXPR and EIGEN_NOEXCEPT to rows(), cols(), innerStride(), outerStride(), and size()
2021-03-04 18:58:08 +00:00
Rasmus Munk Larsen
98ca58b02c
Cast anonymous enums to int when used in expressions.
2021-02-24 23:50:06 +00:00
Guoqiang QI
38ae5353ab
1)provide a better generic paddsub op implementation
...
2)make paddsub op support the Packet2cf/Packet4f/Packet2f in NEON
3)make paddsub op support the Packet2cf/Packet4f in SSE
2021-01-13 22:54:03 +00:00
Antonio Sanchez
2044084979
Remove TODO from Transform::computeScaleRotation()
...
Upon investigation, `JacobiSVD` is significantly faster than `BDCSVD`
for small matrices (twice as fast for 2x2, 20% faster for 3x3,
1% faster for 10x10). Since the majority of cases will be small,
let's stick with `JacobiSVD`. See !361 .
2021-01-11 11:30:01 -08:00
Antonio Sanchez
3daf92c7a5
Transform::computeScalingRotation flush determinant to +/- 1.
...
In the previous code, in attempting to correct for a negative
determinant, we end up multiplying and dividing by a number that
is often very near, but not exactly +/-1. By flushing to +/-1,
we can replace a division with a multiplication, and results
are more numerically consistent.
2021-01-11 10:13:38 -08:00
Essex Edwards
e741b43668
Make Transform::computeRotationScaling(0,&S) continuous
2021-01-07 17:45:14 +00:00
rgreenblatt
fdf2ee62c5
Fix missing EIGEN_DEVICE_FUNC
2020-12-20 23:22:53 -05:00
Jim Lersch
a7170f2aca
Fix doxygen class blocks that were not associated with the correct classes.
2020-11-27 08:48:11 -07:00
David Tellenbach
4091f6b25c
Drop EIGEN_USING_STD_MATH in favour of EIGEN_USING_STD
2020-10-09 02:05:05 +02:00
Antonio Sanchez
d5a0d89491
Fix alignedbox 32-bit precision test failure.
...
The current `test/geo_alignedbox` tests fail on 32-bit arm due to small floating-point errors.
In particular, the following is not guaranteed to hold:
```
IsometryTransform identity = IsometryTransform::Identity();
BoxType transformedC;
transformedC.extend(c.transformed(identity));
VERIFY(transformedC.contains(c));
```
since `c.transformed(identity)` is ever-so-slightly different from `c`. Instead, we replace this test with one that checks an identity transform is within floating-point precision of `c`.
Also updated the condition on `AlignedBox::transform(...)` to only accept `Affine`, `AffineCompact`, and `Isometry` modes explicitly. Otherwise, invalid combinations of modes would also incorrectly pass the assertion.
2020-09-30 08:42:03 -07:00
Martin Pecka
6425e875a1
Added AlignedBox::transform(AffineTransform).
2020-09-28 18:06:23 +00:00
Rasmus Munk Larsen
d10b27fe37
Add missing inline keyword in Quaternion.h.
2020-08-14 17:51:04 +00:00
Alexander Turkin
60faa9f897
user-defined copy operations removed in favor of compiler-generated ones
2020-07-20 14:59:35 +03:00
Rasmus Munk Larsen
ed00df445d
Guard operator<< by EIGEN_NO_IO.
2020-07-09 19:52:44 +00:00