次のような場所のリストが与えられた場合
<td>El Cerrito, CA</td>
<td>Corvallis, OR</td>
<td>Morganton, NC</td>
<td>New York, NY</td>
<td>San Diego, CA</td>
各場所の画鋲を使って Google マップを作成する最も簡単な方法は何ですか?
次のような場所のリストが与えられた場合
<td>El Cerrito, CA</td>
<td>Corvallis, OR</td>
<td>Morganton, NC</td>
<td>New York, NY</td>
<td>San Diego, CA</td>
各場所の画鋲を使って Google マップを作成する最も簡単な方法は何ですか?
API キーを使用して、コードにマップの基本が既にあると仮定しています。
<head>
<script
type="text/javascript"
href="http://maps.google.com/maps?
file=api&v=2&key=xxxxx">
function createMap() {
var map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(37.44, -122.14), 14);
}
</script>
</head>
<body onload="createMap()" onunload="GUnload()">
Google マップのすべては、緯度 (lat) と経度 (lng) に基づいています。
したがって、単純なマーカーを作成するには、緯度と経度を使用して GMarker を作成するだけです。
var where = new GLatLng(37.925243,-122.307358); //Lat and Lng for El Cerrito, CA
var marker = new GMarker(where); // Create marker (Pinhead thingy)
map.setCenter(where); // Center map on marker
map.addOverlay(marker); // Add marker to map
ただし、各都市の緯度と経度を調べたくない場合は、Google の Geo Coder を使用できます。例を次に示します。
var address = "El Cerrito, CA";
var geocoder = new GClientGeocoder;
geocoder.getLatLng(address, function(point) {
if (point) {
map.clearOverlays(); // Clear all markers
map.addOverlay(new GMarker(point)); // Add marker to map
map.setCenter(point, 10); // Center and zoom map on marker
}
});
したがって、GeoCoder からすべての都市の GLatLng の配列を作成し、それらを地図上に描画します。
Google Maps APIの例を確認してください 。非常にシンプルで、API ドキュメントは優れています。ほとんどの例は、すべてのコードをクライアント側で JavaScript で実行するためのものですが、他の言語用の API も利用できます。
ここにいくつかのリンクがありますが、ほとんどのものと同様に、私はまだそれらを試すことに慣れていません.
http://gathadams.com/2007/08/21/add-google-maps-to-your-net-site-in-10-minutes/
乾杯ジョン
これを試してください: http://www.google.com/uds/solutions/wizards/mapsearch.html
これは、コードを生成する Google マップ ウィザードです。アプリケーションに最適ではありません。しかし、「足を濡らす」には良い場所です;)
編集:(リンクを見つけました)、これは優れたGoogle Maps APIの段階的なチュートリアルです。
幸運を!
/mp
本当に答えを出すにはもっと多くの情報が必要だと思いますが、Django Pluggables には、役に立つかもしれないdjango-googlemap プラグインがあります。
編集: Adam には、はるかに優れた回答があります。疑わしい場合は、API の例を見てください。