Используя OpenGL, я пытаюсь нарисовать примитивную карту своего кампуса.
Может ли кто-нибудь объяснить мне, как обычно реализуется панорамирование, масштабирование и вращение?
Например, с панорамированием и масштабированием, я просто настраиваю окно просмотра? Итак, я строю и рисую все свои линии, составляющие мою карту, а затем, когда пользователь щелкает и перетаскивает, он настраивает мое окно просмотра?
Для панорамирования сдвигает ли он значения x/y моего окна просмотра, а для масштабирования увеличивает/уменьшает ли мое окно просмотра на некоторую величину? А для ротации?
Нужно ли для поворота выполнять аффинные преобразования для каждой полилинии, представляющей мою карту кампуса? Не будет ли это дорого делать на лету на карте приличного размера?
Или окно просмотра остается прежним, а панорамирование/масштабирование/вращение выполняется как-то иначе?
Например, если вы перейдете по этой ссылке, вы Я увижу, как он описывает панорамирование и масштабирование точно так же, как я описал выше, изменяя окно просмотра.
Разве это не правильно?