OpenGL, перевод координат экрана

Рейтинг: 0Ответов: 1Опубликовано: 15.04.2015

У меня на экране отображается диаграмма. Как мне пересчитать экранные координаты точки на диаграмме в физические величины, соответствующие значениям на осях? Я хочу выводить их при движении мышки (которая даёт мне пиксельные координаты).

Ответы

▲ 3Принят

Если это диаграмма, то для этого Вам необходимо знать Min и Max физических величин по обеим осям. Отношения разностей этих величин к размерам экрана дадут масштаб (Mx, My) по обеим осям. Соответствующая абсцисса (Х) физической точки вычисляется по формуле

X = Mx * (xp - x0) + MinX, где    
xp - экранная абсцисса точки;
x0 - "нулевая" абсцисса экрана;
MinX - минимум физического экрана.

При вычислении физ. ординаты помните, что экранная ордината увеличивается сверху вниз.