Ich habe eine OpenGL-Szene mit einem oberen linken Koordinatensystem. Wenn ich glScale es zoomt von links oben (0,0). Ich möchte, dass es von der Maus-Koordinate (relativ zum OGL-Rahmen) heranzoomt. Wie wird das gemacht? DankAlgorithmus zum Zoomen in Maus (OpenGL)
7
A
Antwort
10
Ich glaube, das in vier Schritten durchgeführt werden kann:
- der x-Maus Finden und y-Koordinaten mit was auch immer Ihre Windowing-System funktionieren (dh GLUT oder SDL) hat für das, und verwenden gluUnProject zu erhalten die Objektkoordinaten, die mit denen Fenster entsprechen Koordinaten
- Übersetzen von (x, y, 0) an diesen Koordinaten
- Maßstab durch den gewünschten Vektor (i, j, k) den Ursprung zu setzen
- durch Übersetzen (- x, -y, 0), um den Ursprung zurück zu setzen l eft
3
Ich habe eine glatte Zoom-in-Verwendung von glortho. Das Skelett ist meine Lösung
glOrtho (initial Darstellungsfeld x, y & size)
glCallList (my Anzeigeliste)
machen.
.
Schleife, um nach und nach zu den endgültigen Viewport Koordinaten/Größe zu gehen. Implementieren Sie Ihre Timing- und FPS-Anforderungen
.
.
glOrtho (endgültige Ansichtsfenster x, y & Größe)
glCallList (meine Anzeigeliste)
machen Ich hoffe, dass Sie die allgemeine Idee. Es gibt wenige andere Methoden, um das zu erreichen, aber ich finde, dass die Methode am einfachsten zu verstehen ist.
Verwandte Themen
- 1. Zoomen mit der Maus: Auswahlfarbe
- 2. Tao OpenGL (Maus Tao.freeglut.dll)
- 3. Zoomen und Wischen mit OpenGL ES
- 4. Problem mit OpenGL Maus Rückrufe in Pygame
- 5. Android-Vorschlag zum Zoomen
- 6. Algorithmus zum Erkennen von Mausbewegungen
- 7. Prise zum Zoomen mit CSS3
- 8. Pinch zum Zoomen deaktivieren IE10
- 9. OpenGL GLSL Cel Shading und Gliederungs Algorithmus
- 10. Javascript zum Zoomen und Schwenken eines Bildes
- 11. Zum Zoomen auf die Leinwand klicken
- 12. Plugin zum Zoomen und Schwenken SVG
- 13. Algorithmus zum Gruppieren Namen
- 14. OpenGL Planet Generation - Einfaches Matrix-Problem (Planet "Spins" mit Maus)
- 15. bester Algorithmus zum Tauschen?
- 16. Algorithmus zum Bildvergleich
- 17. OpenGL Smooth Zooming
- 18. Scan-Linie füllen OpenGL/GLUT-Algorithmus in C++
- 19. Bild in Bildbox zoomen
- 20. Diagramm zoomen in D3
- 21. Zoomen einzelner Produktbilder in Shopify
- 22. Techniken zum Glätten von Flächenkanten in OpenGL
- 23. In OpenGL relativ zum Ansichtsfenster rotieren
- 24. Prise zum Zoomen Auswirkung auf UIImageView in scrollView?
- 25. UIPinchGestureRecognizer zum Zoomen und Verschieben eines Bildes in xcode
- 26. Algorithmus zum Gruppieren verwandter Elemente
- 27. Zoomen in Visual Studio 2012 Ultimate
- 28. Verwenden von GLFW zum Erfassen der Maus ziehen? [C++]
- 29. Algorithmus zum "Überfluten" eines Bereichs
- 30. Algorithmus zum Erzeugen der Bitmaske