`
段海波
  • 浏览: 317513 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

google map api之设置起点终点进行导航并显示路线详细信息

阅读更多

//設置起點
function setstart(){

	var newcenter = myMap.getCenter();

	if(!startpoint){

	startpoint = new google.maps.Marker({

		map:myMap,

		position:newcenter,

		draggable: true

	});}

}


//設置終點
function setend(){

	var newcenter = myMap.getCenter();

	if(!endpoint){

	endpoint = new google.maps.Marker({

		map:myMap,

		position:newcenter,

		draggable: true

	});}

}

//路線導航
function start2end(model){
	
	directionsDisplay = new google.maps.DirectionsRenderer();

	directionsDisplay.setMap(myMap);
	var startlatlng=startpoint.getPosition();
	var endlatlng=endpoint.getPosition();
	$("#jczbresult").show("slow");
	$("#jczbresultmin").hide();
	var geocoder = new google.maps.Geocoder();
	geocoder.geocode({'latLng': startlatlng}, function(results, status) {
	      if (status == google.maps.GeocoderStatus.OK) {
	        if (results[1]) {
	        	$("#startdrive").html('起點:'+results[1].formatted_address);
	        }}}); 
	geocoder.geocode({'latLng': endlatlng}, function(results, status) {
	      if (status == google.maps.GeocoderStatus.OK) {
	        if (results[1]) {
	        	
	        	$("#enddrive").html('終點:'+results[1].formatted_address);
	        }}}); 
	
	if(model=='WALKING'){
		$("#jczbtitle").innerHTML="步行查詢結果";
		directionsService.route({

			origin: startlatlng,

			destination: endlatlng,

			travelMode: google.maps.DirectionsTravelMode.WALKING

			}, function(result, status){

				if(status == google.maps.DirectionsStatus.OK){

					 directionsDisplay.setDirections(result);//標記地圖顯示路線
					 showSteps(result);//右側面板顯示詳細路線信息

					}

				});

		}else{
			$("#jczbtitle").innerHTML="駕車查詢結果";
			directionsService.route({

				origin: startlatlng,

				destination: endlatlng,

				travelMode: google.maps.DirectionsTravelMode.DRIVING

				}, function(result, status){

					if(status == google.maps.DirectionsStatus.OK){

						 directionsDisplay.setDirections(result);
						 showSteps(result);//右側面板顯示詳細路線信息

						}

					});

			}

	

}
//顯示起點終點之間的詳細信息
function showSteps(directionResult) {
	$("#driveline").html('');
    var myRoute = directionResult.routes[0].legs[0];
    var v_html = '';
    for (var i = 0; i < myRoute.steps.length; i++) {
    	var geocoder = new google.maps.Geocoder();
    	v_html += '<div class="carSearchtr02" id="driver_step_'+i+'">'+(i+1)+'.'+myRoute.steps[i].instructions+',此段路程為:'+myRoute.steps[i].distance.value+'米</div>';
    	//myRoute.steps[i].instructions;
    }
    if(v_html != '')
  	{
    	 v_html = '<div class="carSearchtr01">总里程:'+myRoute.distance.value+'米</div>'+v_html;
    	 $("#driveline").html(v_html);
  	}
  	else
  	{
			$("#driveline").html('很抱歉,沒有找到符合您要的條件,您可以試試下面的方法:<br>調整一下您輸入的搜索關鍵字');
  	}
   
  }
 
分享到:
评论
4 楼 iamatig 2014-03-30  
请问多目的地怎么弄呢?
3 楼 疯子在地球 2013-04-15  
我想点击地图任何一个地方的 右键点击 会弹出一个白色的菜单栏  然后可以动态设置起点或终点  楼主会吗?  求指教呀![color=red][/color][size=large][/size]
2 楼 anyanlonga 2012-08-09  
anyanlonga 写道
页面显示咋么写啊

没反应啊
1 楼 anyanlonga 2012-08-09  
页面显示咋么写啊

相关推荐

    Google Map API 使用示例

    Google Map API 是一款强大的工具,它允许开发者在自己的网站或应用程序中嵌入地图功能,提供定位、导航、地理编码、路线规划等多种服务。本示例将深入探讨如何使用 Google Map API,帮助你理解和掌握其核心概念及...

    android在google map上画导航路线图

    在Android平台上,集成Google Maps API来为用户提供导航路线图是一项常见的任务。这涉及到地图的显示、定位、路径规划以及在地图上绘制路线等技术。以下将详细介绍如何在Android应用中实现这一功能。 首先,要使用...

    google map api 调用

    首先,谷歌地图的驾车路线查询功能允许用户输入起点和终点,系统会自动计算出最佳路径。但这个功能不仅限于简单的起点到终点的路径规划,用户还可以通过鼠标拖动路线上的小圆圈来添加中间点。当鼠标在蓝线上稍微停留...

    android 高德绘制起点与终点路线

    在Android开发中,使用地图API来绘制起点与终点的路线是一项常见的需求,特别是在导航或位置服务相关的应用中。本文将详细讲解如何利用高德地图SDK实现这一功能,并结合定位服务来跟踪用户当前位置。 首先,我们...

    map api

    在路径规划方面,开发者可以通过 Geocoding API 获取起点和终点的坐标,再利用 Directions API 计算出最优路线。此外,Map API 还支持添加标记、信息窗口、自定义图层等高级功能,以增强地图的互动性和实用性。 综...

    谷歌MAP_V3中文详解以及一个简单例子

    这段代码会计算从“起点”到“终点”的驾车路线,并在地图上显示。 总的来说,谷歌地图API V3是一个强大且灵活的工具,可以帮助开发者构建出各种与地理位置相关的Web应用。通过深入学习和实践,你可以掌握更多高级...

    用Ajax开发GoogleMap行车路线查询应用

    GoogleMap作为全球知名的在线地图服务,不仅提供了详尽的地理信息,包括地图和卫星图像,还开放了API接口,允许开发者通过Ajax技术进行二次开发。这为创建定制化的地图应用,如行车路线查询,提供了无限可能。本文将...

    google map的測試HTML檔案

    它可能包含了用户输入起点和终点,以及选择不同交通方式的功能,然后调用Directions Service来计算并显示不同路径。 5. **map4.html**:此文件可能涉及到地图的高级特性,比如显示用户当前位置。通过获取设备的地理...

    Android结合googlemap应用开发

    本文将详细介绍如何在Android设备上实现这一功能,主要涉及Google Directions API的使用和解析返回的路线数据。 首先,Google Directions API是一个HTTP服务,它允许开发者通过发送请求来获取多个地理位置之间的...

    Google Maps API开发大全

    要使用Google Maps API,首先需要在Google Cloud Console中创建项目并获取API密钥,这是使用API的前提。 二、地图显示与自定义 通过JavaScript API,我们可以轻松地在网页上加载地图。通过设置地图的中心点、缩放...

    google导航和划线开源实现

    路径划线是通过Google Maps Directions API实现的,该API可以根据起点和终点计算出最佳路线。首先发送一个HTTP请求到Directions API,传入起始点和目的地的经纬度坐标,API会返回包含多个步道路段的JSON响应。解析...

    GoogleMap和location

    2. **导航功能**: 通过Location服务获取起点和终点的坐标,利用Google Maps Directions API计算路径,并在地图上绘制路线。 3. **兴趣点搜索**: 利用Google Places API,用户可以搜索附近的餐馆、酒店等地点,结果...

    Google Maps API V3 中文参考文档(JavaScript)

    InfoWindow 是 Google Maps API V3 中的一种组件,用于在地图上显示信息窗口。开发者可以使用 InfoWindowOptions 对象来配置信息窗口的基本属性,如内容、位置、大小等。 Geocoder Geocoder 是 Google Maps API V3...

    google-map-directions:Technophileshub 博客文章的源代码,包含有关如何使用 Google Map API 将 Google Map 方向嵌入 HTML 的详细信息

    在本文中,我们将深入探讨如何使用Google Maps API在HTML页面中实现Google Map的方向功能,以帮助用户轻松获取从一个地点到另一个地点的导航路径。这个技术由"Technophileshub"博客文章提供源代码,其内容集中在利用...

    Google MAP 学习例程

    通过这个“Google MAP 学习例程”,你将逐步学会如何使用Google Map V3 API进行地图应用开发,包括创建和操作地图、添加标记和路径、使用各种地图服务,以及自定义地图交互。实践中不断探索,你将能创造出富有创新和...

    Android Google Map 总结

    使用Directions API,结合Places API获取起点和终点,可以计算并显示最优路径。 实例方面,开发者通常会创建一个示例应用,展示上述各种功能的实现,如添加标记、绘制路径、显示用户位置等。这有助于理解和学习...

    Google-Map.rar_google map

    6. **路径规划**:若要实现路线规划,单片机需发送起点和终点信息到服务器,服务器利用Google Maps Directions API计算路线,然后返回给单片机。单片机根据返回的信息更新显示。 7. **功耗与性能优化**:在嵌入式...

    GoogleMap地图控件应用源码

    开发者可以通过输入起点和终点的坐标或地址,调用API获取路径信息,然后在地图上绘制出路线。此功能对于导航应用或者出行规划非常实用。 在实际开发中,为了更好地利用GoogleMap控件,开发者需要了解以下几个关键...

Global site tag (gtag.js) - Google Analytics