Commit Graph

72 Commits

Author SHA1 Message Date
Enrico Turri
447fa0017c ENABLE_3DCONNEXION_DEVICES -> Refactoring and code cleanup 2019-10-10 11:55:17 +02:00
Enrico Turri
6a3c73ed06 ENABLE_3DCONNEXION_DEVICES -> Slightly increased camera target movement limits 2019-10-10 10:49:47 +02:00
Enrico Turri
ec9ea9fb03 Fixed build on OsX 2019-10-10 09:29:55 +02:00
Enrico Turri
19217c94f7 ENABLE_3DCONNEXION_DEVICES -> Experimental input queues with max size 2019-10-10 09:04:44 +02:00
Enrico Turri
bd0b78a7f9 ENABLE_3DCONNEXION_DEVICES -> Added temporary debug output to measure input queue sizes 2019-10-09 15:23:30 +02:00
Enrico Turri
e871c4df95 ENABLE_3DCONNEXION_DEVICES -> Reworked deadzone check 2019-10-09 14:39:28 +02:00
Enrico Turri
0604315671 ENABLE_3DCONNEXION_DEVICES -> Added tech ENABLE_3DCONNEXION_DEVICES_DEBUG_OUTPUT for debug output 2019-10-09 14:18:43 +02:00
Enrico Turri
cf6387db71 ENABLE_3DCONNEXION_DEVICES -> Reworked parsing of data coming from device 2019-10-09 14:01:13 +02:00
Enrico Turri
c195840c5a ENABLE_3DCONNEXION_DEVICES -> Added translation and rotation customizable parameter deadzone 2019-10-08 14:32:05 +02:00
Enrico Turri
476b81c1ce ENABLE_3DCONNEXION_DEVICES -> Mouse3DController reworked to handle reports of length 7 bytes and 13 bytes 2019-10-08 13:38:08 +02:00
Enrico Turri
e321c590ba ENABLE_3DCONNEXION_DEVICES -> added debug code to get 3Cconnexion device product id 2019-10-08 09:52:56 +02:00
Enrico Turri
6b57febe0c ENABLE_3DCONNEXION_DEVICES -> Hack for filtering out mouse wheel events coming from 3Dconnexion driver 2019-10-08 08:44:50 +02:00
Enrico Turri
cea2b5d621 ENABLE_3DCONNEXION_DEVICES -> Update 3D scene only when mouse 3D device send update messages 2019-10-07 09:31:23 +02:00
Enrico Turri
aaed88eef7 ENABLE_3DCONNEXION_DEVICES -> Automatic detection of plugging/unplugging 3Dconnexion devices 2019-10-04 10:59:27 +02:00
Enrico Turri
1ebb8d3caa ENABLE_3DCONNEXION_DEVICES -> Another small refactoring of Mouse3DController 2019-10-04 07:58:01 +02:00
Enrico Turri
c64f563e63 ENABLE_3DCONNEXION_DEVICES -> Refactored Mouse3DController to simplify code 2019-10-03 12:16:59 +02:00
Enrico Turri
a8760a5526 ENABLE_3DCONNEXION_DEVICES -> Refactored Mouse3DController to be unaware of current active GLCanvas3D 2019-10-03 11:38:31 +02:00
Enrico Turri
42030bc6c7 ENABLE_3DCONNEXION_DEVICES -> Serialization of mouse device parameters into config 2019-10-03 10:26:28 +02:00
Enrico Turri
869d1ca48d ENABLE_3DCONNEXION_DEVICES - Added imgui dialog to edit 3Dconnexion device parameters 2019-10-02 15:55:26 +02:00
Enrico Turri
0400384d70 ENABLE_3DCONNEXION_DEVICES -> Increased limit of device buttons 2019-09-30 15:58:45 +02:00
Vojtech Kral
89d0b105d4 3D connexion support on Linux:
- Replace hidapi/linux/hid.c with the hidraw variant (link to udev)
- Add CMakeLists.txt for hidapi, refactor
- Add udev rules file (no installation so far)
2019-09-30 14:59:21 +02:00
Enrico Turri
f4b29a4107 ENABLE_3DCONNEXION_DEVICES - 1st installment of support for 3Dconnexion devices
Implemented using hidapi library (https://github.com/libusb/hidapi) and https://github.com/koenieee/CrossplatformSpacemouseDriver/tree/master/SpaceMouseDriver as reference

Unsolved issues:

- When manipulating the SpaceNavigator wxWidgets generates a mouse wheel event that needs to be filtered out

- wxWidgets does not detect devices being connected/disconnected to the pc

- Current state forces a continuous rendering

- Current state misses dependence on camera zoom

- Non intuitive movement limits

- Translation and rotation speed factors are hardcoded

- Number of device buttons hardcoded
2019-09-27 14:52:19 +02:00