
FreeCAD поддерживает драйверы из проекта Spacenav. Это проект, направленный на создание драйвера с открытым исходным кодом, совместимого с фирменными драйверами от 3Dconnexion.
sudo apt-get install spacenavd
Обратите внимание, однако, что версия 0.6, доступная на Ubuntu 20.04 (и, вероятно, более старые версии), похоже, не работает. Тогда вам придется скомпилировать spacenavd из исходного кода, как описано ниже.
sudo yum install spacenavd
apt-get install spacenavd libspnav-dev
Spacenav нуждается в следующих разрешениях:
cp ~/.Xauthority /root/
Перезапустите spnavd и FreeCAD
/usr/bin/spnavd_ctl x11 stop
/usr/bin/spnavd_ctl x11 start
sudo zypper install spacenavd
Это рекомендуется делать, если ваш дистрибутив предоставляет устаревшую версию.
./configure
make
make install
./setup_init
/etc/init.d/spacenavd start
tail -n100 -f /var/log/spnavd.log
Device detection, parsing /proc/bus/input/devices
trying alternative detection, querying /dev/input/eventX device names...
trying "/dev/input/event1" ... Power Button
trying "/dev/input/event2" ... 3Dconnexion SpaceNavigator
using device: /dev/input/event2
device name: 3Dconnexion SpaceNavigator
./configure
make
fatal error: gtk/gtk.h: No such file or directory
sudo apt-get install libgtkmm-2.4-dev
make install
Если вы хотите запустить spacenavd при загрузке с помощью systemd, выполните следующие действия:
Это необходимо только при установке из исходного кода.
Если иногда SpaceNavigator перестаёт работать, полезно перезапустить драйвер. Чтобы перезапустить его, перейдите в терминал и выполните:
sudo xhost +
sudo /etc/init.d/spacenavd restart
После этого перезапустите FreeCAD. В некоторых дистрибутивах это необходимо при каждой загрузке.
Один из пользователей сообщил на форуме [1], что увидел следующее:
Spacenav daemon 0.6 failed to open config file /etc/spnavrc: No such file or directory. using defaults. adding device. device name: 3Dconnexion SpacePilot using device: /dev/input/event5 No protocol specified failed to open X11 display ":0.0"
( Демон Spacenav 0.6
не удалось открыть файл конфигурации /etc/spnavrc: нет такого файла или каталога по умолчанию. устройство добавлено. имя устройства: 3Dconnexion SpacePilot использование устройства: /dev/input/event5 Протокол не указан не удалось открыть X11 display «:0.0». )
Обходной путь, который сработал для них:
sudo cp ~/.Xauthority /root/
sudo spnavd_ctl x11 start
sudo systemctl restart spacenavd
Устройства ввода 3Dconnexion поддерживаются в macOS при условии, что FreeCAD собран и используется в системе с установленными драйверами 3Dconnexion. Возможно, вам понадобится 3DxWare версии 10.7.2 или новее для macOS 12 Monterey.
Начиная с версии 0.13, 3D-манипулятор поддерживается под Windows. Для этого необходимо установить драйверы 3Dconnexion. В версии FreeCAD 1.0 появилась новая интеграция с устройствами 3Dconnexion. При компиляции с этой интеграцией поддерживается только новейшее оборудование: для поддержки более старых устройств пользователям потребуется самостоятельно скомпилировать FreeCAD с переменной FREECAD_3DCONNEXION_SUPPORT cMake, установленной на «Raw Input». Пользователи Windows должны знать, что драйвер 3Dconnexion (а не код FreeCAD) содержит пакет передачи сведений, который передаёт 3Dconnexion информацию о вашем установленном программном обеспечении.
1.0 и выше: Манипулятор 3Dconnexion можно настроить в приложении-драйвере (программное обеспечение 3DxWare).
0.21 и ниже: Если Spaceball обнаружен, то следующие вкладки в Настройках интерфейса могут быть использованы для изменения настроек:
На этой вкладке вы можете настроить некоторые общие параметры пространственной мыши. К ним относятся:
Кроме этого, для каждой оси есть возможность установить:
Когда Вы откроете эту вкладку в первый раз, она будет пуста и не доступна. Чтобы её активировать, надо нажать одну из кнопок пространственной мыши. После этого слева появится список кнопок, а справа - список команд.
Для назначения некоторых команд кнопке выделите кнопку слева и её команду справа. Для стирания команды с кнопки нажмите "Clear".
Проверьте, связана ли ваша установка FreeCAD с библиотекой spacenav. Лучший способ проверить это - запустить FreeCAD из терминала командной строки FreeCAD --log-file /tmp/freecad.log и сразу же снова закрыть его. Затем откройте файл /tmp/freecad.log и найдите сообщения:
Connected to spacenav daemon
или
Couldn't connect to spacenav daemon. Please ignore if you don't have a spacemouse.
Если ни одно из них не появляется, значит, ваша сборка FreeCAD не связана с библиотекой spacenav. Если появляется первое сообщение, значит, в основном, всё работает. Последнее сообщение означает, что, скорее всего, проблема в spacenav daemon.