16/11/06 14:31
francoo
Salve a tutti....
sono nuovo delforum.. è il mio primo post...
Ho un problema...
Sto sviluppando un'applicazione che prende valori da un sensore di posizione collegato tramite l'USB e visualizza in real-time la posizione. L'oggetto visualizzato è un cono che cambia (...ops dovrebbe cambiare ) posizione in una finestra di rendering...
Ho a disposizione tutte le routine e le librerie del sensore che permettono l'acquisizione dei dati. L'ho provato facendo un programmino a linea di comando e funziona tutto perfettamente.
Per il rendering sto utilizzando le VTK...vtk.org
Una volta visualizzato il cono, quando do il RUN (ovvero gli chiedo di aggiornare la posizione in base ai vaolri acquisiti), il cono si blocca e solo quando il sensore finisce con l'acquisizione il cono si porta sull'ultima posizione acquisita.
questa è la funzione chiamata...
void vtkPVWindow::RUN()
{
//Inizializzazione del sistema di acquisizione
BirdClass a = BirdClass::BirdClass();
//acquisizione di 100 valori
for(int i=1;i<100;i++)
{// I valori vengono acquisiti in un record definito nell'header
DOUBLE_POSITION_ANGLES_RECORD record=a.getValori();
//Al cono è associato un Actor che ha i metodi per settare la posizione .. this->MainView->GetRenderer()->GetActors()->GetLastActor()->SetPosition(record.x,record.y,record.z);
this->MainView->Render();
}
}
secopndo me si dovrebbe lavorare con i thread... in modo tale che nn si blocchi il sistema quando sta acquisendo i dati...
Ho provato a trovare un po in giro.. ma nn ci sto capendo più niente...
come si dovrebbe fare in questo caso???
sono nuovo delforum.. è il mio primo post...
Ho un problema...
Sto sviluppando un'applicazione che prende valori da un sensore di posizione collegato tramite l'USB e visualizza in real-time la posizione. L'oggetto visualizzato è un cono che cambia (...ops dovrebbe cambiare ) posizione in una finestra di rendering...
Ho a disposizione tutte le routine e le librerie del sensore che permettono l'acquisizione dei dati. L'ho provato facendo un programmino a linea di comando e funziona tutto perfettamente.
Per il rendering sto utilizzando le VTK...vtk.org
Una volta visualizzato il cono, quando do il RUN (ovvero gli chiedo di aggiornare la posizione in base ai vaolri acquisiti), il cono si blocca e solo quando il sensore finisce con l'acquisizione il cono si porta sull'ultima posizione acquisita.
questa è la funzione chiamata...
void vtkPVWindow::RUN()
{
//Inizializzazione del sistema di acquisizione
BirdClass a = BirdClass::BirdClass();
//acquisizione di 100 valori
for(int i=1;i<100;i++)
{// I valori vengono acquisiti in un record definito nell'header
DOUBLE_POSITION_ANGLES_RECORD record=a.getValori();
//Al cono è associato un Actor che ha i metodi per settare la posizione .. this->MainView->GetRenderer()->GetActors()->GetLastActor()->SetPosition(record.x,record.y,record.z);
this->MainView->Render();
}
}
secopndo me si dovrebbe lavorare con i thread... in modo tale che nn si blocchi il sistema quando sta acquisendo i dati...
Ho provato a trovare un po in giro.. ma nn ci sto capendo più niente...
come si dovrebbe fare in questo caso???
aaa