Is there a best way to use 3Dconnexion for object scaling?
Moderator: Moderators
-
- Posts: 9
- Joined: Tue Jan 20, 2015 5:38 pm
Is there a best way to use 3Dconnexion for object scaling?
Hi, I just bought a SpaceMouse Pro and kind of interested in the object manipulation (translation and rotation of the teapot). However, not sure how to use the SpaceMouse Pro to do object scaling (I mean, change the size of the teapot)
I think maybe use a switch button? Then, when the button is not clicked, the forward and backward of the 3Dconnexion controller cap will move the object forward and backward. If the button is clicked, then the forward and backward of the 3Dconnexion controller cap will make the object larger or smaller. Not sure if the scaling should work this way?
Or, with the combination usage of SpaceMouse and conventional mouse, we should still use the conventional mouse for object scaling?
Thanks a lot.
I think maybe use a switch button? Then, when the button is not clicked, the forward and backward of the 3Dconnexion controller cap will move the object forward and backward. If the button is clicked, then the forward and backward of the 3Dconnexion controller cap will make the object larger or smaller. Not sure if the scaling should work this way?
Or, with the combination usage of SpaceMouse and conventional mouse, we should still use the conventional mouse for object scaling?
Thanks a lot.
Re: Is there a best way to use 3Dconnexion for object scalin
Hi superwavelet,
In the higher end of the product range, there are two buttons to increase and decrease the "speed" of the device (change the scaling factor of the motion sensor). You could assign two actions to two different buttons, one to increase the size of the object and the other to decrease.
In the higher end of the product range, there are two buttons to increase and decrease the "speed" of the device (change the scaling factor of the motion sensor). You could assign two actions to two different buttons, one to increase the size of the object and the other to decrease.
-
- Posts: 9
- Joined: Tue Jan 20, 2015 5:38 pm
Re: Is there a best way to use 3Dconnexion for object scalin
ngomes wrote:Hi superwavelet,
In the higher end of the product range, there are two buttons to increase and decrease the "speed" of the device (change the scaling factor of the motion sensor). You could assign two actions to two different buttons, one to increase the size of the object and the other to decrease.
Thanks a lot.
So, you mean, instead of using the controller cap (forward and backward movement), the standard way for 3Dconnexion product to change the size of the object is rely on pushing buttons around the cap?
Thanks again.
Re: Is there a best way to use 3Dconnexion for object scalin
Not sure what you mean by "size".
Pushing cap backward/forwards will move the view/camera nearer or farther (depends on application and/or navigation mode) to the model (the teapot). If you bring a camera (or "eye" position) closer to a model, the "size" drawn on the display (the projected render) will increase but the model "size" (say, measured in inches or meters) will stay constant.
If you are developing 3D mouse support in your application, you need to change the "zoom" level for parallel/orthographic projections and move the camera (or "eye" and/or "target" positions) for perspective projects.
Refer to the 3DxWare SDK doc for additional details.
Now, if you want to change (edit) a model's size, then you can assign such an action to a button, just like we pre-assign a "speed increase" to the "+" button of some 3D mice.
Pushing cap backward/forwards will move the view/camera nearer or farther (depends on application and/or navigation mode) to the model (the teapot). If you bring a camera (or "eye" position) closer to a model, the "size" drawn on the display (the projected render) will increase but the model "size" (say, measured in inches or meters) will stay constant.
If you are developing 3D mouse support in your application, you need to change the "zoom" level for parallel/orthographic projections and move the camera (or "eye" and/or "target" positions) for perspective projects.
Refer to the 3DxWare SDK doc for additional details.
Now, if you want to change (edit) a model's size, then you can assign such an action to a button, just like we pre-assign a "speed increase" to the "+" button of some 3D mice.
-
- Posts: 9
- Joined: Tue Jan 20, 2015 5:38 pm
Re: Is there a best way to use 3Dconnexion for object scalin
Thank you so much. yes, what I want to do is to change the model's size, like expanding a bubble, but keep the camera at a fixed location. However, I am not sure which way to change the size is better? Because I think maybe we could move the cap forward and backward to increase/ decrease the model size. But I am not sure if this method is not as good as you mentioned using the button.ngomes wrote:Not sure what you mean by "size".
Pushing cap backward/forwards will move the view/camera nearer or farther (depends on application and/or navigation mode) to the model (the teapot). If you bring a camera (or "eye" position) closer to a model, the "size" drawn on the display (the projected render) will increase but the model "size" (say, measured in inches or meters) will stay constant.
If you are developing 3D mouse support in your application, you need to change the "zoom" level for parallel/orthographic projections and move the camera (or "eye" and/or "target" positions) for perspective projects.
Refer to the 3DxWare SDK doc for additional details.
Now, if you want to change (edit) a model's size, then you can assign such an action to a button, just like we pre-assign a "speed increase" to the "+" button of some 3D mice.
Moreover, since the SpaceMouse is made for CAD, do you know if there is a standard way in the 3Dconnexion usage about changing the size of the model?
Thanks
Re: Is there a best way to use 3Dconnexion for object scalin
CAD is just one application. 3D mice are great for any 3D editing application.superwavelet wrote: since the SpaceMouse is made for CAD, do you know if there is a standard way in the 3Dconnexion usage about changing the size of the model?
The 3D mouse "motion" data are just a sort of "analog" axis. Mapping an axis to edit a model is very doable. It just depends on what you're trying to do (what the application's for).
-
- Posts: 9
- Joined: Tue Jan 20, 2015 5:38 pm
Re: Is there a best way to use 3Dconnexion for object scalin
I want to make a kind of game like building blocks. So the player could select some boxes and change the size of them and place one onto another and build some interesting shapes in the computer.ngomes wrote:CAD is just one application. 3D mice are great for any 3D editing application.superwavelet wrote: since the SpaceMouse is made for CAD, do you know if there is a standard way in the 3Dconnexion usage about changing the size of the model?
The 3D mouse "motion" data are just a sort of "analog" axis. Mapping an axis to edit a model is very doable. It just depends on what you're trying to do (what the application's for).
So, in the process, the player needs to change the size of the boxes or other elements. I think this should be similar to CAD modeling? So, I was just wondering if there is a standard way to change the model size in CAD by using the 3DConnexion. Or, since in CAD software, 3DConnexion is combined with standard mouse, so, we should still use the standard mouse to change the model size?
Thanks
Re: Is there a best way to use 3Dconnexion for object scalin
In CAD application, the 3D mouse is use to manipulate the "view" (think the "virtual camera" with which end-users observe the virtual scene). The pointing device is then use to make changes to the model (pick a slider and move it to change size, for example).
It's a two-hand scenario. If a user is right-handed, the 3D mouse is normally used by the left hand and with the other hand being used for point-and-click.
I suggest that you follow the same paradigm: use the 3D mouse for "navigating" the scene (move the camera around) and use the normal mouse to change size of the model. For example, you could display a slider when the mouse pointer is moved over the model, then users could pick the slider "thumb" and easily change size.
It's a two-hand scenario. If a user is right-handed, the 3D mouse is normally used by the left hand and with the other hand being used for point-and-click.
I suggest that you follow the same paradigm: use the 3D mouse for "navigating" the scene (move the camera around) and use the normal mouse to change size of the model. For example, you could display a slider when the mouse pointer is moved over the model, then users could pick the slider "thumb" and easily change size.
-
- Posts: 9
- Joined: Tue Jan 20, 2015 5:38 pm
Re: Is there a best way to use 3Dconnexion for object scalin
Thank you very much, I am also watching your official tutorial video. However, since I want to move the elements (small boxes) in the scene to pile up building blocks, I think using the SpaceMouse cap to move the objects in the scene is much easier than using the standard mouse.ngomes wrote:In CAD application, the 3D mouse is use to manipulate the "view" (think the "virtual camera" with which end-users observe the virtual scene). The pointing device is then use to make changes to the model (pick a slider and move it to change size, for example).
It's a two-hand scenario. If a user is right-handed, the 3D mouse is normally used by the left hand and with the other hand being used for point-and-click.
I suggest that you follow the same paradigm: use the 3D mouse for "navigating" the scene (move the camera around) and use the normal mouse to change size of the model. For example, you could display a slider when the mouse pointer is moved over the model, then users could pick the slider "thumb" and easily change size.
Do you think I should not only use the SpaceMouse for view manipulation and also for the object (small boxes) manipulation?
Thanks
Re: Is there a best way to use 3Dconnexion for object scalin
I think you can do both: if the item is selected, you can move the object around (and rotate it) with the 3D mouse. If no valid object is selected, then you can use the 3D mouse to the move the camera. We have an identical feature in some CAD application: we call it "sub-part movement" and it allows end-users to use the 3D mouse to place parts in an assembly. Precise placement is still something that is best achieved with a pointing device (normal mouse, touchpad).superwavelet wrote:Do you think I should not only use the SpaceMouse for view manipulation and also for the object (small boxes) manipulation?
-
- Posts: 9
- Joined: Tue Jan 20, 2015 5:38 pm
Re: Is there a best way to use 3Dconnexion for object scalin
ngomes wrote:I think you can do both: if the item is selected, you can move the object around (and rotate it) with the 3D mouse. If no valid object is selected, then you can use the 3D mouse to the move the camera. We have an identical feature in some CAD application: we call it "sub-part movement" and it allows end-users to use the 3D mouse to place parts in an assembly. Precise placement is still something that is best achieved with a pointing device (normal mouse, touchpad).superwavelet wrote:Do you think I should not only use the SpaceMouse for view manipulation and also for the object (small boxes) manipulation?
Great! Thank you!.
I just notice the speed you mentioned earlier. So, we could set the "speed" resulted from the cap sensor. However, is there a standard speed for moving objects? Since I noticed in the example program:
Code: Select all
TCHAR buff0[30]; /* text buffer for TX */
Is there a standard object movement speed in the scene correspond to the SpaceMouse controller cap?
thanks again
Re: Is there a best way to use 3Dconnexion for object scalin
Please refer to the 3DxWare SDK for Windows documentation, in section "Device Information" > "Data Supplied" > "Navigation Velocity".superwavelet wrote: So, not sure how to set the best movement (translation and rotation) speed of the object in the scene?
Is there a standard object movement speed in the scene correspond to the SpaceMouse controller cap?
In the end, you may also need to adjust the speed scaling to what you believe makes sense to your specific application. End-user then have the option to increase or decrease the scaling by using the driver proprieties panel.