Название: Zoom в OpenGL... как сделать? Отправлено: vulko от Март 18, 2014, 13:42 Уже который день бьюсь над задачей зума в 2d OpenGL сцене.
Есть QGraphicsScene на весь экран у которой в drawBackground() примерно следующее: glViewport (fullscreen) gluOrtho2D() ...отрисовка... Нужно сделать зум opengl сцены в соотв. с выделяемой мышкой областью на экране. Никак не могу пересчитать координаты... Может кто сталкивался с такой задачей и что-нибудь подскажет? Название: Re: Zoom в OpenGL... как сделать? Отправлено: Old от Март 18, 2014, 13:56 http://www.blitzbasic.com/Community/posts.php?topic=57006
Название: Re: Zoom в OpenGL... как сделать? Отправлено: vulko от Март 18, 2014, 14:57 http://www.blitzbasic.com/Community/posts.php?topic=57006 Спс, такой подход (когда есть центральная точка и зум с помощью glScalef) помог решить проблему... Но остается правда небольшое но, теперь не совсем понятно как сделать возможность дальнейшего зума... Т.е. выбрал одну область, и решил ещё и в неё некую часть увеличить... По идее scale посчитать тут не проблема, а что делать с центральной точкой? Как пересчитать её координаты? В данный момент центральную точку считаю так (приложение fullscreen): Код: mapScale = (float) CfgManager::Instance()->getScreenHeight() / selectedAreaSize; пока что с мэджик намберами... 300 в данном случае это размер gl сцены, а 1080 высота экрана... :) |