Commit Graph

495 Commits

Author SHA1 Message Date
Randy Mackay 70c6694798 AP_Common: add Location::linear_interpolate_alt 2021-07-22 08:51:41 +09:00
Peter Barker 2bd8a45c58 AP_Common: rename for AHRS restructuring 2021-07-21 21:01:39 +10:00
Andrew Tridgell 416c0724d2 AP_Common: use double precision for more location functions when available
this makes the location functions more accurate at long distances when
EKF double enabled
2021-07-14 17:34:40 +10:00
Andrew Tridgell 3ded1e6c10 AP_Common: added ftype precision offset call 2021-07-14 17:34:40 +10:00
Peter Barker fc2338612e AP_Common: stop setting terrain pointer in test_location
Also enable/disable as required for testing
2021-07-12 17:34:44 +10:00
Peter Barker b625596dfa AP_Common: use singleton to access AP_Terrain data 2021-07-12 17:34:44 +10:00
Andrew Tridgell 56d9134e38 AP_Common: adjust test_location values
for adjusted longitude scale accuracy
2021-07-10 07:20:41 +10:00
Andrew Tridgell a924f66f70 AP_Common: fixed comment 2021-07-10 07:20:41 +10:00
Andrew Tridgell 6a3b12956a AP_Common: make longitude_scale() a static
this changes the use of longitude_scale() to use the average latitude
instead of the lattitude at one end of the line when calculating
positions and distances. It means we obey the basic geometry rule
that:

 pos1 + offs = pos2
 pos2 - offs == pos1
2021-07-10 07:20:41 +10:00
Andrew Tridgell b8e42be5d1 AP_Common: added double methods for SITL 2021-07-10 07:20:41 +10:00
Andrew Tridgell a7f31929ea AP_Common: use longitude scaling from definitions.h 2021-06-29 17:26:34 +09:00
Peter Barker f69e2a49f6 AP_Common: add test for longitude wrapping 2021-06-25 15:33:55 +10:00
Andrew Tridgell 77d83b9c77 AP_Common: fixed Location class for wrap at 180 degrees longitude
this allows us to fly missions across the date line
2021-06-25 15:33:55 +10:00
Andrew Tridgell 61faeb2d7f AP_Common: added double methods for SITL 2021-06-24 21:34:30 +10:00
Pierre Kancir 983e402804 AP_Common: add more unitttests 2021-06-21 21:16:29 +10:00
Pierre Kancir 614ebff842 AP_Common: add more unit tests 2021-06-18 16:03:51 +10:00
Josh Henderson 206a414553 AP_Common: Location vec3 constructor zero out fields 2021-06-12 10:52:36 +09:00
Pierre Kancir ba94d8839f AP_Common: Make location PANIC message more explicit 2021-06-10 11:37:10 +10:00
Andy Piper 88bbec01b0 AP_Common: add firmware string without git hash. 2021-06-09 17:35:11 +10:00
Peter Barker 4abf854c45 AP_Common: remove weird cast of location object 2021-06-08 12:14:17 +10:00
Andrew Tridgell 6c0c6a1f48 AP_Common: added CLASS_NO_COPY() macro
used to make it easy to forbid copy of classes
2021-06-08 11:14:52 +10:00
Andrew Tridgell 71f207403e AP_Common: make angles in degrees end in _deg
to make it obvious it is not radians
2021-06-05 13:05:30 +10:00
Andrew Tridgell 5a7ee5a376 AP_Common: fixed null termination bug in ExpandingString
not all HALs zero memory on realloc
2021-04-21 07:12:55 +10:00
Andrew Tridgell 3fb280ff50 AP_Common: added return to ExpandingString append 2021-04-21 07:12:55 +10:00
Andrew Tridgell 6c29f8c24f AP_Common: added common nmea_printf code 2021-04-13 09:36:52 +10:00
Josh Henderson dce01fbb43 AP_Common: make Location(Vector3f) require ALTFRAME 2021-03-30 08:56:35 +09:00
Andrew Tridgell 504f500fae AP_Common: added get_writeable_string to ExpandingString 2021-01-21 13:09:21 +11:00
Andrew Tridgell 6c1891fcb3 AP_Common: added ExpandingString class
useful for @SYS output construction
2021-01-05 10:52:00 +11:00
Patrick José Pereira adda695630 AP_Common: Update AP_FWVersion struct to be used with binary parsers
- Add an uint64_t header to allow easy detection of struct
- Add an uint16_t version
    - MSB is for major release, compatibility break
    - LSB for minor version, no compatibility break
- Add pointer size variable to allow decode of pointers
- Add vehicle type information
- Add board type and subtype to allow hardware identification
- Set type of fw_type to uint8_t since enum is declared as int
- Organize struct to be packed inside 32bits system

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-10-07 19:32:12 +11:00
Randy Mackay d9de6e8de9 AP_Common: UINT16_VALUE, UINT32_VALUE get parentheses around arguments 2020-10-06 20:52:29 +11:00
Randy Mackay f3b193d6f8 AP_Common: add UINT32_VALUE 2020-10-06 20:52:29 +11:00
Patrick José Pereira 1ee03a0d2e AP_Common: Add missing const in AP_FWVersion variables
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-09-25 08:55:18 +10:00
Patrick José Pereira e81f9fccd9 AP_Common: Add new AP_FWVersionDefine header
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2020-09-23 20:58:35 +10:00
yaapu 6a0531c08a AP_Common: added missing bit set/clear functions 2020-09-02 05:56:46 +10:00
Patrick José Pereira 6e24880f87 AP_Common: missing: Add definition for strndupa
`strndupa` is only available when using the GNU GCC suite.
With this definition is possible to use the MUSL compiler.

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-08-25 07:15:00 -07:00
Rishabh 55923d8b7b AP_Common: Add new method to extrapolate location from bearing and pitch 2020-08-24 08:53:20 +09:00
Andrew Tridgell 18deb1c0bd AP_Common: added strncpy_noterm
used to suppress string termination warnings
2020-07-10 13:32:24 +10:00
Andrew Tridgell 7138811a57 AP_Common: fixed cast warnings for ExpandingArray 2020-07-07 10:23:00 +10:00
Michael du Breuil ab2dea5b86 AP_Common: Add % operator to TSIndex 2020-06-16 10:09:14 +10:00
Peter Barker 8e82ea2540 AP_Common: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
bugobliterator 88de9572aa AP_Common: use standard realloc method from HAL 2020-03-24 10:32:14 +11:00
Siddharth Purohit faacd03e3a AP_Common: add method that can help to put contraint on accessor type 2020-02-19 13:59:53 +09:00
Andrew Tridgell b8f9f171e0 AP_Common: added IGNORE_RETURN() macro 2020-01-16 20:36:54 +11:00
Peter Barker 6c0b4206c5 AP_Common: remove is-zero checks for Location::offset
Only one call in 160 actually passes these in as zeroes, so doing the
checks vastly outweighs the benefits of not doing the maths

We do call this a lot when doing terrain checks.
2019-11-19 10:49:19 +11:00
Michael du Breuil a99f67fd5b AP_Common: Add a radian method for getting location bearings 2019-10-25 08:48:22 +08:00
Andrew Tridgell c29867ecad AP_Common: removed fcntl overrides
not needed with AP_Filesystem, and fixes lots of warnings with newer
compilers
2019-09-28 14:19:46 +10:00
Michael du Breuil 819d1b5246 AP_Common: Include altitude in the init check for a location 2019-09-17 09:30:56 +10:00
Randy Mackay 246bfcf4a1 AP_Common: expanding array checks memory before allocating 2019-09-11 06:56:35 +10:00
murata a39228c453 AP_Common: Make hexadecimal character number conversion method common 2019-08-06 10:14:12 +10:00
Pierre Kancir 17c0cf8d5c AP_Common: check for feenableexcept on WAF 2019-08-06 09:37:30 +10:00