View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000772||FreeCAD||Feature||public||2012-07-03 06:11||2012-07-06 20:28|
|Priority||normal||Severity||minor||Reproducibility||have not tried|
|Target Version||Fixed in Version||0.13|
|Summary||0000772: Navigation style suggestion - do not change cursor location when you are controling view|
Currently when you are doing pan, zoom and rotate, cursor is moving on the screen. this usually means that you need to "enter" navigation mode, use it until cursor gets to the edge of the screen, exit it, move cursor to the center of the screen, "enter" navigation mode again, and repeat all steps above.
This is worse imo with pan, if you are zoomed in a lot to the object.
Maybe it would be worth to consider to keep cursor location fixed during navigation (or have CB in preferences for it, or some other way of setting it).
|Tags||No tags attached.|
Sorry but that's totally impossible. When we move the mouse then we can compute a vector of the two different mouse positions. Depending on the vector direction and its length we can compute where to pan/rotate and how fast.
If we force the mouse to be always on the same position we always get a null vector and thus cannot do anything with this information.
||could the mouse coursor made wrapping at the edge of the window/screen?|
I could be wrong, but see this:
you have start cursor location, and end one. and then you process event.
after event is processed, can you set cursor back to start cursor location, in the code?
For panning I think the cursor should always be at same point on the model and not on the screen when he started the operation. If we kept fix the cursor position on the screen this will confuse the user. At least I have never seen an application which does it differently. And panning isn't actually a problem.
For rotating it's another story. In FreeCAD you need much more space to achieve a certain rotation compared to other applications. They do the same amount of rotation with maybe a fourth of the space.
Another observation is that the nearer the cursor to the border the less amount of rotation is done. At the center the rotation is the highest. Other applications do the same amount of rotation independent of the cursor position.
In the parameter editor go to the group Preferences > View and create a boolean key "ResetCursorPosition" and set it to true.
git show c3d84e9
|2012-07-03 06:11||pperisin||New Issue|
|2012-07-03 07:17||wmayer||Note Added: 0002262|
|2012-07-03 08:07||shoogen||Note Added: 0002264|
|2012-07-03 08:37||pperisin||Note Added: 0002265|
|2012-07-06 12:30||wmayer||Note Added: 0002282|
|2012-07-06 20:28||wmayer||Note Added: 0002283|
|2012-07-06 20:28||wmayer||Status||new => closed|
|2012-07-06 20:28||wmayer||Resolution||open => fixed|
|2012-07-06 20:28||wmayer||Fixed in Version||=> 0.13|