Commit Graph

64 Commits

Author SHA1 Message Date
Michael du Breuil aafa2f3998 AP_Math: Remove template parameter from constructor
Not valid in C++20, and makes GCC 14.1.1 very unhappy.
2024-07-10 10:07:24 +10:00
Pierre Kancir 2319a125d5 AP_Math: add missing include in vector2.h 2024-03-20 18:57:28 +11:00
Randy Mackay 46702e6c49 AP_Math: Vector2f::projected made const 2023-07-05 20:27:54 +09:00
Randy Mackay 8fcefb59b1 AP_Math: add Vector2f::dot 2022-03-30 15:34:14 +09:00
Andy Piper 87a369727a AP_Math: specialize float and double functions to use fabsf() and simple comparison otherwise 2022-02-13 14:43:37 +11:00
Randy Mackay 7daacfd63e AP_Math: vector2f gets float.h include 2021-07-22 08:51:41 +09:00
Andrew Tridgell 0f2f0d4cb2 AP_Math: allow for double EKF build 2021-07-10 07:20:41 +10:00
Andrew Tridgell 9b91cfe4ee AP_Math: implement double versions of some position control methods 2021-06-24 21:34:30 +10:00
Andrew Tridgell 3315ec5acc AP_Math: added tofloat() and todouble() methods to Vector2 and Vector3 2021-06-24 21:34:30 +10:00
Randy Mackay e2b46d05dc AP_Math: Vector2,3 get limit_length methods 2021-04-03 12:07:59 +09:00
Andrew Tridgell a56f07b74d AP_Math: allow build without other headers for vector2.h 2020-11-10 16:15:45 +11:00
Andrew Tridgell 24d0804249 AP_Math: added rotate() method to Vector2f 2020-07-06 14:46:48 +10:00
Peter Barker dad5b4e903 AP_Math: remove use of Vector2 as function 2020-06-16 11:00:44 +10:00
Randy Mackay f87ae7d445 AP_Math: add vector2f::offset_bearing 2020-01-01 13:38:41 +09:00
Randy Mackay c7ca9c04f8 AP_Math: add comment to vector2f::point_on_segment 2019-08-10 12:21:01 +09:00
Peter Barker 4c434c2df9 AP_Math: add WARN_IF_UNUSED to bool methods 2019-07-26 09:26:02 +09:00
Peter Barker da5d5c9203 AP_Math: add tests for Vector2 2019-06-13 19:36:49 +10:00
Andrew Tridgell a5fd7ac5ca AP_Math: add vector2f::closest_distance_between_line_and_point_squared
also add vector2f::closest_distance_between_line_and_point and vector2f::closest_distance_between_lines_squared
2019-06-11 13:13:22 +09:00
Andrew Tridgell 2457bf71d4 AP_Math: add simplified vector2f::closest_point
this simpler version assumes the line segment originates at the origin
2019-06-11 13:13:22 +09:00
Andrew Tridgell c8e49259a0 AP_Math: add vector2f::closest_distance_between_radian_and_point_squared 2019-06-11 13:13:22 +09:00
Andrew Tridgell dbf337e1b3 AP_Math: move closest_point to cpp 2019-06-11 13:13:22 +09:00
Andrew Tridgell bfc28dfde9 AP_Math: move normalize, reflect, project and perpendicular to cpp 2019-06-11 13:13:22 +09:00
Andrew Tridgell 01e541b7d1 AP_Math: minor formatting changes to length method 2019-06-11 13:13:22 +09:00
Andrew Tridgell 4c4de1f021 AP_Math: vector2f::length_squared always returns float 2019-06-11 13:13:22 +09:00
Andrew Tridgell 46617e6c72 AP_Math: remove unused include from Vector2 2019-06-11 13:13:22 +09:00
Andrew Tridgell 69781cda42 AP_Math: add Vector2::angle 2019-06-11 13:13:22 +09:00
Pierre Kancir 9e927d1376 AP_Math: correct copyright, add pragma-once 2019-02-06 23:20:07 +11:00
Pierre Kancir f1270b4b22 AP_Math: const correctness 2018-12-22 08:39:06 +09:00
Peter Barker 154d771e6c AP_Math: correct compilation when running MATH_CHECK_INDEXES 2018-10-19 08:46:43 +11:00
Peter Barker fa5757f618 AP_Math: fix float-equals warnings 2018-08-15 12:16:49 +10:00
Peter Barker 626467db14 AP_Math: add tests for line intersection 2018-08-14 19:41:45 +10:00
Randy Mackay c28cfcdc27 AP_Math: add Vector2f::circle_segment_intersection 2018-01-22 17:18:41 +09:00
Randy Mackay a655c36159 AP_Math: add Vector2f::segment_intersection 2018-01-22 17:18:41 +09:00
Andrew Tridgell 3d2c4ffa79 AP_Math: allow write to indexed vector2 2018-01-15 11:46:02 +11:00
Randy Mackay db45442de2 AP_Math: remove unused angle method 2017-06-09 15:21:58 +09:00
Michael du Breuil c5c94949bf AP_Math: Extend vector2::angle(vector2) to distinguish parallel and antiparallel vectors
There are a number of use cases where distingusihing antiparallel from parallel vectors is important
2017-03-02 00:50:44 +00:00
Mathieu OTHACEHE 152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Peter Barker 2047d53470 Math: move closest_point in from AC_Avoid 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
Peter Barker b6d0b028c3 AP_Math: add operator[] to Vector2 2016-07-25 20:24:37 +09:00
Gustavo Jose de Sousa 3b05ec1157 AP_Math: make vectors and matrix constructors constexpr
That allows some object to be constructed at compile time.
2016-05-16 19:08:36 -03:00
Ricardo de Almeida Gonzaga 5bd034a5a8 Global: start using cmath instead of math.h 2016-04-05 21:06:19 -07:00
Lucas De Marchi b4a8a0b961 AP_Math: replace header guard with pragma once 2016-03-16 18:40:41 +11:00
Randy Mackay 39340e70f8 Math: add Vector2 is_zero method 2015-09-16 15:10:25 +09:00
Andrew Tridgell 009913ec60 AP_Math: make is_nan const for quaternion and add .zero() for vector2 2014-02-21 20:24:47 +11:00
Andrew Tridgell 97b7130bb9 libraries: update license header to GPLv3
we switched to GPLv3 a long time ago, but neglected to update the
per-file license headers
2013-08-30 13:01:39 +10:00
Andrew Tridgell 5024da2695 AP_Math: fixed indent-tabs-mode 2013-05-30 09:51:51 +10:00
Andrew Tridgell 737f0305ef AP_Math: implement vector2 cross product
useful in DCM for faster yaw correction
2013-05-05 13:47:51 +10:00
Andrew Tridgell 43c3c60de2 AP_Math: moved a lot of vector templates to cpp from .h
this reduces the code size quite a lot on AVR
2013-04-12 12:48:08 +10:00
Andrew Tridgell 2d29a6a7be AP_Math: added Vector2f.angle()
useful for calculating the vector in polar coordinates
2013-04-12 12:48:08 +10:00