Este documento descreve as melhorias implementadas para tornar a navegação 3D e VR mais intuitiva e profissional no Vizzio IFC Viewer.
Implementado um sistema de navegação orbital que permite rotacionar ao redor de um ponto focal, tornando a visualização de modelos 3D muito mais intuitiva.
O para alternar entre modo Orbital e FPSRendering/Camera.csIsOrbitModeProcessMousePan(), UpdateOrbitPosition()Adicionado um grid 3D com linhas de referência e eixos coloridos (RGB = XYZ) para melhor percepção espacial.
G: Toggle grid on/offH: Toggle eixos on/offRendering/GridRenderer.csAtalhos rápidos para posicionar a câmera em vistas padrão, essencial para análise de projetos de construção.
| Tecla | Vista | Descrição |
|---|---|---|
Numpad 1 |
Front | Vista frontal |
Numpad 3 |
Right | Vista lateral direita |
Numpad 7 |
Top | Vista superior (planta) |
Numpad 0 |
Isometric | Vista isométrica (35.26°) |
Camera.SetCameraPreset()CameraPresetSistema completo de navegação em VR com teleporte e locomoção suave.
VR/VRNavigation.csVRNavigationIfcViewerReconhecimento de gestos naturais para controle intuitivo em VR.
| Gesto | Ação | Descrição |
|---|---|---|
| Two-Hand Grab | Escalar modelo | Segurar grip nos dois controladores |
| Swipe Left | Vista anterior | Movimento rápido do controlador direito para esquerda |
| Swipe Right | Próxima vista | Movimento rápido do controlador direito para direita |
| Swipe Up | Mostrar menu | Movimento rápido do controlador direito para cima |
VR/VRNavigation.csVRGesturesGestureTypeHandleVRGesture() no IfcViewerNAVEGAÇÃO:
WASD - Mover câmera
Space/Shift - Subir/Descer
Botão Direito - Rotacionar vista (modo Orbital)
Botão Meio - Pan (mover lateralmente)
Scroll - Zoom in/out
+/- - Aumentar/Diminuir velocidade
PRESETS DE CÂMERA:
Numpad 1 - Vista frontal
Numpad 3 - Vista lateral direita
Numpad 7 - Vista superior
Numpad 0 - Vista isométrica
AÇÕES:
Click Esquerdo - Selecionar elemento
F - Focar no modelo
R - Resetar câmera
G - Toggle grid
H - Toggle eixos
O - Toggle modo Orbital/FPS
L - Toggle iluminação
Delete - Limpar seleção
VR/AR:
F2 - Toggle modo VR
F3 - Toggle modo AR
OUTROS:
F1 - Mostrar ajuda
F11 - Toggle fullscreen
Ctrl+O - Abrir arquivo IFC
ESC - Sair
Drag & Drop - Carregar arquivo IFC
// Velocidades padrão
MovementSpeed = 10.0f; // m/s
MouseSensitivity = 0.1f; // unidades
OrbitSpeed = 0.3f; // rad/pixel
PanSpeed = 0.01f; // unidades/pixel
ZoomSpeed = 2.0f; // unidades/scroll
// Limites
Pitch = [-89°, 89°] // Evita gimbal lock
GridSize = 100.0f; // metros
GridSpacing = 1.0f; // metros
GridAlpha = 0.5f; // transparência
TeleportSpeed = 5.0f; // velocidade da animação
SmoothSpeed = 3.0f; // m/s locomoção
TeleportMaxDistance = 20.0f; // metros
Rendering/
├── GridRenderer.cs ✨ NOVO - Renderização de grid e eixos
VR/
├── VRNavigation.cs ✨ NOVO - Sistema de navegação VR
- Teleporte e locomoção
- Reconhecimento de gestos
Rendering/
├── Camera.cs ✏️ MODIFICADO
- Modo orbital
- Presets de câmera
- ProcessMousePan()
Application/
├── IfcViewer.cs ✏️ MODIFICADO
- Integração GridRenderer
- Integração VRNavigation
- Novos atalhos de teclado
- Handler de gestos VR
G)Desenvolvido por: Nícolas Ávila Data: 2025-12-21 Versão: 2.0 - 3D/VR Navigation System