Jump to content

Dispositivos de entrada 3Dconnexion

From FreeCAD Documentation
This page is a translated version of the page 3Dconnexion input devices and the translation is 100% complete.
3Dconnexion SpaceNavigator

Instalação de Drivers

Linux

O FreeCAD suporta drivers do projecto Spacenav. Este é um projecto apostado em criar uma driver open-source que é compatível com as drivers proprietárias da 3Dconnexion.

Instalar de repositório

Ubuntu
sudo apt-get install spacenavd

Note, no entanto, que a versão 0.6 disponível no Ubuntu 20.04 (e provavelmente anteriores) parece não estar a funcionar. O utilizador tem então que compilar o spacenavd usando o código-fonte, como se explica abaixo.

Fedora
sudo yum install spacenavd
Debian
apt-get install spacenavd libspnav-dev

O Spacenav precisa destas permissões:

cp ~/.Xauthority /root/

Reiniciar o spnavd e o FreeCAD

/usr/bin/spnavd_ctl x11 stop
/usr/bin/spnavd_ctl x11 start
openSUSE
sudo zypper install spacenavd

Compilar o Spacenav a partir do código-fonte

Isto é recomendado se a sua distribuição possa fornecer uma versão desactualizada.

  • Descarregue os seguintes ficheiros:
  • Descompacte os arquivos numa pasta dentro do directório 'home'.
  • Entre no directório spacenavd-x.x e corra os seguintes comandos:
./configure
make
  • Se for bem sucedido, corra os seguintes comandos como root (ou com prefixo 'sudo'.)
make install
./setup_init
/etc/init.d/spacenavd start
  • Isto instala o spacenav daemon, configura-o para iniciar automaticamente no início de sistema, e inicia o daemon sem precisar de reiniciar.
  • Agora está na altura de verificar se o seu dispositivo é detectado devidamente. Com o dispositivo desligado, corra o seguinte comando e ligue o dispositivo.
tail -n100 -f /var/log/spnavd.log
  • Se a saída (output) for algo semelhante a isto, pode continuar.
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
  • Agora insira o directório de nome libspnav-x.x.x e corra os seguintes comandos:
./configure
make
  • Se 'make' falhar com o seguinte erro: ...
fatal error: gtk/gtk.h: No such file or directory
  • ... então precisa de instalar o libgtkmm-2.4-dev. No Ubuntu, isto é feito assim:
sudo apt-get install libgtkmm-2.4-dev
  • Quando o 'make' terminou com sucesso, corra o seguinte comando como root (ou prefixo com 'sudo'.)
make install
  • Veja no directório libspnav-x.x.x/examples/. Se quiser testar o seu dispositivo, compile e corra um dos dois exemplos.
  • Siga o mesmo padrão para compilar e instalar o spnavcfg. Garanta que corre o spnavcfg como 'root', ou as configurações não vão ser gravadas!

Iniciar o spacenavd como um serviço 'systemd' no arranque

Se quiser iniciar o spacenavd no 'boot' utilizando o systemd, faça o seguinte:

  • Vá até ao directório onde clonou o repositório spacenavd (até à raíz (root) do repositório)
  • "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", se quiser iniciá-lo imediatamente.

Isto é apenas necessário para a instalação a partir do código-fonte.

Reiniciar o spacenavd

Se de vez em quando o SpaceNavigator deixar de funcionar, é bom reiniciar o driver. Para o reiniciar, vá ao Terminal e execute:

sudo xhost +
sudo /etc/init.d/spacenavd restart

Depois disso reinicie o FreeCAD. Em algumas distros isto é preciso em cada 'boot'.

Problemas conhecidos

Um utilizador reportou no forum que viu o seguinte:

 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" 

A alternativa que funcionou com ele:

sudo cp ~/.Xauthority /root/
sudo spnavd_ctl x11 start
sudo systemctl restart spacenavd

MacOS

Dispositivos de input 3Dconnexion são suportados no macOS, provendo que o FreeCAD seja compilado e usado num sistema com o driver 3Dconnexion instalado. Pode precisar do 3DxWare 10.7.2 ou superior para macOS 12 Monterey.

Windows

Com a versão 0.13, o 3D mouse é suportado no Windows. Precisa dos drivers 3Dconnexion instalados. No FreeCAD versão 1.0 uma nova integração com dispositivos 3Dconnexion foi introduzida. Se for compilado com esta integração, só o hardware mais recente é suportado: para utilizar dispositivos mais antigos precisa compilar ele mesmo com a variável FREECAD_3DCONNEXION_SUPPORT cMake configurada para "Raw Input". Os utilizadores Windows devem estar conscientes que o driver 3Dconnexion (não o código no FreeCAD) contém um pacote de telemetria que comunica informação acerca do seu software instalado para o 3Dconnexion.

Problemas conhecidos

  • No FreeCAD versão 1.0 e posteriores alterar definições na janela de configurações do 3DX pode não dar o resultado esperado (issue). Para resolver isto:
    1. Pare o driver (correndo Stop 3DxWare).
    2. Vá até ..<user>\AppData\Roaming\3Dconnexion\3DxWare\Cfg e apague o ficheiro FreeCAD.xml.
    3. Inicie o driver (correndo Start 3DxWare).
    4. Inicie o FreeCAD e veja se pode mudar as definições do Spaceball Motion.

Configurando o FreeCAD

1.0 and above: O manipulador 3Dconnexion pode ser configurado na sua driver app (3DxWare software).

0.21 and below: Se um Spaceball é detectado os seguintes separadores no Customize dialog podem ser usados para alterar definições:

Movimento Spaceball

Neste separador tem disponível poder configurar algumas configurações gerais do space mouse. Incluem:

  • Global Sensitivity - Slider com a capacidade de definir a sensibilidade global
  • Dominant - se activar o modo dominant, só os eixos com o maior movimento serão considerados
  • Flip YZ - Esta opção permite trocar os eixos Y e Z no 3D mouse
  • Enable Translations - forma fácil para activar/desactivar deslocações
  • Enable Rotations - forma fácil para activar/desactivar rotações
  • Calibrate - permit calibrar o space navigator. Está premido enquanto o space navigator não for movido.
  • Set To Default - remove todas a configurações para o valor padrão.

Além disto, para cada eixo code configurar:

  • Enabled - Activa/Desactiva eixos
  • Reverse - Inverte o movimento dos eixos
  • Sensitivity - slider com capacidade de definir a sensibilidade

Botões do Spaceball

Quando abre este separador pela primeira vez, vai estar vazio e indisponível. Para o activar, tem que premir um dos botões do space mouse. Depois de o fazer, a lista dos botões vai aparecer do lado esquerdo, e a lista dos comandos fica disponível do lado direito.

Para ligar um comando a um botão, seleccione um botão do lado esquerdo, e o seu comando do lado direito. To limpar comandos nos botões, clique em "Clear".

Resolução de problemas

Verifique se a sua instalação FreeCAD liga à biblioteca spacenav. A melhor forma de verificar é iniciando o FreeCAD a partir da linha de comandos FreeCAD --log-file /tmp/freecad.log e fechá-lo imediatamente a seguir. Então abra o ficheiro /tmp/freecad.log e procure pelas mensagens:

Connected to spacenav daemon

ou

Couldn't connect to spacenav daemon. Please ignore if you don't have a spacemouse.

Se nenhum deles aparecer então a sua compilação do FreeCAD não liga à biblioteca FreeCAD. Se a primeira mensagem aparece, basicamente está a funcionar. Se aparecer a segunda mensagem há provavelmente um problema com o spacenav daemon.

Relacionado