Switching axis.

Questions and answers about 3Dconnexion devices on Windows.

Moderator: Moderators

JerryFlyGuy
Posts: 2
Joined: Mon Jan 15, 2007 2:21 pm
Location: Canada

Switching axis.

Post by JerryFlyGuy »

I'm just gettin my Pilot working on my work Comp. I had it working for the most part on my home comp [practicing before using it at work] I would like to be able to switch some of the axis around. ie; I would like to use the twisting function of the knob to turn the displayed item around its [as view] vertical axis. However currently when I twist the knob, it turns the item around its horizontal axis. This seem's very backward to me and I'm for-ever trying to rotate it and rolling it instead. How can I configure my axis better?

Jerry
The more I know, the more I realize I don't!
jwick
Moderator
Moderator
Posts: 3331
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Post by jwick »

AXIS MAPPING

You can rearrange the motion axes of the device. The GUI does this when you switch the zoom direction or select Reverse All Axes. This mapping is controlled by a setting in the config file. You can map any axis
to any direction you want, but we definitely suggest sticking with the options we provide. It can be very confusing for other users if you remap axes.

This mechanism only makes sense for applications that support the 3DxWare SDK (native motion events, not exclusively keyboard macros on axes).

The axes are mapped in the following order:

1=X (Pan Right/Left)
2=Y (Pan Up/Down)
3=Z (Zoom)
4=R (Tilt)
5=U (Spin)
6=V (Roll)

A couple of examples should help clarify the capabilities of this setting.

For example,
AXIS_MAP_HRZ_USER = "XYZRUV"

Instructs the driver to send axis 1 (Pan Right/Left motion of the device cap) to axis X in the application. This is the default. X is the Pan Right/Left axis implemented in applications that use the 3DxWare SDK.

You have a couple of options:

A) Reverse this axis

This is done by making the target lower case: "x" in this case.
E.g, reversing ALL axes, but not changing the order, would be indicated by changing to lower case:

AXIS_MAP_HRZ_USER = "xyzruv"


B) Remap to a different axis

This is done by indicating a different target axis for the axis.
E.g, indicating that the first axis (Pan Right/Left axis) to be sent to the application, should come from the second device axis (Pan Up/Down movement of the device cap) would be indicated like this:

AXIS_MAP_HRZ_USER = "YXZRUV"

Note that this also swapped the first two axes. It not only sent the second axis for the first, it is now sending the first axis as the second. It swapped X and Y. Not terribly useful. See the following example.


BEST EXAMPLE

This is a more useful example. It is used in the config file to swap the zoom ORIENTATION from "HoRiZontal (HRZ)" to "VeRTical (VRT)".

AXIS_MAP_VRT_USER = "XZyRVu"

Description:

The first axis X remains unchanged.

The second axis comes from the Z axis (in and out / to and fro / zoom) of the device. This is most likely the Up/down movement in the application. Some people like it this way because it acts more like a 2D mouse--pushing away from them causes UP movement on the screen.

The third axis comes from the device Y axis (up/down) but is also reversed in sign. This is probably the zoom direction in the application. The GoogleEarth configuration uses this to zoom down toward the
earth as you push down toward the table on the device cap.

The fourth axis (Tilt) comes in unchanged.


The fifth axis (Spin in the application) is mapped to come from the 6th axis of the device (roll of the device cap).

The sixth axis (Roll in the application) is mapped to come from the 5th axis of the device (spin of the device cap). It is also reversed in direction because it is lower case).


The easiest way to remap things is to do them one at a time.


Jim
3Dx Software Development
JerryFlyGuy
Posts: 2
Joined: Mon Jan 15, 2007 2:21 pm
Location: Canada

Post by JerryFlyGuy »

Jimbo, you lost me!

Can you just point me to where the axis configuration's are located I can't seem to find them [other than simply the zoom config & the axis reverses on the 'advanced' tab]

thanks!

Jerry
The more I know, the more I realize I don't!
jwick
Moderator
Moderator
Posts: 3331
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Post by jwick »

Hi Jerry,

Sorry. Was a bit of a Dilbert moment there--I'm an engineer, it's my job to bury you in useless info, yet not answer your question <G>.

The GUI does not have any way of allowing you to swap axes in any arbitrary way. You should first try changing the Zoom direction in the Device Configuration tab of the 3DxWare GUI.

Your app should work the way the demos we ship work. If your app is not supported, it might not be setup correctly.

We HIGHLY encourage you to learn how to use the device in your application in one of the two orientations we provide. If you do, you will have trained yourself to use it in many, many other applications. If you swap axes around you will still not be trained to use it in all the other apps and you will struggle if you switch apps. IMHO it is best to put the time in now to understand the way the device works and then you can extend that skill to all other 3Dx-enabled apps.

But, still, my father taught me that the customer is always right...

If our orientation options don't do what you want, you need to edit the config file for your application. To find out which config file your app is using, hover over the 3Dx systray icon while your app is running. This will probably list a filename like user00.scg. UserXX.scg files are kept in %APPDATA%\3Dconnexion\3DxWare\profiles. You have to edit this file with a Unicode compatible editor (use WordPad).

Look for the section for your device e.g. [SPACETRAVELER] or [SPACEPILOT]

In that section, find the
AXIS_MAP_HRZ_USER =
line.

To swap the Tilt and Spin axes, change this string from:
AXIS_MAP_HRZ_USER = "XYZRUV"
to:
AXIS_MAP_HRZ_USER = "XYZURV"

Then save the file and restart your application.

Let me know which application you are using.
Let me know if this doesn't do what you want.

Jim(bo)
apeshkess
Posts: 6
Joined: Mon Feb 04, 2008 12:53 pm

Post by apeshkess »

I'm trying to do the same thing.... trying to swap the roll and spin. The problem is that when I go into the control panel and set the zoom direction along the Z (into the table or pulling up off the table), then the spin and roll are opposite of what I want them to be.

My systray icon says I'm using "user00.scg" but when I do a search for that file, it doesn't come up. I'm using Pro/Engineer, so I used the edit from this thread: viewtopic.php?p=6969

I went into the file 3DxProE.scg to edit it. There are a bunch of lines that say something like:

[SPACEMOUSE]
; Axis Mappings (XYZRUV is the default)
AXIS_MAP_HRZ_DFLT = "XYZRUV"
AXIS_MAP_VRT_DFLT = "XZyRVu"

AXIS_MAP_HRZ_USER = "XYZRUV"
AXIS_MAP_VRT_USER = "XZyRVu"

So I know I need to swap the U and V. Do I do it for all of them? Or do they all need to read the same thing (and is is UV, or VU?)

thanks,

--Adi Peshkess
jwick
Moderator
Moderator
Posts: 3331
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Post by jwick »

Hello apeshkess,
I'm trying to do the same thing.... trying to swap the roll and spin. The problem is that when I go into the control panel and set the zoom direction along the Z (into the table or pulling up off the table), then the spin and roll are opposite of what I want them to be.
Do you mean, Roll and Spin also swap and you don't want them to swap? Or that they move in the opposite direction than you want?

My systray icon says I'm using "user00.scg" but when I do a search for that file, it doesn't come up.
user00.scg is saved in your %appdata%\3dconnexion\3dxware\profiles directory.

If you don't want the Roll and Spin axes to swap when you change the zoom direction, change:
AXIS_MAP_VRT_USER = "XZyRVu"
to
AXIS_MAP_VRT_USER = "XZyRUV"
in your user00.scg file (in your device's section).

Jim
3Dx Software Development
apeshkess
Posts: 6
Joined: Mon Feb 04, 2008 12:53 pm

Post by apeshkess »

[quote="jwick"]Hello apeshkess,

Do you mean, Roll and Spin also swap and you don't want them to swap? Or that they move in the opposite direction than you want?
[/quote]

The former. They swap also and I don't want them to swap.

[quote]
user00.scg is saved in your %appdata%\3dconnexion\3dxware\profiles directory. [/quote]


appdata?

The location of the file I changed was:

C:\Program Files\3Dconnexion\3Dconnexion 3DxSoftware\3DxWare\en_us\profiles\default

Under just "profiles" there was no "user00.scg"
apeshkess
Posts: 6
Joined: Mon Feb 04, 2008 12:53 pm

Post by apeshkess »

update: now when I go to the systray, it's saying it's using a file I made called "Copy of 3DxProE.scg"

I changed the lines as said, but still not getting what I want.

Do I need to reboot or something?
apeshkess
Posts: 6
Joined: Mon Feb 04, 2008 12:53 pm

Post by apeshkess »

UPDATE:

Got it to work, by using the "any.scg" file. Somehow that one worked when no others did.

Thanks

--Adi
Johnny C!
Posts: 35
Joined: Thu Oct 28, 2010 8:01 am

remap help, please

Post by Johnny C! »

Hello,
I have just upgraded from a Navigator to an Explorer for use in Inventor
here at work. I can't live without one or the other, but I'm really stoked about
the Explorer.

I would like to remap my Tilt to the standard Roll position on the cap,
and put my Roll to the standard Tilt position.

I have used this thread as a guide, switching R & V in the "Explorer" section, but when I make the changes in the .scg file & reboot, the Explorer config reverts back to the as shipped set up.

A little help, please.

Thanks!

John
"Once man has tasted flight,
he will walk the earth with
his eyes turned skyward,
for there he has been and
there he longs to return."
L. Da Vinci
jwick
Moderator
Moderator
Posts: 3331
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Post by jwick »

Where did you make the changes? If you have a scg file saved for this application under %APPDATA%\3dconnexion\3dxware\profiles(?), that file will be used, not the default one in the 3DxWare directory. Make your changes to the one in %APPDATA%. Also make sure that this file is being used while your application is running (hover over the systray icon).

One other wrinkle: make sure to change the USER settings, not the DFLT settings in the SpaceExplorer section. Only the USER settings are used. The DFLT settings are only there to be copied over the USER settings when you activate the "Restore Defaults" button in the GUI.

You don't need to reboot to get these changes to take effect.
Johnny C!
Posts: 35
Joined: Thu Oct 28, 2010 8:01 am

Post by Johnny C! »

jwick,
Thanks for the fast response.

Here is where I'm at. See my arrows out to right like this <-----...

[SPACEEXPLORER]
; Axis Mappings (XYZRUV is the default)
AXIS_MAP_HRZ_DFLT = "XYZRUV"
AXIS_MAP_VRT_DFLT = "XZyRVu"

AXIS_MAP_HRZ_USER = "XYZRUV" <------
AXIS_MAP_VRT_USER = "XZyRVu" <------


Do I need to edit both of these lines?
I am not using any axis reversals.

This is what I have tried a couple of times, so
far...

AXIS_MAP_HRZ_USER = "XYZVUR"

It seems pretty straight forward, but no luck yet.

Thanks again!

John
"Once man has tasted flight,
he will walk the earth with
his eyes turned skyward,
for there he has been and
there he longs to return."
L. Da Vinci
jwick
Moderator
Moderator
Posts: 3331
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Post by jwick »

What file are you editing?

The HRZ or VRT entries are used based on the ORIENTATION value at the top of the file.

e.g.,
ORIENTATION = HORIZONTAL

HORIZONTAL is the default -- check yours. Change the HRZ entries if it is HORIZONTAL. The other option is VERTICAL. This gets changed when you change the Zoom Direction in the GUI.

Are you sure that this scg file is being used by the driver when Inventor is in focus? It will be a USERxx.scg file if it is under %APPDATA%.
Johnny C!
Posts: 35
Joined: Thu Oct 28, 2010 8:01 am

Post by Johnny C! »

I don't know what I did differently this time, but it worked.
I need to re config my buttons to the way I had them,
but that's OK, if the tilt & roll will stay as programmed
just now.

I have another question. Can I run a Navigator on
a 64 bit, Windows machine. I tried downloading
the drivers on it yesterday, and it said no go.
Since my Navigator became orphaned by my
Explorer, I was just going to put it the new box.
Can this be done?

Thanks again for your help.

John
"Once man has tasted flight,
he will walk the earth with
his eyes turned skyward,
for there he has been and
there he longs to return."
L. Da Vinci
jwick
Moderator
Moderator
Posts: 3331
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Post by jwick »

Yes, you can use your SpaceNavigator on any machine, any O/S, with any application.

Can you give me the URL that says you can't, so I can check into it?
Locked