
Установка драйвера
Linux
FreeCAD поддерживает драйверы из проекта Spacenav. Это проект, направленный на создание драйвера с открытым исходным кодом, совместимого с фирменными драйверами от 3Dconnexion.
Установка из репозитория
Ubuntu
sudo apt-get install spacenavd
Обратите внимание, однако, что версия 0.6, доступная на Ubuntu 20.04 (и, вероятно, более старые версии), похоже, не работает. Тогда вам придется скомпилировать spacenavd из исходного кода, как описано ниже.
Fedora
sudo yum install spacenavd
Debian
apt-get install spacenavd libspnav-dev
Spacenav нуждается в следующих разрешениях:
cp ~/.Xauthority /root/
Перезапустите spnavd и FreeCAD
/usr/bin/spnavd_ctl x11 stop /usr/bin/spnavd_ctl x11 start
openSUSE
sudo zypper install spacenavd
Это рекомендуется делать, если ваш дистрибутив предоставляет устаревшую версию.
- Скачайте следующие файлы:
- Распакуйте архивы в папку в домашнем каталоге.
- Войдите в каталог spacenavd-x.x и выполните следующие команды:
./configure make
- Если всё прошло успешно, выполните следующие команды от имени root (или с префиксом sudo).
make install ./setup_init /etc/init.d/spacenavd start
- Это установит daemon spacenav, настроит его на автоматическую загрузку при загрузке системы и запустит daemon без необходимости перезагрузки.
- Теперь пришло время проверить, правильно ли обнаружено ваше устройство. Не подключая устройство к сети, выполните следующую команду, и только потом подключите его.
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
- Теперь войдите в каталог libspnav-x.x.x и запустите следующие команды:
./configure make
- Если make вывалится со следующей ошибкой: ...
fatal error: gtk/gtk.h: No such file or directory
- ... то Вам надо установить libgtkmm-2.4-dev. Под Ubuntu это делается так:
sudo apt-get install libgtkmm-2.4-dev
- Когда make завершится успешно, запустите следующую команду как root (или через sudo.)
make install
- Гляньте в каталог libspnav-x.x.x/examples/. Если Вы хотите протестировать Ваше устройство, скомпилируйте и запустите любой из двух примеров.
- Следуйте той же схеме для компиляции и установки spnavcfg. Обязательно запустите spnavcfg как root, или установки не будут сохранены!
Если вы хотите запустить spacenavd при загрузке с помощью systemd, выполните следующие действия:
- Перейдите в каталог, в который вы клонировали репозиторий spacenavd (в корень репозитория)
- «sudo cp contrib/systemd/spacenavd.service /usr/lib/systemd/system/spacenavd-local.service».
- «sudo systemctl enable spacenavd-local.service»
- «sudo systemctl start spacenavd-local.service», если вы хотите запустить его сразу.
Это необходимо только при установке из исходного кода.
Если иногда 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
MacOS
Устройства ввода 3Dconnexion поддерживаются в macOS при условии, что FreeCAD собран и используется в системе с установленными драйверами 3Dconnexion. Возможно, вам понадобится 3DxWare версии 10.7.2 или новее для macOS 12 Monterey.
Windows
Начиная с версии 0.13, 3D-манипулятор поддерживается под Windows. Для этого необходимо установить драйверы 3Dconnexion. В версии FreeCAD 1.0 появилась новая интеграция с устройствами 3Dconnexion. При компиляции с этой интеграцией поддерживается только новейшее оборудование: для поддержки более старых устройств пользователям потребуется самостоятельно скомпилировать FreeCAD с переменной FREECAD_3DCONNEXION_SUPPORT cMake, установленной на «Raw Input». Пользователи Windows должны знать, что драйвер 3Dconnexion (а не код FreeCAD) содержит пакет передачи сведений, который передаёт 3Dconnexion информацию о вашем установленном программном обеспечении.
Известные проблемы
- В FreeCAD версии 1.0 и более поздних изменения настроек в окне конфигурации 3DX могут не приводить к ожидаемым результатам (issue). Чтобы исправить это:
- Остановите драйвер (выполнив Stop 3DxWare).
- Перейдите в ...<user>\AppData\Roaming\3Dconnexion\3DxWare\Cfg и удалите файл FreeCAD.xml.
- Запустите драйвер (выполнив Start 3DxWare).
- Запустите FreeCAD и проверьте, можете ли вы изменить настройки Spaceball Motion.
Настройка FreeCAD
1.0 и выше: Манипулятор 3Dconnexion можно настроить в приложении-драйвере (программное обеспечение 3DxWare).
0.21 и ниже: Если Spaceball обнаружен, то следующие вкладки в Настройках интерфейса могут быть использованы для изменения настроек:
Spaceball Движения
На этой вкладке вы можете настроить некоторые общие параметры пространственной мыши. К ним относятся:
- Глобальная чувствительность (Global Sensitivity) - ползунок с возможностью установки глобальной чувствительности.
- Доминанта (Dominant) - если вы включите режим доминанты, то будут учитываться только оси с наибольшим перемещением
- Перевернуть YZ (Flip YZ) - эта опция позволяет перевернуть оси Y и Z на 3D манипуляторе.
- Включить преобразования (Enable Translations) - простой способ включить/выключить преобразования
- Включить вращение (Enable Rotations) - простой способ включить/выключить вращение
- Калибровать (Calibrate) - позволяет откалибровать пространственный навигатор. Нажимается, пока навигатор не перемещается.
- Установить по умолчанию (Set To Default) - удаляет все настройки и устанавливает их по умолчанию.
Кроме этого, для каждой оси есть возможность установить:
- Включить (Enabled) - разрешить/запретить оси
- Реверс (Reverse) - реверсировать движение по осям
- Чувствительность (Sensitivity) - слайдер с возможностью установить чувствительность
Кнопки 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.
Связанные ссылки
- Тема форума spacenav on Windows
- Тема форума Space navigator axis confusion
Эта страница получена от https://wiki.freecad.org/3Dconnexion_input_devices