现在重构web项目的时候发现,以前项目中是高德画基站的扇区的时候,通过计算点来画多边形,在站点的数量比较多的时候,会增加请求,同时计算扇区的时候有大量的计算,这样会极度浪费服务器的性能,所以对这块进行了改良,直接使用的高德地图的canvas层在画基站,效果如下图所示:

其代码为:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>ImageLayer</title>
<meta id="viewport" name="viewport" content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0"/>
<link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css"/>
<script src="http://webapi.amap.com/maps?v=1.4.2&key=您申请的key值"></script> -->
</head> <body>
<div id="container"></div> <script>
var map = new AMap.Map('container', {
resizeEnable: true,
// viewMode:"3D",
zoom:15,
center:[116.335183,39.941735]
}); /*
* 添加Canvas图层
*/
var canvas = document.createElement('canvas');
canvas.width = map.getSize().width;
canvas.height = map.getSize().height;
var context = canvas.getContext('2d');
//context.strokeStyle='white';
//canvas.style.zIndex = AMap.Overlay.getZIndex(this._point.lat);
context.globalAlpha = 1;
context.lineWidth = 2;
var radious = 0;
var secNumber = 1;
var draw = function(argument) {
context.clearRect(0,0,canvas.width,canvas.height)
context.globalAlpha = (context.globalAlpha-0.3+1)%1;
radious=50; var pixel = map.lnglatTocontainer(new AMap.LngLat(116.344496,39.939976));
var startPoint=0;
for(var i=0;i<3;i++){
context.fillStyle = 'rgb(0,100,255)';
context.strokeStyle = 'rgb(0,100,255)';
context.beginPath();
//定义起点
context.moveTo(pixel.getX(),pixel.getY());
context.arc(pixel.getX(),pixel.getY(),50,startPoint,startPoint+Math.PI/3,false);
context.fill();
startPoint+=Math.PI*2/3;
}
} var CanvasLayer = new AMap.CanvasLayer({
canvas: canvas,
bounds: map.getBounds( ),
zooms: [3, 18],
}); CanvasLayer.setMap(map);
draw(); </script>
</body>
</html>

最新文章

  1. atitit。企业的价值观 员工第一 vs 客户第一.docx
  2. POJMatrix(二维树状数组)
  3. 【HDU】3506 Monkey Party
  4. C#编程之委托与事件四(一)【转】
  5. inline-block
  6. c++11 中的 move 与 forward
  7. linux中文显示乱码的解决办法
  8. [转]把项目从VS2005升级到VS2013
  9. POJ 2175 Evacuation Plan (费用流,负环,消圈法,SPFA)
  10. java压缩/解压缩zip格式文件
  11. Spring @Transactional 使用
  12. 作为函数的mixin
  13. android代码混淆笔记
  14. 【转】 CSS十问——好奇心+刨根问底=CSSer
  15. resultset 查询时返回多个相同值
  16. linux配制DNS服务器基本能功能
  17. Mybatis 缓存分析
  18. JSONObject使用方法详解
  19. oi程序提交注意:bool
  20. cf1061D 贪心+multiset 好题!

热门文章

  1. C++语言笔记系列之十八——虚函数(1)
  2. 11.使用boostregex遭遇无法打开libboost_regex-vc120-mt-sgd-1_62.lib的问题
  3. yum 命令讲解
  4. Re:从0开始的微服务架构:(一)重识微服务架构--转
  5. POJ 1852 Ants O(n)
  6. 3DES(或称为Triple DES)是三重数据加密算法(TDEA,Triple Data Encryption Algorithm)
  7. CDR X6设计师的福利,3折特惠!
  8. 洛谷P3254 圆桌问题 网络流_二分图
  9. requests 常见方法总结
  10. luogu P4018 Roy&amp;October之取石子(博弈论)