Нормализовать «Точку» - PullRequest
       18

Нормализовать «Точку»

0 голосов
/ 23 октября 2011

У меня есть приложение C ++ / OpenGl / Glut, которое имеет ортографическую проекцию.

Окно имеет ширину 500 х 500 пикселей. В настоящее время, когда происходит щелчок мыши, точка будет между (0,0) и (500, 500).

Я хотел бы либо взять эту точку и преобразовать ее в (0,0) и (0,1) (нормализовать ее), либо запросить, чтобы glutMouseFunc () вернул значения x и y в диапазоне [0 , 1]. Это возможно? Или мне следует взглянуть на более математический способ преобразования значений x и y по одному в нормализованное значение?

Ответы [ 2 ]

4 голосов
/ 23 октября 2011

Просто разделите координаты по размеру окна. Просто убедитесь, что размер окна поддерживается в актуальном состоянии (т. Е. Перехватываете событие resize.) Это имеет нулевую стоимость, и нет способа, чтобы оно когда-либо отображалось в профиле.

0 голосов
/ 24 октября 2011

взять размер окна и разделить его на координаты мыши.

...