aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohan Jansen <jnsn.johan@gmail.com>2015-03-08 12:14:47 +0100
committerJohan Jansen <jnsn.johan@gmail.com>2015-03-08 12:14:47 +0100
commit11568c77d49285b7ea376e2696cdce1fdb57d13c (patch)
tree363826c2d4674268dee29081c28dc83e50906a6d
parent807e02b4a0dad03bd26d1d39ba5af3c5bae94750 (diff)
downloadpx4-firmware-11568c77d49285b7ea376e2696cdce1fdb57d13c.tar.gz
px4-firmware-11568c77d49285b7ea376e2696cdce1fdb57d13c.tar.bz2
px4-firmware-11568c77d49285b7ea376e2696cdce1fdb57d13c.zip
VectorMath: Add scalar division to custom EKF vector math
-rw-r--r--src/modules/ekf_att_pos_estimator/estimator_utilities.cpp10
-rw-r--r--src/modules/ekf_att_pos_estimator/estimator_utilities.h1
2 files changed, 11 insertions, 0 deletions
diff --git a/src/modules/ekf_att_pos_estimator/estimator_utilities.cpp b/src/modules/ekf_att_pos_estimator/estimator_utilities.cpp
index e2f4c7e82..64a25aaba 100644
--- a/src/modules/ekf_att_pos_estimator/estimator_utilities.cpp
+++ b/src/modules/ekf_att_pos_estimator/estimator_utilities.cpp
@@ -198,3 +198,13 @@ void swap_var(float &d1, float &d2)
d1 = d2;
d2 = tmp;
}
+
+// overload / operator to provide a vector scalar division
+Vector3f operator/(const Vector3f &vec, const float scalar)
+{
+ Vector3f vecOut;
+ vecOut.x = vec.x / scalar;
+ vecOut.y = vec.y / scalar;
+ vecOut.z = vec.z / scalar;
+ return vecOut;
+}
diff --git a/src/modules/ekf_att_pos_estimator/estimator_utilities.h b/src/modules/ekf_att_pos_estimator/estimator_utilities.h
index 95b83ead4..b2d790e27 100644
--- a/src/modules/ekf_att_pos_estimator/estimator_utilities.h
+++ b/src/modules/ekf_att_pos_estimator/estimator_utilities.h
@@ -89,6 +89,7 @@ Vector3f operator*( Mat3f matIn, Vector3f vecIn);
Mat3f operator*( Mat3f matIn1, Mat3f matIn2);
Vector3f operator%( Vector3f vecIn1, Vector3f vecIn2);
Vector3f operator*(Vector3f vecIn1, float sclIn1);
+Vector3f operator/(const Vector3f &vec, const float scalar);
void swap_var(float &d1, float &d2);