Skip to content

Addition of Euler angle processing

Mainly concerning the ivas_orient_trk_Process() function, with a few helper functions. Ericsson requested processing of Euler angles, wrapped in QUATERNION structure format, coded as follows:

quat.w = -3.0f
quat.x = roll
quat.y = pitch
quat.z = yaw

(there were some inconsistencies in this format that have been harmonized - please review carefully)

When input in this coded Euler angle format is detected, the Euler angles inside ivas_orient_trk_Process() are converted to Quaternions and the tracked Rotation output is converted back to Euler angles for the QuatToRotMat() function to process further. The quaternion processing therefore remains exactly the same, except now it operates on local copies of the inputs, converted whenever necessary, and local output variables converted where necessary before returning.

NB: Euler angles are assumed in degrees, as per @norvell's reference material.

NB2: this also touches the recently merged FhG code under #ifdef OTR_REFERENCE_VECTOR_TRACKING - please verify your test cases @haeussler.

Related to #109

Edited by stoutjesdijk

Merge request reports

Loading