Y and Z axes swapped

Post questions, comments and feedback to our 3Dconnexion Mac Development Team.

Moderator: Moderators

Post Reply
Posts: 4
Joined: Mon Mar 20, 2017 1:26 pm

Y and Z axes swapped

Post by nbays1975 » Thu Apr 13, 2017 11:49 am

The SDK doc states that ConnexionDeviceState::axis should contain axis data in this order: Tx, Ty, Tz, Rx, Ry, Rz

The data returned by "ConnexionDeviceState::axis" appear to swap the Y and Z axes.
ConnexionDeviceState::axis[0] contains Tx data (pan left/right)
ConnexionDeviceState::axis[1] contains Tz data (zoom)
ConnexionDeviceState::axis[2] contains Ty data (pan up/down)
ConnexionDeviceState::axis[3] contains Rx data (tilt)
ConnexionDeviceState::axis[4] contains Rz data (roll)
ConnexionDeviceState::axis[5] contains Ry data (spin)

I'm getting the axis data from the messageArgument data passed in to my implementation of ConnexionMessageHandlerProc. I cast the messageArgument to ConnexionDeviceState and retrieve the axis data from the axis member. i.e static_cast<ConnexionDeviceState*>(messageArgument)->axis;

I tested this on two different machines with fresh installs of 3DxWare (version 10.4.4). Both exhibited the swapped axes.
The Windows implementation of our software is getting the expected axis data. i.e. SispwData::mData contains axis data in this order: Tx, Ty, Tz, Rx, Ry, Rz.

What could be causing the swapped axes on Mac?

Posts: 1
Joined: Wed Oct 04, 2017 11:54 am

Re: Y and Z axes swapped

Post by dzedsystems » Wed Oct 04, 2017 11:56 am

I just wanted to confirm the same issue. I'm surprised the SDK documentation doesn't mention this.
Also, is this something that may change in the future with a fix for the SDK?
Or should we assume it's always swapped on the Mac?

Posts: 15
Joined: Tue Jun 04, 2019 4:17 pm

Re: Y and Z axes swapped

Post by harem » Tue Jun 04, 2019 5:17 pm

Hey, if you give them the same names (0-Tx, 1-Ty, 2-Tz, etc.) then it becomes a right-handed coordinate system! That's good news if it's a deliberate change away from the unconventional left-handed one that it's supposed to have.

Post Reply