Как вычислить радиус вокруг точки в Android MapView?

У меня есть MapView, в котором я показываю «полезный радиус» (думаю, точность координаты) дюйма . Использование измерительных измерительных приборов MapView , которые, по общему признанию, только для экваториального расстояния) не дает мне достаточно точного расстояния (в пиксели). Как бы вы вычислили это, если хотите отобразить круг вокруг вашей координаты, учитывая радиус?

Таким образом, Google Maps использует проекцию Mercator . Это означает, что чем дальше вы выходите от экватора, тем больше искажаются расстояния. Согласно этому обсуждению , правильный способ преобразования для расстояний – это что-то вроде:

 public static int metersToRadius(float meters, MapView map, double latitude) { return (int) (map.getProjection().metersToEquatorPixels(meters) * (1/ Math.cos(Math.toRadians(latitude)))); } 
 mMap.addCircle( new CircleOptions().center( new LatLng( bounds.getCenter().latitude, bounds.getCenter().longitude ) ) .radius(50000) .strokeWidth(0f) .fillColor(0x550000FF) ); 
 projection.toPixels(GeoP, pt); float radius = projection.metersToEquatorPixels(50); 

Попробуйте это и посмотрите … я использовал его на моем MapRadius и, похоже, работает