Andrew Tridgell
|
468dfe3faa
|
AP_Math: the windows arduino build is missing acosf()
|
13 years ago |
Andrew Tridgell
|
dd200cba31
|
Math: added location functions to math library
these do common calculations on struct Location
|
13 years ago |
Andrew Tridgell
|
c30b0d85a3
|
Math: moved more template functions to the .cpp files
save a bit more code space for larger functions
|
13 years ago |
Andrew Tridgell
|
289c64c0b9
|
Math: added vector3.rotate() and matrix3.rotation() methods
these operate on a "enum Rotation" which defines a set of standard
rotations. These are much faster than our previous method, plus use
less memory
|
13 years ago |
Andrew Tridgell
|
f5e6dc0757
|
Math: added is_inf() on vector3f
|
13 years ago |
Andrew Tridgell
|
145fc91701
|
AP_Math: added a .zero() method to Vector3f
|
13 years ago |
Andrew Tridgell
|
17170da96e
|
AP_Math: added is_nan() methods to vector3f and matrix3f
|
13 years ago |
Andrew Tridgell
|
62e92f406e
|
AP_Math: make out vector and matrix elements used types with fixed sizes
this prevents differences between CPU types
|
13 years ago |
jasonshort
|
7521ceed61
|
Vector3<T>() { x = y = x = 0; }
changed to :
Vector3<T>() { x = y = z = 0; }
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2600 f9c3cf11-9bcb-44bc-f272-b75c42450872
|
14 years ago |
DrZiplok@gmail.com
|
75e78dabae
|
Back out the memset optimisation. It helps with code size but causes inexplicable link-time failures (undefined references to __cxa_pure_virtual).
Thank you very much Mr GCC. Can I have my evening back?
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1352 f9c3cf11-9bcb-44bc-f272-b75c42450872
|
14 years ago |
DrZiplok@gmail.com
|
290635b354
|
Minor code size optimisation; use memset to zero *this rather than explicitly assigning zero to the vector elements. Still not quite optimal for matrix3 as it gets three memsets, but still cheaper in terms of code size.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1212 f9c3cf11-9bcb-44bc-f272-b75c42450872
|
14 years ago |
rmackay9@yahoo.com
|
e930dacb4d
|
AP_Math - initialise vector2 and vector3 x,y,z values to zero. Doug found (and I confirmed) that if vectors or matrices were declared in a function (i.e. a local variable), they would often have non-zero values. Global declarations don't have this problem - it's a C++ performance thing it seems.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@878 f9c3cf11-9bcb-44bc-f272-b75c42450872
|
14 years ago |
DrZiplok@gmail.com
|
7721e622aa
|
Rather than subclassing from the templated classes, just typedef directly to them.
This should solve the issues related to assigning to the convenience types.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@543 f9c3cf11-9bcb-44bc-f272-b75c42450872
|
15 years ago |
DrZiplok@gmail.com
|
ac2e14c4ec
|
Remove a bunch of probably wrong const cruft. Ditch the dubious array index operators from vector2.
|
15 years ago |
DrZiplok@gmail.com
|
815e5f871a
|
Remove the trivial operator= implementations, the default shallow copy is fine.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@537 f9c3cf11-9bcb-44bc-f272-b75c42450872
|
15 years ago |
DrZiplok@gmail.com
|
646045ef44
|
Some minor fixes prompted while looking at the code for other reasons.
Return non-const values from assignment. Fix operator* for matrix3.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@536 f9c3cf11-9bcb-44bc-f272-b75c42450872
|
15 years ago |
DrZiplok@gmail.com
|
097161cd8d
|
Beginnings of a math library for ArduPilot(Mega) systems.
|
15 years ago |