緯度/経度の値と距離の値があります。指定された場所を中心としてバウンディングボックスを計算する必要があります。したがって、距離が200メートルの場合、長方形のボックスは前後に200メートル、左右に配置する必要があります。
JavaScriptを使用してこれを行うにはどうすればよいですか?
緯度/経度の値と距離の値があります。指定された場所を中心としてバウンディングボックスを計算する必要があります。したがって、距離が200メートルの場合、長方形のボックスは前後に200メートル、左右に配置する必要があります。
JavaScriptを使用してこれを行うにはどうすればよいですか?
緯度と経度を操作するための便利な JavaScript 関数を次に示します。
http://www.movable-type.co.uk/scripts/latlong.html
ポイントの周囲の境界ボックスの場合、上記の JavaScript ライブラリを使用した簡単な変更は次のようになります。
LatLon.prototype.boundingBox = function (distance)
{
return [
this.destinationPoint(-90, distance)._lon,
this.destinationPoint(180, distance)._lat,
this.destinationPoint(90, distance)._lon,
this.destinationPoint(0, distance)._lat,
];
}
(これは、「開始点からの距離と方位を指定した目的地」の計算を使用します。)
使用している地図投影法で緯度/経度座標を ax/y 値に変換する必要があります。その後、境界ボックスを計算できます。
私は Google Maps API をよく知りません。また、あなたがボックスで何をしたいのか正確にはわかりません。しかし、おそらくGBounds、GMercatorProjection、およびGLatLngBoundsが役立つ場合があります。また、Google Maps API が使用している地図投影法の計算をサポートしていない場合は、 Proj4jsを使用すると便利です。また、 Map Projectionsについて読みたいと思うかもしれません。Google マップはデフォルトでメルカトル図法を使用しています。
V3 APIを使用している場合は、 RectangleとCircleを利用できます。このブロガーの簡単な説明と例を参照してください。
http://apitricks.blogspot.com/2010/02/rectangle-and-circle-of-v3.html