OpenGL: X,Y und Z drehen



  • Hi, ihr könnt ja mal unter folgenden Links das Programm anschauen. Vielleicht ist dann auch deutlicher, was das Problem ist. Am deutlichsten wird es beim Motiv bjoern.cad.

    cad-viewer
    cad-files



  • Die Dateien sind beschädigt ... sagt zumindet WinRAR 😉

    M.T.



  • sowas...ist mir auch gerade aufgefallen.

    also hier die neuen links:

    Cad-File
    Exe-Datei



  • [scherz]Wenn du jetzt noch Morphing einbaust hast du ne super Grafikdemo ;)[/scherz]

    1. Warum flimmert das so grausam?
    2. Warum bleibt immer die voherige Ansicht bestehen, bis man mit LMT bestätigt?
    3. Warum kann man L+R MT gleichzeitig benutzen (cooler Effekt)?

    Auf Frage 3 bezogen - du könntest prüfen, welche Taste zuerst gedrückt wurde und dann, wenn die jeweils andere MT zusätzlich gedrückt wird, auf die Z-Achse umschalten.

    M.T.



  • 😉 also zu deinen fragen:

    1. bis jetzt hatte ich noch nicht gemerkt, dass es grausam flimmert! habe es schon auf einigen rechnern getestet, aber da geht es eigentlich...
    2. verstehe die frage nicht so ganz, aber man kann das objekt (in dem fall "bjoern") nur mit gedrückter LMT bewegen...
    3. Das ist eigentlich so gewollt, also dass man auch alle drei tasten gleichzeitig benutzen kann...

    ich bin aber auch kein profi. ist das erste mal, dass ich mit opengl gearbeitet habe...daher sind bugs bzw. fehler zu entschuldigen 🙂



  • Das könnte daran liegen, dass du den BackBuffer nicht richtig löschst. Ich hab hier in der Firma einen uralten Intel-Grafik-Chip, der entschuldigt leider gar nichts, aber mit dem Teil findet man super Fehler in bestimmten grafischen Programmen ... ich kann dir auch mal nen Screen schicken (Mail-Adresse erforderlich)

    M.T.



  • blubbermann2002@yahoo.de, gerade erstellt 🙂



  • Jetzt hab ich herausgefunden, woran das liegt - du malst die neue Ansicht immer auf einen Buffer - oder? Dann werden die beiden Buffer (der neue und der alte) immer abwechseld dargestellt - daher das Flimmern.
    Deswegen ist es auch unmöglich dieses Bleiben der alten Ansicht auf einen Screen zu bringen.

    M.T.



  • Ich verstehe Dein Problem überhaupt nicht wirklich:

    Mit LMT hoch-runter - drehst Du um die X-Achse
    Mit LMT links-rechts - drehst Du um die Y-Achse (oder umgekehrt)

    Mit RMT hoch-runter - zoomst Du ran oder raus

    Da kannst Du doch

    Mit RMT links-rechts - um die Z-Achse drehen...!?!?



  • Hi!

    Habe mein Problem leider immer noch nicht lösen können (habe mich auch erst um was anderes gekümmert)!

    Jedoch bin ich nun schon einen Schritt weiter. Ich habe entdeckt, dass er auch um Z dreht, jedoch häng es davon ab, welche Rotierung ich als erste vornehme. Hier ein Beispiel.

    glRotatef(angley,0.0,1.0,0.0);                  //Rotieren Y
    glRotatef(anglex,1.0,0.0,0.0);                  //Rotieren X
    

    in diesem Fall rotiert er sämtliche Bewegungen, also mit der Mouse nach links oder rechts, korrekt.

    schreibe ich es so:

    glRotatef(anglex,1.0,0.0,0.0);                  //Rotieren X
    glRotatef(angley,0.0,1.0,0.0);                  //Rotieren Y
    

    rotiert er sämtliche Bewegungen, also mit der Mouse nach oben oder unten, korrekt. Jetzt muss ich es nur unter einen 'Hut' bringen. Leider weiß ich nicht mehr weiter.


Anmelden zum Antworten