Клуб API Карт

Проблема с геообъектами, пересекающими 180 меридиан.

Пост в архиве.

Добрый день.

Столкнулся на эту тему пока в одном моменте. Если имеется линия или полигон, пересекающий 180 меридиан, и на нем находить точку по методу getClosest(anchorPosition), то если 

anchorPosition находится примерно в восточном полушарии (положительное число долготы предполагаемой точки на ломанной) - все правильно,

anchorPosition находится примерно в западном полушарии (отрицательное число долготы предполагаемой точки на ломанной) - выходит самая левая точка ломаной.

Это независимо если координаты вершин ломаных в западном полушарии с минусом или >180 град.

Кто знает, есть ли простое решение этому?


Использую версию 2.0.

Вот на скрине пять точек и линий от них к точкам геообъектов по методу getClosest, центр карты - это точка 0,180:

2 комментария

Можете прислать координаты внешнего многоугольника и точки, от которой неверно рассчитывается getClosest()?

точка 25.3456,-161.4186 например. многоугольник: 

polyline2 = new ymaps.Polyline([[-40, 140], [40, 140], [40, -140], [-40, -140], [-40, 140]], properties, options);