制作Google Map混搭的最简单方法?

时间:2020-03-05 18:40:31  来源:igfitidea点击:

给定位置列表,例如

<td>El Cerrito, CA</td>
<td>Corvallis, OR</td>
<td>Morganton, NC</td>
<td>New York, NY</td>
<td>San Diego, CA</td>

在每个位置生成带有图钉的Google Map的最简单方法是什么?

解决方案

回答

我想可能需要更多信息才能真正为我们提供答案,但是在Django Pluggables上,有一个django-googlemap插件可能会有所帮助。

编辑:亚当有一个更好的答案。如果有疑问,请查看API示例。

回答

查看Google Maps API示例
他们使它变得非常简单,并且他们的API文档也很棒。
大多数示例都是在客户端用JavaScript编写所有代码的,但是也有针对其他语言的API。

回答

试试这个:http://www.google.com/uds/solutions/wizards/mapsearch.html

这是一个谷歌地图向导,它将为我们生成代码。并非最适合应用程序;但是一个"弄湿你的脚"的好地方;)

编辑:(找到链接),这是一个不错的Google Maps API分步教程。

祝你好运!

/ mp

回答

我假设我们已经使用API​​密钥在代码中有了Maps的基础知识。

<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)。
因此,要创建一个简单的标记,我们只需使用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的地理编码器。这里是一个例子:

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数组,然后在地图上绘制它们即可。

回答

这里有一些链接,但是与大多数事情一样,我还没有尝试尝试它们的方法。

http://gathadams.com/2007/08/21/add-google-maps-to-your-net-site-in-10-minutes/

http://www.mapbuilder.net/

干杯
约翰