staging.inyokaproject.org

opengl Cursor

Status: Ungelöst | Ubuntu-Version: Ubuntu
Antworten |

ChriKle

Anmeldungsdatum:
7. Mai 2006

Beiträge: Zähle...

Hallo!
Ich möchte ein Koordinatensystem mit Opengl erstellen. Es wäre nicht schlecht wenn man die genauen Koordinaten der Maus, den Koordinaten des 3d Bildschirms zuordnen könnte.

Also nehmen wir mal an ich habe die Mauskoordinaten des Fensters (zb: mousex, mousey), die Fenstergröße (WinMaxX, WinMaxy)
und ein 3d Koordinatensystem auf dem Bildschirm (das beliebig im Raum gedreht ist). Nehmen wir an ich gebe den z-Wert vor.
Wie bekomme ich jetzt die Koordinaten x und y?

Hat jemand eine Idee?
Ich habe keine Lust die genauen Formeln für die verschiedenen Projektionen nachzuschauen, wüsste nicht mal genau wo man da nachschaut (sind 4x4 Matrizen ... , es muss doch möglich sein, so etwas von OpenGl ausrechnen zu lassen)

Blattlaus

Avatar von Blattlaus

Anmeldungsdatum:
29. März 2006

Beiträge: 1399

Versteh ich dich richtig?
Du hast die Koordinaten der Maus relativ zum linken, oberen Fensterecke und willst die Koordinaten relativ zur linken, oberen Bildschirmecke?

Marc_BlackJack_Rintsch Team-Icon

Ehemalige
Avatar von Marc_BlackJack_Rintsch

Anmeldungsdatum:
16. Juni 2006

Beiträge: 4735

Nein, bekannt sind die Koordinaten der Maus relativ zur oberen Fensterecke, gesucht sind x und y bei vorgegebenen z in "Weltkordinaten" der 3D Szene, die beliebig skaliert und gedreht sein kann. So hab' ich's jedenfalls verstanden.

Die Funktion gluUnproject() bzw. gluUnproject4() ist dafür gedacht.

Antworten |