vintagepc / MK404

A functional Simulator for Prusa (Mini/Einsy) Rambo based printers
https://vintagepc.github.io/MK404/
GNU General Public License v3.0
69 stars 9 forks source link

[FEATURE] Gimbal rotation #347

Open GilesBathgate opened 2 years ago

GilesBathgate commented 2 years ago

Is your feature request related to a problem? Please describe. Arcball rotation solves the issue of gimbal lock, but it's not really very "nice" for moving the printer around. Essentially the camera roll isn't locked, so you easily end up with a printer that isn't level to the horizon.

image

Describe the solution you'd like Gimbal based rotation is quite simple, here is my implementation: https://github.com/GilesBathgate/RapCAD/blob/master/src/ui/glview.cpp#L463 (shameless plug) Yes, you can get into a gimbal lock situation, but it's not common in practice.

Describe alternatives you've considered Make it optional/user preference?

vintagepc commented 2 years ago

I would support this, there's no real reason we went with Arcball other than that it was convenient and had a nice ready-to-go third party implementation we could just drop in.