Snapmaker / Luban

An easy-to-use 3-in-1 software tailor-made for Snapmaker machines.
https://snapmaker.com/snapmaker-luban
GNU Affero General Public License v3.0
442 stars 117 forks source link

Feature Request: Custom pan, zoom, orbit controls #664

Open schulzch opened 3 years ago

schulzch commented 3 years ago

Luban uses mouse bindings which are pretty much unknown to me. This is an issue when switching applications. There are a couple of other mouse models and it would be really to have a setting for this. I've build a non-exhaustive list of mouse models for reference:

Luban v3.12.3

Pan: right mouse button Zoom: mouse wheel Rotate: left mouse button

Prusa Slicer v2.3:

Almost the same, except that the middle mouse button pans as well.

Pan: right mouse button or middle mouse button Zoom: mouse wheel Rotate: left mouse button

Tinkercad (also used by Chitubox and configurable in Fusion 360):

Left and right are swapped (this is what drives me crazy).

Pan: left mouse or middle mouse Zoom: mouse wheel Rotate: right mouse

Fusion 360

Has support for several models. See Fusion 360 preferences.

FreeCAD

Has support for several models. See FreeCAD mouse models.

Blender

Freely configurable. See 3D View navigation.

edward-crouch commented 3 years ago

It would also be really useful if Luban supported 3DConnexion devices like my Spacemouse Pro. I can make Luban zoom in and out from the spacemouse, and I've tried to map the other axes but no joy. I would imagine if there is an API covering this, it would "just" (HA! just......) be a job of making the function calls?

Ed.

schulzch commented 3 years ago

It would also be really useful if Luban supported 3DConnexion devices like my Spacemouse Pro. I can make Luban zoom in and out from the spacemouse, and I've tried to map the other axes but no joy. I would imagine if there is an API covering this, it would "just" (HA! just......) be a job of making the function calls?

Ed.

Yes, adding support for those is pretty easy - even without their SDK. There seems to be a package for it https://github.com/microdee/hid.spacemouse . I gave mine away a few years ago, though we still have one at the institute I could access for testing.

kpninja12 commented 3 years ago

Seems the best option here would be to add some more advanced settings in the Settings menu where the user can custom map controls for each function (pan, orbit, zoom)

schulzch commented 3 years ago

Yes, I think so too. Probably mapping input to the (generic) camera, along with some tweaks to the overall navigation (that negative-scaled matrix when zooming that results in flipping the entire coordinate system is quite annoying).

I was super busy with paper writing until Friday and had planned to look into it next weekend.

parachvte commented 3 years ago

What we did is to align orbit control with popular CAD/CAM software as possible. Though the control is not perfectly implemented, custom mouse bindings are beyond our plans recently.

But...PRs are welcome 😃

Woodie77 commented 2 years ago

Hi, has there been any activity for implementing the spacemouse in luban?