Я хочу определить координаты 2D-экрана (x, y) точек в трехмерном пространстве (x, y, z).
Точки, которые я хочу спроецировать, являются точками реального мира, представленными координатами GPS и высотой над уровнем моря.
Например:
Точка (широта: 49.291882, длина: -123.131676, высота: 14 м)
Положение и высота камеры также могут быть определены как точки x, y, z. У меня также есть курс камеры (градусы компаса), степень ее наклона (выше / ниже горизонта) и крен (вокруг оси z).
У меня нет опыта в 3D-программировании, поэтому я ознакомился с предметом перспективного проектирования и узнал, что он требует знания матриц, преобразований и т. Д. - все это в настоящее время полностью смущает меня.
Мне сказали, что OpenGL может быть полезен для построения 3D-модели точек реального мира, настройки ориентации камеры и получения 2D-координат 3D-точек.
Однако я не уверен, является ли использование OpenGL лучшим решением этой проблемы, и даже если я не знаю, как создавать модели, настраивать камеры и т. Д.
Может ли кто-нибудь предложить лучший способ решения моей проблемы? Если OpenGL - реальное решение, я должен был бы использовать OpenGL ES, если это имеет какое-то значение. Да, и какое бы решение я ни выбрал, оно должно выполняться быстро.
Спасибо за вашу помощь