安哥网络 发表于 2015-4-11 23:26:07

谷歌地图编程原来如此简单

谷歌地图编程原来如此简单
项目里要使用地图展现街道多点位置,肯定是需要GIS之类的软件啦,按经验,这些东西使用起来很烦琐、而且多数冗余功能如同鸡肋,什么Mapinfo(1995年用过)、ArcGIS(2006年用的)都感觉不好,也可能因为我还是门外汉吧,反正搞了些项目完成后就不想再用了。
几年下来,项目又得拿起来,先查查有什么新进展吧。

WebGIS

原来有个Google Earth不错,有些意思,好象还是复杂了些,

这个Googlemap好象不错啊。
操作如些简单:
1、以googlemap上申请个Key;
2、写个网页调用googlemap;
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd“>
<html xmlns=”http://www.w3.org/1999/xhtml“>
<head>
   <meta http-equiv=”content-type” content=”text/html;charset=utf-8″/>
   <title>引用谷歌地图并使用外部数据源</title>
       <script src=”http://ditu.google.cn/maps?file=api&amp;v=2&amp;key=ABQIAAAAsVc8LjyV8-x9BmDUEt6auhRoDeMTZj9JIXnWYBOoKdYJYwtKDhR3N76IXz5msNaSWQfcPUk1i_Bkkg&sensor=false“         type=”text/javascript”></script>
   <script type=”text/javascript”>
   //<![CDATA[
function load()
{
var map = newGMap2(document.getElementByIdx_x("map"));
map.addControl(newGSmallMapControl());
map.addControl(newGMapTypeControl());
map.setCenter(newGLatLng(31.236510,121.542625),13);//给个默认中心位置
map.setMapType(G_NORMAL_MAP);//修改地图类型
GDownloadUrl("data.xml",function(data, responseCode)
{
   var xml =GXml.parse(data);
   var markers =xml.documentElement.getElementsByTagName_r("marker");
   var lat =0.0;
   var lng =0.0;
   for (var i =0; i < markers.length; i++)
   {
    varlatx = parseFloat(markers.getAttribute(“lat”));
    varlngy = parseFloat(markers.getAttribute(“lng”));
    if(i>0)lat = (lat*(i-1)+latx)/i;
    if(i>0)lng = (lng*(i-1)+lngy)/i;
    //varpoint = newGLatLng(parseFloat(markers.getAttribute(“lat”)),parseFloat(markers.getAttribute(“lng”)));
    varpoint = new GLatLng(latx,lngy);
    map.addOverlay(newGMarker(point));
   }
   map.setCenter(newGLatLng(lat,lng));//按数据设置地图中心位置
});
}
   //]]>
   </script>
</head>
<body onload=”load()”onunload=”GUnload()”>
   <div id=”map” style=”width: 750px; height:550px”></div>
<divid=”message”></div>
</body>
</html>
3、组织点数据就可以显示了。
<markers>
<marker lat=”31.239197″lng=”121.559200″/>
<marker lat=”31.240003″lng=”121.558036″/>
<marker lat=”31.237253″lng=”121.553684″/>
<marker lat=”31.236700″lng=”121.549857″/>
<marker lat=”31.234272″lng=”121.546383″/>
<marker lat=”31.233197″lng=”121.541405″/>
<marker lat=”31.231981″lng=”121.537674″/>
<marker lat=”31.230735″lng=”121.536317″/>
<marker lat=”31.228909″lng=”121.536455″/>
<marker lat=”31.229124″lng=”121.536455″/>
</markers>
效果是这样的:

谷歌地图编程原来如此简单
摘自:http://blog.sina.com.cn/s/blog_3d10a8830100vnuv.html

页: [1]
查看完整版本: 谷歌地图编程原来如此简单