Клуб API Карт

Точность координат. Получение центра многоугольника (или центра линии).

badanind
23 сентября 2012, 20:27

1) Возможно ли стандартными средствами понизить точность координат до 2-4 знаков после запятой - сохраняю координаты многоугольника 

e.get('target').geometry.getCoordinates() - получаются по итогу длинные строки. [[[59.12063913314881,37.906837463373456],[59.124501551369676,37.906758880610035],[59.12455161814858,37.91418685912555],[59.12064937378929,37.91446762084454],[59.12063913314881,37.906837463373456]]]

Хочется что-то вроде  [[[59.12,37.90],[59.12,37.90],[59.12,37.91],[59.12,37.91],[59.12,37.90]]]

2) Есть ли способы найти центр многоугольника по координатам? Входные данные массив Num[][][] на выходе хотелось бы получить координаты центра. [44.55,44.55] например.

Или же координаты центра диагонали (на входе координаты точек диагонали, которые можно получить через polygon.geometry.getBounds();)

1 комментарий
Подписаться на комментарии к посту

1. Используйте стандартные средства javascript

var coordinates = e.get('target').geometry.getCoordinates(),

      optimized = coordinates.map(function (coords) { return [coords[0].toFixed(4), coords[1].toFixed(4)] });

2. Нужно вспомнить школьный курс геометрии (ну или поиском воспользоваться)