From 17170da96e1539cc4b29b30dfdf448e6fdc487d1 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Thu, 23 Feb 2012 22:55:59 +1100 Subject: [PATCH] AP_Math: added is_nan() methods to vector3f and matrix3f --- libraries/AP_Math/matrix3.h | 4 ++++ libraries/AP_Math/vector3.h | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/libraries/AP_Math/matrix3.h b/libraries/AP_Math/matrix3.h index c279728baf..0df2ae7bce 100644 --- a/libraries/AP_Math/matrix3.h +++ b/libraries/AP_Math/matrix3.h @@ -124,6 +124,10 @@ public: Matrix3 transpose(void) { return *this = transposed(); } + // check if any elements are NAN + bool is_nan(void) + { return a.is_nan() || b.is_nan() || c.is_nan(); } + }; typedef Matrix3 Matrix3i; diff --git a/libraries/AP_Math/vector3.h b/libraries/AP_Math/vector3.h index e77cd99f1b..caa1ad5398 100644 --- a/libraries/AP_Math/vector3.h +++ b/libraries/AP_Math/vector3.h @@ -173,6 +173,10 @@ public: T angle_normalized(const Vector3 &v1, const Vector3 &v2) { return (T)acosf(v1*v2); } + // check if any elements are NAN + bool is_nan(void) + { return isnan(x) || isnan(y) || isnan(z); } + }; typedef Vector3 Vector3i;