Так что я должен показать как можно больше маркеров на моей карте Google на Android. Я использую следующий код, чтобы получить соответствующие LatLngBounds для отображения всего массива маркеров в одном окне на экране:
val builder = LatLngBounds.Builder()
for (point in latLngPoints()) {
builder.include(point)
}
val bounds = builder.build()
googleMapCameraBoundsCalculated(bounds, gMap)
private fun googleMapCameraBoundsCalculated(latLngBounds: LatLngBounds, gMap: GoogleMap) {
gMap.moveCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, CAMERA_ZOOM_PADDING_METERS))
}
Теперь, проблема возникает, когда у меня есть маркеры, которые находятся ... скажем, на Гавайях, и тот, который находится в Нью-Йорке.
Из-за очень очень больших расстояний между маркером в Нью-Йорке и маркерами на Гавайях (рядом друг с другом), камера перемещается к среднему значению маркеров (между ними), но не может увеличить достаточно, чтобы полностью увидеть все маркеры. В идеале я хотел бы найти способ исключить маркеры, которые находятся дальше всего от среднего значения (например, в Нью-Йорке), чтобы камера могла увеличивать маркеры на Гавайях (которые все относительно близко друг к другу).
По сути, я хочу исключить маркеры, которые бы препятствовали отображению большинства маркеров из-за максимально возможного увеличения на карте Google.
Спасибо за предоставленную помощь, я нигде не нашел решения этой проблемы.