六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 852|回复: 0

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

[复制链接]
 楼主| 发表于 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

该会员没有填写今日想说内容.
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表