Равноугольная карта в сети
Я планирую построить онлайн-карту для маркеров (пинов) игры, и мне не удается установить правильную широту моих маркеров.
Оригинальная картаквадрат 2048 * 2048 пикселей
Тогда я получил маркеры (много тысяч)
Координаты карты задаются с помощью обозначений x, y от 0 до 100. 0, 0 - этоверхний левый угол и 100, 100 этоНижний правый угол карты. x = 50, y = 50 - это широта = 0 °, lng = 0 ° (центр изображения).
Чтобы преобразовать мои обозначения в долготу, я использую эту функцию JS, она хорошо работает:
function longitude(x)
{
var lng = 0
if (x < 50) // Negative Longitude (West)
{
lng = (x - 50) / 50 * 180;
}
else // Positive Longitude (East)
{
lng = (50 - x) / 50 * 180;
}
return lng
}
Но для широты это не работает, потому что эти двигатели используют проекцию Меркатора, а я нет.
Если у кого-то есть правильная формула, это будет с благодарностью :(