Uso de OpenGL Estoy intentando dibujar un mapa primitivo de mi campus.¿Cómo funciona el zoom, la panorámica y la rotación?
¿Alguien puede explicarme cómo se implementan las funciones de panoramización, acercamiento y rotación?
Por ejemplo, con la panorámica y el zoom, ¿es simplemente yo el que ajusta mi ventana gráfica? Entonces trazo y dibujo todas mis líneas que componen mi mapa, y luego, cuando el usuario hace clic y lo arrastra, ¿se ajusta mi ventana gráfica?
Para la panoramización, ¿cambia los valores de x/y de mi ventana gráfica y para hacer zoom aumenta o disminuye mi ventana gráfica en cierta cantidad? ¿Qué hay para la rotación?
Para la rotación, ¿tengo que hacer transformaciones afines para cada polilínea que represente el mapa de mi campus? ¿No será costoso hacerlo sobre la marcha en un mapa de tamaño decente?
O, ¿la ventana gráfica queda igual y la panorámica/acercamiento/rotación se realiza de otra manera?
Por ejemplo, si vas a este link verá lo describen panorámica y de zoom exactamente cómo tengo más arriba, mediante la modificación de la ventana gráfica.
¿Esto no es correcto?
Permítanme agregar que en ningún momento la "ventana gráfica" (tal como se establece a través de glViewport) entra en este proceso. La ventana gráfica determina en qué región de la ventana va a renderizar (esto no es cierto en realidad, pero piense de esta manera por el momento) y generalmente abarcará toda la ventana. – Thomas