源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

SOSO地图API使用(一)在地图上画圆实现思路与代码

  • 时间:2022-06-23 15:37 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:SOSO地图API使用(一)在地图上画圆实现思路与代码
[b]前言[/b]:最近在做SOSO地图相关开发,遇到相关画圆知识,特此简单记录下来。 [b]1.在页面中添加SOSO地图API引用,引用脚本[/b]:
[u]复制代码[/u] 代码如下:
<script charset="utf-8" src="http://api.map.soso.com/v1.0/main.js"></script>;
[b]2.新建一个地图DIV容器,如下[/b]:
[u]复制代码[/u] 代码如下:
<div style="width:603px;height:300px" id="container"></div>
[b]3.初始化地图[/b]:
[u]复制代码[/u] 代码如下:
 var center=new soso.maps.LatLng(22.540551,113.934593);  var map=new soso.maps.Map(document.getElementById("container"),{      center:center,      zoomLevel:14  });
[b]4.创建一个圆形对象[/b]:
[u]复制代码[/u] 代码如下:
 var circle=new soso.maps.Circle({         map:map,         center:center,         radius:1000,         fillColor:"#00f",         fillOpacity:0.3,         strokeWeight:2     });
[b]5.为了美观,再给圆形设置一个中心点,代码如下[/b]:
[u]复制代码[/u] 代码如下:
 var marker = new soso.maps.Marker({      position: center,      map: map  });  var anchor = new soso.maps.Point(0, 0),      size = new soso.maps.Size(27, 35),      icon = new soso.maps.MarkerImage('http://s.map.soso.com/themes/default/img/centermarker.png'          , size//指定使用图片部分的大小          , anchor//用来指定图标的锚点,默认为图标中心的位置,可以指定图标的位置,默认是和图片的左上角对齐的。          , new soso.maps.Point(0, 0)//指定使用图片的哪一部分,相对图片左上角的像素坐标          , new soso.maps.Size(27, 35)//指定图片的原始大小          , new soso.maps.Size(-12, -30));//向左偏12px,向上偏30px  marker.setIcon(icon);  var decor = new soso.maps.MarkerDecoration({      content: '',      margin: new soso.maps.Size(0, -4),      align: soso.maps.ALIGN.CENTER,      marker: marker  });
[b]6.完成上面的编码后,得到一个如下图样子的圆形 [/b][img]http://files.jb51.net/file_images/article/201301/2013115152429011.png?201301515253[/img] 7.[b]具体代码如下[/b]:
[u]复制代码[/u] 代码如下:
 <!DOCTYPE html>  <html xmlns="http://www.w3.org/1999/xhtml">  <head>  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  <title>SOSOMap</title>  <style type="text/css">  *{      margin:0px;      padding:0px;  }  body, button, input, select, textarea {      font: 12px/16px Verdana, Helvetica, Arial, sans-serif;  }  #info{      width:603px;      padding-top:3px;      overflow:hidden;  }  .btn{      width:190px;  }  </style>  <script charset="utf-8" src="http://api.map.soso.com/v1.0/main.js"></script>  <script type="text/javascript">  function init(){      var center=new soso.maps.LatLng(22.540551,113.934593);      var map=new soso.maps.Map(document.getElementById("container"),{          center:center,          zoomLevel:14      });      var circle=new soso.maps.Circle({          map:map,          center:center,          radius:1000,          fillColor:"#00f",          fillOpacity:0.3,          strokeWeight:2      });      var marker = new soso.maps.Marker({          position: center,          map: map      });      var anchor = new soso.maps.Point(0, 0),          size = new soso.maps.Size(27, 35),          icon = new soso.maps.MarkerImage('http://s.map.soso.com/themes/default/img/centermarker.png'              , size//指定使用图片部分的大小              , anchor//用来指定图标的锚点,默认为图标中心的位置              , new soso.maps.Point(0, 0)//指定使用图片的哪一部分,相对图片左上角的像素坐标              , new soso.maps.Size(27, 35)//指定图片的原始大小              , new soso.maps.Size(-12, -30));//向左偏12px,向上偏30px      marker.setIcon(icon);      var decor = new soso.maps.MarkerDecoration({          content: '',          margin: new soso.maps.Size(0, -4),          align: soso.maps.ALIGN.CENTER,          marker: marker      });       var path1=[          center      ];       var polyline = new soso.maps.Polyline({          path: path1,          strokeColor: '#000000',          strokeWeight: 5,            strokeOpacity: 1,          editable:false,          map: map      });      /*      soso.maps.Event.addListener(map,'zoomlevel_changed',function() {          circle.setMap(null);console.log(map);          circle.setMap(map);      });      */  }  window.onload=init; </script>  </head>  <body onload="init()">  <div style="width:603px;height:300px" id="container"></div>  </body>  </html>
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部