tracking using quaternarion data
We are trying to do head tracking with Vizard 2.51 and a Hiball tracker, and we're having trouble getting the code to work. We tried using the automatic tracking (the viz.tracker() command), but it doesn't update position data at all and the orientation is way off, with at least one of the axes reversed.
As a potential solution, we tried doing manual tracking. We were able to track the head position fine, but we are still having trouble with the head orientation. The problem seems to be that our Hiball tracker only outputs quaternion orientation data instead of Euler, and we don't know how to use quaternion data to update the head orientation. The viz.rotate command appears to only work with Euler data.
We would appreciate help getting either: code that would enable us to use the quaternion data directly to update the head orientation, or code that would covert the quaternion data to Euler (we found the function EulerToQuat, but we can't find a function to convert Quat to Euler). Or, if you have any other ideas, please let us know. Thanks!
|