使用Google地图的测距功能

使用google地图API的测距功能 首先需要引入对应的Google地图的库(drawing,geometry,spherical)

引入方法在

<script src="https://maps.googleapis.com/maps/api/js?language=en&key=你的key&libraries=drawing,places,geometry,spherical">

这里的思路是:先划线然后取点 通过API进行测量距离显示结果

Step1 划线的准备工作

var _styleOptions = {
    strokeColor:"red",          //边线颜色。
    fillColor:"white",          //填充颜色。当参数为空时,圆形将没有填充效果。
	strokeWeight: 2,            //边线的宽度,以像素为单位。
	strokeOpacity: 0.5,         //边线透明度,取值范围0 - 1。
	fillOpacity: 0.5,           //填充的透明度,取值范围0 - 1。
	strokeStyle: 'solid'        //边线的样式,solid或dashed。
    };

//划线完成后的事件
google.maps.event.addListener(_drawingManager, 'polylinecomplete', function(polyline) {
    var pointxy = polyline.getPath();
    var triangleCoords= [];
	for(var i=0; i<pointxy.length;i++){
		var pointstemp =  new google.maps.LatLng(pointxy.getAt(i).lat(),             pointxy.getAt(i).lng());
		triangleCoords.push(pointstemp);
	}
			
    //直接调用API接口来计算几条线段的长度和 单位米
	var distanceValue = google.maps.geometry.spherical.computeLength(triangleCoords);
	distanceValue = (distanceValue/1000).toFixed(2);
	distanceValue += "Km";
	var marker = new google.maps.Marker({
	    map: _map,
		position: triangleCoords[triangleCoords.length-1],
		label: distanceValue
	});
				
   });

Step2 触发Step1的条件(具体功能入口)

 function testDistance(){    
    _drawingManager.setMap(_map);
    _drawingManager.setDrawingMode(google.maps.drawing.OverlayType.POLYLINE);
 }

效果图:

111

这样就基本实现了这个功能,折线也可以计算;

Google地图Polyline动画是一种在Google地图上绘制并展示动态效果的功能。Polyline是一种用于绘制直线、曲线或自定义形状的图形对象。该功能允许用户在地图上绘制一条Polyline,并通过设置Polyline的属性和参数来创建动画效果。 在Google地图上,可以使用PolylineOptions对象来设置Polyline的属性,如颜色、线宽等。通过PolylineOptions对象的add方法,可以将多个坐标点添加到Polyline中,并根据坐标点的顺序绘制Polyline。通过设置Polyline的动画效果,可以使Polyline的绘制过程更加平滑和流畅。 一种常见的Polyline动画效果是通过逐步绘制坐标点来展示Polyline的绘制过程。通过设置PolylineOptions对象的geodesic属性为true,可以创建一个大地测距的Polyline,使其更加贴合地图的曲面。通过Polyline的setPoints方法,可以设置Polyline的坐标点数组。然后,通过Polyline的setGeodesic方法设置动画的启动效果,如从起点到终点的动画。 另一种Polyline动画效果是通过设置Polyline的虚线样式来实现。通过PolylineOptions对象的pattern方法,可以设置Polyline的虚线样式,如[10,20]表示绘制长度为10像素的线段和长度为20像素的空白区域。通过不断改变pattern数组的值,可以创建类似闪烁的动画效果。 总之,Google地图Polyline动画是一种通过设置Polyline的属性和参数,在地图上绘制并展示动态效果的功能。通过不同的设置和参数组合,可以创建出各种各样的Polyline动画效果,使地图更加生动和可视化。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值