// speichert den Zustand der Taste fuer die Vorwaertsbewegung
bool move_forward = false;
// wird aufgerufen, wenn eine Taste GEDRUECKT wird
void GLWidget::myKeyboardFunc(unsigned char key, int x, int y)
{
switch(key)
{
case GLUT_KEY_UP: move_forward = true; break;
// and other keys
};
}
// wird aufgerufen, wenn eine Taste LOSGELASSEN wird
void GLWidget::myKeyboardUpFunc(unsigned char key, int x, int y)
{
switch(key)
{
case GLUT_KEY_UP: move_forward = false; break;
// and other keys
};
}
// hier findet die Simulation statt!
void GLWidget::myIdleFunc()
{
// ...
if (move_forward) { // z.B.: glTranslatef(....); }
// und andere Variablen abfragen...
}
Ich mag nicht wirklich raten was nicht funktioniert, aber in den OpenGL-Examples gibt ein GLControlWidget, welches mir einiges abgenommen hat.
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
Bei Qt4 ist es nicht mehr dabei und die Qt3-Examples liegen nicht im Netz. Ich leg es dir ins Postfach.
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
macman hat geschrieben:Bei Qt4 ist es nicht mehr dabei und die Qt3-Examples liegen nicht im Netz. Ich leg es dir ins Postfach.
sau gut, danke 8)
jetzt besteht mein Projekt aus 7 Dateien:
* glwidget.cpp
* glwidget.h
* mainwindow.cpp
* mainwindow.h
* main.h
* glcontrolwidget.cpp
* glcontrolwidget.h
Ich hatte vorher meine Maus Befehle (zb. mousePressEvent) in glwidget.cpp. Diese sind ja nun überflüssig, da glcontrolwidget.cpp schon alles hat. mit qmake/make konnte ich es kompilieren, aber wie wechsel ich jetzt von den Mausbefehlen aus glwidget.cpp zu denen aus glcontrolwidget.cpp? Bin noch nicht wirklich fit beim Programmieren
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
AndiLatte hat geschrieben:viell hast du daran auch Interesse..
Danke, aber ich hab den Kram noch in mehrfacher Ausführung auf der Platte liegen
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
hi,
Glut wird durch Qt ziemlich überflüssig. Qt bietet ja schon zahlreiche, eigene Events an um mit den Programm zu agieren, dafür wurde Glut einst geschaffen. Falls es dir auf die Zeichenroutinen wie gluWireCube() oder gluLookAt() ankommt ist das auch kein Problem.
Aber ich würde erstmal QKeyEvent bevorzugen anstatt glutKeyboardFunc()
Bitte seid so nett und ändert den Titel von Beiträgen die gelöst wurden, auf [gelöst] Beitragstitel