「有用な半径」(座標の精度を考えてください) を表示しているMapViewMapView
があります。のProjectionのmeterToEquatorPixelsを使用します。これは、赤道距離のためだけに使用されます) では、十分に正確な距離 (ピクセル単位) が得られません。 )。半径を指定して座標の周りに円を表示したい場合、これをどのように計算しますか?
11932 次
3 に答える
29
そのため、Google マップではメルカトル図法を使用しています。これは、赤道から離れるほど距離が歪むことを意味します。この議論によると、距離を変換する適切な方法は次のようになります。
public static int metersToRadius(float meters, MapView map, double latitude) {
return (int) (map.getProjection().metersToEquatorPixels(meters) * (1/ Math.cos(Math.toRadians(latitude))));
}
于 2010-01-17T23:51:57.557 に答える
-2
projection.toPixels(GeoP, pt);
float radius = projection.metersToEquatorPixels(50);
これを試してみてください... MapRadiusで使用しましたが、機能しているようです
于 2012-07-18T09:12:50.773 に答える