3

グーグルマップV3で円を描く必要がありますが、中心と外側の2つの座標があります。問題は、APIが中心と「半径」を予期していることです。例えば:

var myCirclePath = [];
myCirclePath.push(new google.maps.LatLng(18.111111,66.111111));
myCirclePath.push(new google.maps.LatLng(18.223344,66.222222));

var myCircle = new google.maps.Circle({
    center: myCirclePath[0],
    radius: // what do I put here????
    map: map
});

私はウェブを検索して、ラジアン、度、罪、アタンなどについてたくさんのことを見つけました...しかし、私は数学が苦手で、完全に道に迷っています。

したがって、質問は次のとおりです
。a)「radius:」オプションに何を入力する必要がありますか?
b)ズームを円の周りに合わせるにはどうすればよいですか?「Bounds.Extend」はそれを行いません

4

2 に答える 2

5

したがって、質問は次のとおりです。

a) "radius:" オプションには何を入力すればよいですか?

ジオメトリ ライブラリcomputeDistanceBetween() を使用して半径を見つけます (2 点を渡します)。

b) ズームを円の中心にするにはどうすればよいですか? 「Bounds.Extend」はそれを行いません

circleを作成したら、その境界を取得するために getBounds() メソッドを呼び出すことができます

于 2012-07-20T13:56:34.993 に答える
1

間違っている場合は訂正してください。ただし、半径は円の中心点と外側の点の間の距離ではありませんか? 私はこれで行きます。

于 2012-07-20T13:47:08.083 に答える