mirror of
https://github.com/paparazzi/paparazzi.git
synced 2026-06-05 23:49:00 +08:00
[math] prevent division by zero in INT32_QUAT_NORMALIZE
This commit is contained in:
@@ -558,13 +558,15 @@ struct Int64Vect3 {
|
|||||||
QUAT_EXPLEMENTARY(q,q); \
|
QUAT_EXPLEMENTARY(q,q); \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define INT32_QUAT_NORMALIZE(q) { \
|
#define INT32_QUAT_NORMALIZE(q) { \
|
||||||
int32_t n; \
|
int32_t n; \
|
||||||
INT32_QUAT_NORM(n, q); \
|
INT32_QUAT_NORM(n, q); \
|
||||||
(q).qi = (q).qi * QUAT1_BFP_OF_REAL(1) / n; \
|
if (n > 0) { \
|
||||||
(q).qx = (q).qx * QUAT1_BFP_OF_REAL(1) / n; \
|
(q).qi = (q).qi * QUAT1_BFP_OF_REAL(1) / n; \
|
||||||
(q).qy = (q).qy * QUAT1_BFP_OF_REAL(1) / n; \
|
(q).qx = (q).qx * QUAT1_BFP_OF_REAL(1) / n; \
|
||||||
(q).qz = (q).qz * QUAT1_BFP_OF_REAL(1) / n; \
|
(q).qy = (q).qy * QUAT1_BFP_OF_REAL(1) / n; \
|
||||||
|
(q).qz = (q).qz * QUAT1_BFP_OF_REAL(1) / n; \
|
||||||
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
/* _a2c = _a2b comp _b2c , aka _a2c = _b2c * _a2b */
|
/* _a2c = _a2b comp _b2c , aka _a2c = _b2c * _a2b */
|
||||||
|
|||||||
Reference in New Issue
Block a user