Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Расчет искажения долготы при приближении к полюсам?

Автор вопроса: justkevinОтветов: 1

Я работаю над игрой, в которой игроки пытаются нацеливаться на точки на сфере.

По мере приближения целей к полюсам игра должна становиться более щадящей по долготе, потому что отношение расстояния по долготе к расстоянию по широте увеличивается. На полюсах игра должна быть бесконечно щадящей по долготе.

Какую формулу я ищу, которая говорит мне, сколько продольного расстояния равно 1 единице широтного расстояния для конкретной широты? Предположим, что долгота и широта выражаются как числа с плавающей запятой в диапазоне от 0 до 1, а на экваторе (0,5) долгота равна широте.

unity3dlatitude-longitudegeometry

Ответы

Ответ 1 · MBo

Формула довольно проста (для обычных сферических координат с диапазоном широт -Pi/2..Pi/2):

Lon_Lat_Ratio = Cos(Latitude)

Но ваша параметризация отличается, поэтому

Lon_Lat_Ratio = Sin(Latitude_01 * Pi)

Соотношение равно 1 на экваторе и 0 на полюсах.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы