Loschiavo Tobia - Ridolfi Lorenzo Tutor: Ing. Fantini & Ing. Aleotti Realizzazione di un visualizzatore 3D dei dati provenienti da Polhemus Corso di Robotica aa 2003-2004 22 Luglio 2004 Sommario Presentazione di Java 3D Viewer Introduzione a java3d Presentazione plugin Implementazione plugin – Interfaccia Risultati ottenuti Note finali Presentazione di Java 3D Viewer (Rimlab Viewer) Rappresenta oggetti in uno spazio 3D Caricamento oggetti attraverso loader VRML Può caricare: – – – robot workspace animazioni Dotato di controlli stile VCR Polhemus Driver scritto in Java Sfrutta Java Communication API Progettato per funzionare sotto Windows Portabilità parziale Java3D API Classi per manipolazione ad alto livello di oggetti 3d Possono utilizzare Direct3D o OpenGL Struttura gerarchica ad albero Futura implementazione su dispositivi mobili Java3D API Struttura: View Graph Branch Group Transform Group Shape Properties Presentazione plugin “Polhemus Trace” Mostra la scia del Polhemus Campionamenti e lunghezza scia selezionabili Punto attuale rappresentato con una terna di assi cartesiani Mostra coordinate ed effettua opzionalmente il log su file Sistema di visualizzazione intelligente Sistema di calibrazione Polhemus trace plugin Calibrazione ambiente Attivazione funzionalità Opzioni Visualizzazione coordinate Polhemus trace plugin Traccia come unione linee spezzate Terna assi cartesiani attaccata ad ultima spezzata Frequenza di campionamento selezionabile Traccia in dissolvenza con ritardo impostabile Dump su file .log Polhemus trace plugin Sistema di calibrazione Mappa cubo virtuale all’interno del cubo visualizzato Possibilità di impostare un punto relativo alla diagonale del cubo (tracker rappresenta origine) Impostazioni per cambiare origine a Rimlab Viewer Risultati finali e note Uso di thread separate Lettura da dispositivo a campionamento Driver non stabili Driver non portabili Esistenza layer intermedio RXTX + Solaris (strato comune) Sviluppi futuri Miglioramento driver rendendoli portabili Integrazione RXTX Funzionalità avanzate (gestione dispositivi diversificati) Bibliografia Java3D API tutorial http://java.sun.com/developer/onlineTraining/java3d/ Driver Sourceforge Cybergarage http://www.cybergarage.org/vr/device/polhemus/java/index.html Driver Rutgers University