доставки. Мне нужно чтобы если центер карты(Пин) находится внутри зоны доставки(полигона) , то я показываю адрес по координатам(метод который возвращает адрес по координатам уже есть), если вне зоны доставки(полигона) то я показываю текст Вы вне зоны доставки. То есть как мне узнать центр(пин) карты находится внутри полигона или вне?
У тебя координаты как выражены?
Свои координаты LatLng, координаты полигона List<LatLng>
условно говоря, у тебя есть (x, y) каждой точки. Полигон прямоугольником представлен?
почти
всегда использовал для этого метод, найденный по запросу java point in polygon
а на сферу не положить прямоугольник)
То-то я и спрашиваю, как там с формой полигона)
я бы пробовал чекать LatLng твоей точки, типа чтобы точка лежала под верхней линией, но над нижней; такой же прикол с боковыми гранями - правее левой грани и левее правой. То есть упростить до условного прямоугольника - чекай, что тут координаты твоей точки больше/меньше координат той или иной вершины прямоугольника. Когда больше, а когда меньше? Тебе нужно понять свою систему координат, где у нее начало и в какую сторону направлены оси, глянь широто-долготу на картинках
та там всё просто решается, готовый алгоритм на 10 строчек копируется из гитхаба или со
ну так и тут 10 строчек)
Так полигон же может быть и не четырёхугольным вообще
так я выше и спрашивал про форму
https://stackoverflow.com/a/41203381 ?
да я его нашел, спасибо
Обсуждают сегодня