Zoom in Parallelprojektion
-
Guten Morgen,
in OpenGL stelle ich ein Objekt mit Hilfe der Parallelprojektion dar. Ausserdem habe ich u.a. eine ZoomIn/ZoomOut Funktion implementiert, welche ich über die Funktion glOrto(...) definiere. D.h., beim entsprechenden Dreh am Whell Rad verändere ich die Grenzen vom Viewing Volumen (das ist so die einzige Möglichkeit, die ich habe, um ein Zooming Mechanismus in der Parallelprojektion zu erstellen. Natürlich könnte ich auch über die Funktion glTranslate(...) die z-Achse verändern, was aber nicht in Frage kommt, da sich das Objekt durch den Benutzer im Raum dreht und sich somit auch diese ändert und niemals konstant im Raum liegt).
So, nun aber eigentlich zu meiner Frage, die sich aus dem oben dargestellten Sachverhalt ergibt: Auf meinen OpenGl Paint Fenster habe ich Buttons (keine Standart Buttons, sondern eigens definierte (Polygon mit Texture). Wenn der User nun zoomt, so wird auch der Button vergrößert/verkleinert (was natürlich echt doof aussieht :-)). Zu diesem Problem ist mir bisher nur eine Möglichkeit zur Lösung eingefallen:
Diese (und denke auch etwas umständliche) Lösung sieht vor: bei entsprechendem Zoom des Objektes die Zoomweite auf den "Button" umzurechnen, d.h., erhält das Objekt eine Zoom In, dann -> Button wird verkleinert und andersherum.
Vieleicht kann mir jemand sagen, ob:
1. eine Möglichkeit für eine andere Zoomfuntkion in der Parallelprojektion besteht oder
2. wie ich den Button intigrieren müsste, ohne das das Viewingvolumen bei Veränderung auf diesen greift.Danke schon mal.
In diesem Sinne.