`
Tank03
  • 浏览: 80930 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Mapabc地图----生成路线

阅读更多

//下面这一段代码是一定要定义的  
//<---------------------------------开始---------------------------------------->
	/*
	 * 下面是生成线路的几个函数(请勿修改)<~----------------------------------------------------------------------------------->
	 * */
	var areaId;
	var resultStr="";
	var totalcount=0;//当前线路中一共选择的记录数
	var currentLineEqui = new Array(); //当前线路设备
	/***/
	function RouteSearch(){
		this.routeSType="rs";
		this.start_x = "";this.start_y = "";this.start_name = "";this.start_address = "";this.start_tel = "";this.start_pid = "";this.start_citycode = "";this.start_cityname = "";this.start_detailLink="";this.start_type="";
		this.end_x = "";this.end_y = "";this.end_name = "";this.end_address = "";this.end_tel = "";this.end_pid = "";this.end_citycode = "";	this.end_cityname = "";this.end_detailLink="";this.end_type="";
		this.route_segment;
	}
	var routeS = new RouteSearch();
	function createNewCashLine(){
		resultStr="";
		totalcount = 0;
		currentLineEqui = [];
		mapObj.removeOverlayById(areaId);
		document.getElementById("result").innerHTML="";
	}

	function routeSearch_CallBack(data){
		var resultStr="";
		if(data.error_message != null){
			resultStr="查询异常!"+data.error_message;
		}else{
		switch(data.message){
		case 'ok':
			var route_count = data.count;
			if(route_count==0){
				resultStr="<div>&nbsp;&nbsp;&nbsp;&nbsp;未查找到任何结果!</div>";
			}else{
				var route_text = "";var road_length = 0;
				var route_content = new Array();
				routeS.route_segment = new Array();
				for(var i=0;i<route_count;i++){
					routeS.route_segment[i] = data.segmengList[i].coor;//每一条路线的XY
				}
				var allover = new Array();
				var arr = new Array();
				var poi_xy_r = data.coors.split(",");
				var poi_xy_rl = poi_xy_r.length-2
				for(var j=0;j<poi_xy_rl;j=j+2){
					arr.push(new MLngLat(poi_xy_r[j],poi_xy_r[j+1]));
				}
				var lineopt = new MLineOptions();
				lineopt.lineStyle.thickness=6;
				lineopt.lineStyle.color=0x005cb5;
				lineopt.lineStyle.alpha=0.8;
				var line = new MPolyline(arr,lineopt);
				lineopt.canShowTip=false;
				allover.push(line);
				/*起点终点*/
				var lineStyle=new MLineStyle();
				lineStyle.thickness=2;
				lineStyle.alpha=1;
				lineStyle.lineType= LINE_DASHED;
				var fontStyle=new MFontStyle();
				fontStyle.name="Arial";
				fontStyle.size=12;
				fontStyle.color= 0xffffff;
				fontStyle.bold=true;
				var fontStyle1=new MFontStyle();
				fontStyle1.name="Arial";
				fontStyle1.size=13;
				fontStyle1.color= 0x000000;
				fontStyle1.bold=false;
				var fillStyle=new MFillStyle();
				fillStyle.color= 0xFFFFFF; //填充色
				fillStyle.alpha=1;
				var fillStyle1=new MFillStyle();
				fillStyle1.color= 0x005cb5; //填充色
				fillStyle1.alpha=1;
				
				mapObj.addOverlays(allover,true);
			}
		break;
		case 'error':
				resultStr= "<div class=\"default\"><div class=\"default_title\">对不起!网络繁忙!请稍后重新尝试!</div><div class=\"d_link\"><div class=\"d_right\"></div><div class=\"suggest\"><strong>建议:</strong><br />如果您刷新页后仍无法显示结果,请过几分钟后再次尝试或者与信息化小组联系。<br /></div></div></span>错误信息:"+data.message+"</div>";
			break;
			default:
				resultStr= "<div class=\"default\"><div class=\"default_title\">对不起!网络繁忙!请稍后重新尝试!</div><div class=\"d_link\"><div class=\"d_right\"></div><div class=\"suggest\"><strong>建议:</strong><br />如果您刷新页后仍无法显示结果,请过几分钟后再次尝试或者与信息化小组联系。<br /></div></div></span>错误信息:"+data.message+"</div>";
			}
		}
	}

//<---------------------------------结束---------------------------------------->
 //上面是基本线路生成的定义,下面是具体路线生成
//<----------------------------------------开始---------------------------------------->

	function generateLine(){//生成路线
		if(linetemp!=null ){
                //linetemp--->是一个数组
                /***
                  var equipmentArr = [];
                  var equipment1 = {
	                               'id':'01',
	                               'name':'01',
	                               'lon':'113.33034682099', //经度
	                               'lat':'23.136111090227', //纬度
	                               'address':'广州市天河区华康小学',
	                               'status':'0'
                    };
                   var equipment2 = {
	                              'id':'02',
	                              'name':'02',
	                              'lon':'113.33669829193', //经度
                            	      'lat':'23.131138554636', //纬度
	                              'address':'广州市天河区石牌西路东园小区',
	                              'status':'0'
                   };
                  var equipment3 = {
	                              'id':'03',
	                              'name':'03',
	                              'lon':'113.33738493744', //经度
	                              'lat':'23.125060760778', //纬度
	                              'address':'广州市天河区海乐路',
	                              'status':'1'
                   };
                   linetemp.push(equipment1);
                   linetemp.push(equipment2);
                   linetemp.push(equipment3);

               **/
		for(var i=0;i<linetemp.length;i++){
				var linest = new MLineStyle();
				  linest.alpha = 1;
				  linest.color = 0xFF3300 ;
				  linest.thickness = 3;
				  linest.lineType= LINE_DASHED;
				if(i==linetemp.length-1)return;
				mapObj.panTo(new MLngLat(linetemp[i+1].lon,linetemp[i+1].lat));
				var startXY= new MLngLat(linetemp[i].lon,linetemp[i].lat);
				var endXY = new MLngLat(linetemp[i+1].lon,linetemp[i+1].lat);
				var mls = new MRouteSearch();
				var opt =new MRouteSearchOptions();
				opt.per=90;//抽吸函数,表示在地图上画导航路径的关键点的个数。默认为150
				opt.routeType=0;//路径计算规则,0表示速度优先(默认)
				opt.name="";//避让区域名称
				var regionL="";//避让区域坐标
				routeS.start_x=linetemp[i].lon;
				routeS.start_y=linetemp[i].lat;
				routeS.end_x=linetemp[i+1].lon;
				routeS.end_y=linetemp[i+1].lat;
				mls.setCallbackFunction(routeSearch_CallBack);
				mls.routeSearchByTwoPoi(startXY,endXY,opt,linest);	
			}
		}
		
	}


//<----------------------------------------结束---------------------------------------->
 
分享到:
评论

相关推荐

    mapabc文档--方法,函数

    MapABC地图应用程序编程接口是北京图盟科技有限公司提供的一套用于构建地图应用的API,主要包含Ajax API(Ajax地图展现)2.1.2公众版。这个API允许开发者使用JavaScript在HTML页面中创建自定义的Ajax地图应用,同时...

    MapABCAPI-WP7

    在Windows Phone 7平台上,开发地图相关应用是一个重要的任务,MapABC API为此提供了一套强大的工具。这个API允许开发者在应用程序中集成地图功能,包括显示地图、处理地图事件、添加自定义图层(如点、线和框)等。...

    Mapabc地图资料整理

    利用MapABC-API提供的路径规划功能,可以在地图上展示从一个地点到另一个地点的最佳路线。这有助于为用户提供导航指引。 ### 四、总结 通过上述介绍,我们可以看到MapABC-API(Ajax)不仅能够帮助我们轻松地在网页...

    MapABC 地图API介绍

    MapABC地图API是一款强大的在线地图服务工具,专为开发者设计,便于在各种应用程序中集成地图功能。通过MapABC地图API,开发者可以轻松地在自己的网站或应用中嵌入地图,实现定位、导航、地理编码、反地理编码等功能...

    MapABC地图API Flash版-JavaScript版-Silverlight版-Flex版.zip

    MapABC地图API是一款广泛应用于地理信息系统(GIS)开发中的工具,为开发者提供了在网页上集成地图功能的能力。这个压缩包包含四个不同版本的MapABC地图API文档:Flash版、JavaScript版、Silverlight版和Flex版,...

    MapABC地图API JavaScript版

    MapABC地图API JavaScript版

    MapABC地图使用手册

    MapABC地图是一款强大的在线地图服务平台,它为开发者提供了丰富的API接口,使得用户可以在自己的应用程序或网页中嵌入地图,创建个性化的地图应用。本手册主要介绍了MapABC地图API的两个核心部分:MapABC地图API和...

    MapABC地图制作

    1.了解MapABC地图 2.MapABC地图服务平台的产品特点? 3.MapABC地图服务平台总体架构 4.MapABC Web API 简介 5.MapABC Ajax API(Ajax地图展现) 6.如何使用MapABC Ajax API(Ajax地图展现) ? 7.如何使用MapABC ...

    MAPABC电子地图代码

    总的来说,"MAPABC电子地图代码"是一个学习和实践地图开发的好材料,它涵盖了地图API的基本使用和一些进阶功能。通过这三个HTML文件,开发者能够深入理解如何在Web应用中集成和定制电子地图,提升自己的技能。

    mapabc地图数据下载,高德数据(免费更新)

    标题中的“mapabc地图数据下载,高德数据(免费更新)”揭示了本文将要讨论的核心内容,即如何获取和使用mapabc与高德地图的数据,特别是这些数据的免费更新服务。mapabc和高德地图是两个知名的在线地图服务平台,...

    MapABC地图使用手册.doc

    3. **公交查询**:MapABC地图API是国内首个支持公交查询的API,这对于依赖公共交通的用户来说非常实用,可以方便地规划路线。 4. **地址匹配**:API提供地址匹配功能,将文本地址自动转化为地图上的精确位置,简化...

    MapABC-Flex.rar_flex_mapabc flex api_site:www.pudn.com_高德_高德地图

    本文将围绕“MapABC-Flex.rar”压缩包中的内容,详细解析高德地图Flex API的使用,帮助开发者构建高效、灵活的互动式地图应用。 1. **什么是Flex API?** Flex API是高德地图提供的一种基于Adobe Flex技术的开发...

    MapABC Flex API 示例 代码 用户手册 开发包

    - **地图服务**:MapABC Flex API提供包括地图加载、缩放、平移、图层管理、标记添加、地理编码、路线规划等地图相关的服务。 2. **示例代码的作用**: 示例代码是学习和理解API的关键,它展示了如何实际使用...

    MapABC地图使用演示

    MapABC的基础使用 多点添加 地图交互 工具条样式修改 弹出信息泡泡等

    google地图mapabc地图yahoo 在线地图api开发包OnlineMapProject.rar

    通过JavaScript API,开发者可以创建交互式地图,包括标记(markers)、信息窗口(infowindows)、路线规划、地理编码(geocoding)等。此外,Google地图还提供了卫星图、地形图以及街景视图等多种地图样式。开发者...

    MapABC API for Android 开发指南

    驾车路线规划是MapABC地图API的一项重要功能,它允许开发者为用户提供从一个地点到另一个地点的最佳驾车路线。通过使用RouteOverlay,可以在地图上清晰地显示出规划好的路线。 **9.2 公交路线规划及RouteOverlay** ...

    高德系地图纠偏适用于谷歌地图,soso地图,mapabc地图

    可以导入其他数据库中使用,字段前面2个是经纬度范围,中间2个是偏移像素每级缩放除以2,最后2个是偏移经纬度,提供的格式是度,需要度分的自己转,适用于googlemap,mapabc,腾讯soso地图等高德系地图。 --另外有偿...

Global site tag (gtag.js) - Google Analytics