aboutsummaryrefslogtreecommitdiff
path: root/src/lib/mathlib/math
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/mathlib/math')
-rw-r--r--src/lib/mathlib/math/Dcm.cpp5
-rw-r--r--src/lib/mathlib/math/Dcm.hpp5
-rw-r--r--src/lib/mathlib/math/Vector3.cpp10
-rw-r--r--src/lib/mathlib/math/Vector3.hpp2
-rw-r--r--src/lib/mathlib/math/arm/Vector.hpp2
5 files changed, 23 insertions, 1 deletions
diff --git a/src/lib/mathlib/math/Dcm.cpp b/src/lib/mathlib/math/Dcm.cpp
index f509f7081..5c15d4d6d 100644
--- a/src/lib/mathlib/math/Dcm.cpp
+++ b/src/lib/mathlib/math/Dcm.cpp
@@ -135,6 +135,11 @@ Dcm::Dcm(const Dcm &right) :
{
}
+Dcm::Dcm(const Matrix &right) :
+ Matrix(right)
+{
+}
+
Dcm::~Dcm()
{
}
diff --git a/src/lib/mathlib/math/Dcm.hpp b/src/lib/mathlib/math/Dcm.hpp
index df8970d3a..38f697c15 100644
--- a/src/lib/mathlib/math/Dcm.hpp
+++ b/src/lib/mathlib/math/Dcm.hpp
@@ -97,6 +97,11 @@ public:
Dcm(const Dcm &right);
/**
+ * copy ctor (deep)
+ */
+ Dcm(const Matrix &right);
+
+ /**
* dtor
*/
virtual ~Dcm();
diff --git a/src/lib/mathlib/math/Vector3.cpp b/src/lib/mathlib/math/Vector3.cpp
index dcb85600e..3936650c6 100644
--- a/src/lib/mathlib/math/Vector3.cpp
+++ b/src/lib/mathlib/math/Vector3.cpp
@@ -84,6 +84,16 @@ Vector3 Vector3::cross(const Vector3 &b) const
return result;
}
+Vector3 Vector3::operator %(const Vector3 &v) const
+{
+ return cross(v);
+}
+
+float Vector3::operator *(const Vector3 &v) const
+{
+ return dot(v);
+}
+
int __EXPORT vector3Test()
{
printf("Test Vector3\t\t: ");
diff --git a/src/lib/mathlib/math/Vector3.hpp b/src/lib/mathlib/math/Vector3.hpp
index 568d9669a..2bf00f26b 100644
--- a/src/lib/mathlib/math/Vector3.hpp
+++ b/src/lib/mathlib/math/Vector3.hpp
@@ -54,6 +54,8 @@ public:
Vector3(const float *data);
virtual ~Vector3();
Vector3 cross(const Vector3 &b) const;
+ Vector3 operator %(const Vector3 &v) const;
+ float operator *(const Vector3 &v) const;
/**
* accessors
diff --git a/src/lib/mathlib/math/arm/Vector.hpp b/src/lib/mathlib/math/arm/Vector.hpp
index 52220fc15..a2526d0a2 100644
--- a/src/lib/mathlib/math/arm/Vector.hpp
+++ b/src/lib/mathlib/math/arm/Vector.hpp
@@ -141,7 +141,7 @@ public:
getRows());
return result;
}
- inline Vector operator*(float right) const {
+ inline Vector operator*(const float &right) const {
Vector result(getRows());
arm_scale_f32((float *)getData(),
right, result.getData(),