Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SketchUp-like navigation #123

Closed
whitequark opened this issue Nov 27, 2016 · 9 comments
Closed

SketchUp-like navigation #123

whitequark opened this issue Nov 27, 2016 · 9 comments

Comments

@whitequark
Copy link
Contributor

I.e. navigation where the Z axis always remains vertical during rotation. This seems helpful to novice users.

@ghost
Copy link

ghost commented Dec 2, 2016

I agree with Z must be vertical, but, as for me, it would be better look onto Blender interaction. Some futures and interface ideas from Blender can be usefull for SolveSpace.

@dynamodan
Copy link
Contributor

I got here by the exact same need -- it's really a user preference and some people might want the camera standing on its head.

But I like the camera to stay locked so the "horizon" is always level. To me it makes no sense to have the viewport gradually falling over sideways as I'm trying to navigate.

Blender calls this setting "Turntable" and it's found in File -> User Preferences -> Input -> Orbit Style. There are two choices, Turntable and Trackball. SolveSpace's current behaviour resembles Blender's "Trackball" orbit style. It would be really nice to have Turntable in SolveSpace.

Thanks so much, @whitequark for all your hard work on this program. It is fantastic. I just found it yesterday and have already made some fairly complex objects on it.

@whitequark
Copy link
Contributor Author

OK, "Turntable" is a good user-visible name.

dynamodan added a commit to dynamodan/solvespace that referenced this issue Dec 29, 2016
dynamodan added a commit to dynamodan/solvespace that referenced this issue Dec 30, 2016
dynamodan added a commit to dynamodan/solvespace that referenced this issue Dec 31, 2016
dynamodan added a commit to dynamodan/solvespace that referenced this issue Jan 9, 2017
dynamodan added a commit to dynamodan/solvespace that referenced this issue Jan 14, 2017
dynamodan added a commit to dynamodan/solvespace that referenced this issue Jan 24, 2017
@whitequark whitequark modified the milestone: 3.0 Apr 8, 2017
@whitequark
Copy link
Contributor Author

@dynamodan Unfortunately I think I can't merge this yet :( There's a bug: if you use View → Nearest Ortho View (or similar commands), then you can get into a state where the Z axis points somewhere completely else than up, and you can't do anything about it.

@ghost
Copy link

ghost commented Apr 27, 2019

here's a bug: if you use View → Nearest Ortho View (or similar commands), then you can get into a state where the Z axis points somewhere completely else than up, and you can't do anything about it.

FTR, LeoCAD has good implementation on view control with Z-Up, Perspective/Ortho switching and much more:

Maybe, we need few view control modes:

  • Default (currently availabe in SolveSpace)
  • Turntable (as proposed @dynamodan, but with temporary disabled "View → Nearest Ortho View" option)
  • other modes.

@whitequark
Copy link
Contributor Author

FTR, LeoCAD has good implementation on view control with Z-Up, Perspective/Ortho switching and much more:

If you want to be helpful, you can write the code for this feature, of course.

@dynamodan
Copy link
Contributor

@Symbian9 instead of disabling the nearest ortho view, I'm considering simply modifing the nearest N view functions so that, when in turntable mode, Z remains correct.

Another way to understand "turntable" mode is to think of the horizon always staying level and not banking as it would in a flight simulator when the airplane rolls. It should allow the camera to pitch and yaw, but restrict roll. I explore the bug in this video:

https://youtu.be/siLoaXG3nM4

@whitequark
Copy link
Contributor Author

instead of disabling the nearest ortho view, I'm considering simply modifing the nearest N view functions so that, when in turntable mode, Z remains correct.

This sounds like the right approach to me. AnimateOnto will also need to be fixed.

@whitequark
Copy link
Contributor Author

Merged in e67f967.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants