Andrew Tridgell
061b0580b3
AP_Math: added unsigned versions of constrain functions
...
sometimes it really does matter that we use constrain_uint32() instead
of constrain_int32(). For example, if we have a value like 0xFFFFFFFF
then the result will be very different
we should use unsigned constrain when dealing with unsigned values
2022-04-07 10:05:28 +10:00
Leonard Hall
594fc3f02d
AP_Math: Convert S-Curves to use maximum Snap to remove minimum time between waypoints
2022-03-10 10:30:49 +11:00
Joshua Henderson
4e3a66a4d3
AP_Math: quaternion add is_zero() & zero()
...
& length_squared() & add unit tests
2022-01-19 18:03:17 +11:00
Josh Henderson
0125ae26ac
AP_Math: enable SITL unit testing
2021-09-28 09:11:48 +10:00
Iampete1
22100dd37c
AP_Math: move to 32 digit rotation constants
2021-07-28 18:09:05 +10:00
Iampete1
f8220a8adf
AP_Math: tests: test quaternion rotation is the same as vector
2021-07-28 18:09:05 +10:00
Iampete1
6c5424aad6
AP_Math: add roll +- 45 rotations
2021-07-28 18:09:05 +10:00
Andrew Tridgell
75411afd21
AP_Math: added test for SCurve::calculate_path
...
this was the values shown in the core dump for failing guided mode
test in CI
2021-07-10 10:34:01 +09:00
Andrew Tridgell
168e860f70
AP_Math: fixed a few more single precision calls
2021-07-10 07:20:41 +10:00
Andrew Tridgell
31a6663797
AP_Math: fixed vel correction test build
2021-07-10 07:20:41 +10:00
Andrew Tridgell
0f2f0d4cb2
AP_Math: allow for double EKF build
2021-07-10 07:20:41 +10:00
Rishabh
b9fbf1a661
AP_Math: Update segment_to_segment_dis test
2021-06-12 13:31:52 +09:00
Pierre Kancir
519b1a6913
AP_Math: correct and increase unit test coverage
...
AP_Math: correct some tests
AP_Math: more vector2 tests
AP_Math: make test_vector2 complete
AP_Math: add initial unittest for vector3
2021-06-09 18:06:18 +10:00
Peter Barker
d77d258442
AP_Math: add tests for the sqrt_controller
2021-06-04 23:00:19 +10:00
hs293go
93a13bbf0e
AP_Math: Implement tests for the Quaternion class
...
These tests cover Quaternion multiplication, conversion to rotation
matrix, and the optimized rotation operator
2021-04-19 15:34:45 +10:00
Rishabh
f3d825bebe
AP_Math: Add unit tests for 3-D lines
2021-02-01 14:34:13 +09:00
Peter Barker
c81df7b5ad
AP_Math: add tests for circle-segment-intersection
2021-01-04 13:58:42 +11:00
Andrew Tridgell
b6a5509409
AP_Math: added test for vector2f rotate
2020-07-06 14:46:48 +10:00
Andrew Tridgell
3e853344f3
AP_Math: avoid build warnings
2020-05-10 15:11:22 +10:00
Peter Barker
84d999142f
AP_Math: add more tests for wrap functions
2019-09-18 12:57:02 +10:00
Peter Barker
da5d5c9203
AP_Math: add tests for Vector2
2019-06-13 19:36:49 +10:00
Peter Barker
e4de5a17d1
AP_Math: add pitch-7 to rotation tests
2019-05-29 17:12:32 +10:00
Peter Barker
977fe09276
AP_Math: add a more complex polygon for Polygon_outside tests
2019-05-29 15:34:02 +10:00
Peter Barker
d3971c18fa
AP_Math: more tests for closed-vs-open polygons
2019-05-29 15:34:02 +10:00
Peter Barker
d74e6db12e
AP_Math: add more tests for Polygon_outside
2019-05-29 15:34:02 +10:00
Peter Barker
36fe9a18a0
AP_Math: make Polygon_outside cope with being passed unclosed polygons
2019-05-29 15:34:02 +10:00
Peter Barker
64aafb2af2
AP_Math: add Polygon_outside tests for long template instantiation
2019-05-28 09:08:07 +10:00
Peter Barker
b35b65eed1
AP_Math: add GTEST suite for Polygon_outside
2019-05-28 09:08:07 +10:00
Andrew Tridgell
85ce10adfd
AP_Math: fixed test build
2019-05-15 15:33:48 +10:00
Peter Barker
dc14d7bce4
AP_Math: add another test for wrap_360_cd
2018-10-16 10:29:24 +11:00
Peter Barker
43f3d611b2
AP_Math: pragma away the float-equal test for the maths tests
...
There are legitimate reasons for doing direct equivalence in these files
2018-08-28 09:54:47 +10:00
Peter Barker
626467db14
AP_Math: add tests for line intersection
2018-08-14 19:41:45 +10:00
Peter Barker
6af0dcfed0
AP_Math: create a constrain_int64
...
The template system doesn't work across 32/64 bit builds (SITL
vs fmuv4), probably because int is typedef'd to int64
2018-06-15 08:01:22 +10:00
Jacob Walser
e738f33770
AP_Math: Add ROTATION_PITCH_315 and ROTATION_ROLL_90_PITCH_315
2018-04-24 13:04:37 +01:00
Francisco Ferreira
1ffe12008c
AP_Math: adapt test for new norm method API
2017-06-21 18:19:31 +09:00
Lucas De Marchi
2b9478f430
AP_Math: tests: make both arguments double
...
libraries/AP_Math/tests/test_math.cpp.3.o: In function `MathTest_IsEqual_Test::TestBody()':
test_math.cpp:(.text._ZN21MathTest_IsEqual_Test8TestBodyEv+0x1a0): undefined reference to `std::enable_if<std::is_floating_point<std::common_type<float, double>::type>::value, bool>::type is_equal<float, double>(float, double)'
collect2: error: ld returned 1 exit status
2017-02-06 09:27:22 -08:00
Lucas De Marchi
87c82ce0c6
AP_Math: add some more tests for constrain_value()
2017-01-27 12:15:20 -08:00
Lucas De Marchi
69a9cd3625
AP_Math: add tests to is_equal()
...
Contemplate the use of double values.
2017-01-27 12:15:19 -08:00
Pierre Kancir
47f1a754c5
AP_Math: add some test for vector2 equality test
2016-12-20 14:09:04 +00:00
Pierre Kancir
eae093cd2a
AP_Math: add test for is_equal for int
2016-12-20 14:09:04 +00:00
Peter Barker
779f78d471
AP_Math: vector3 perpendicular function
2016-07-25 20:24:37 +09:00
Peter Barker
f6cb0ffb6f
AP_Math: add Vector2f perpendicular
...
Add closest_distance_between_radial_and_point function
2016-07-25 20:24:37 +09:00
Lucas De Marchi
fa6f2c6b67
AP_Math: fix some coding style mistakes
...
- fix alignement of &
- remove const from bool arguments
2016-05-16 19:08:36 -03:00
Gustavo Jose de Sousa
9d34b3b996
AP_Math: AP_GeodesicGrid: make all methods static
...
Since all members are.
2016-05-16 19:08:36 -03:00
Gustavo Jose de Sousa
b34c04a4f9
AP_Math: test_geodesic_grid: test also non-centroid vectors
2016-05-16 19:08:36 -03:00
Gustavo Jose de Sousa
8e8ab3af96
AP_Math: AP_GeodesicGrid: remove section_triangle() function
...
That function was only being used by the unit tests and the benchmark. In order
to remove memory usage, the triangles will be removed, since we don't actually
need to keep them in real situations. Thus, this patch removes that function
and copy those triangles to the test and benchmark.
2016-05-16 19:08:36 -03:00
Gustavo Jose de Sousa
0ff05b7af3
AP_Math: test_geodesic_grid: test triangles indexes
...
That helps figuring out which intermediate step failed the high level call.
2016-05-16 19:08:36 -03:00
Gustavo Jose de Sousa
4398e1e49b
AP_Math: AP_GeodesicGrid: change order of triangles
...
- Change the order of the icosahedron triangles so that there's a uniform way of
finding the opposite triangle. The order visually still makes sense.
- Change test to accommodate the order change.
2016-05-16 19:08:36 -03:00
Gustavo Jose de Sousa
797a2da031
AP_Math: test_geodesic_grid: test when inclusive=true
2016-05-16 19:08:36 -03:00
Gustavo Jose de Sousa
b299261ad4
AP_Math: AP_GeodesicGrid: add first implementation
...
The search for the geodesic section is still naive in this version.
Additionally, add unit tests.
2016-05-16 19:08:35 -03:00