<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
<title>路线规划</title>
<link rel="stylesheet" href="https://cache.amap.com/lbs/static/main.css"/>
<script type="text/javascript" src="js/jquery-1.10.2.js" ></script>
<script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.0&key=5bffad5c5d7992363d1eb9518dcc3e9d"></script>
</head>
<body>
<div id="mapContainer"></div>
<div id="panel"></div>
<script type="text/javascript">
window.onload=function(){
getRoad("Driving","最短距离模式",[103.912339,30.755537],[103.920859,30.757879]);
}; //规划不同的导航路线
function getRoad(type,way,lnglat1,lnglat2){
var map = new AMap.Map("mapContainer", {
resizeEnable: true
});
//路线规划策略
var policy=function(){
switch(type){
case "Driving": switch(way){
case "考虑实时路况" : return AMap.DrivingPolicy.REAL_TRAFFIC;break; //考虑实时路况
case "最经济模式" : return AMap.DrivingPolicy.LEAST_FEE; break; //最经济模式
case "最短距离模式" : return AMap.DrivingPolicy.LEAST_DISTANCE; break; //最短距离模式
default : return AMap.DrivingPolicy.LEAST_TIME;break; //最快捷模式
};
break;
case "Transfer": switch(way){
case "最经济模式" : return AMap.TransferPolicy.LEAST_FEE; break; //最经济模式
case "最少换乘模式" : return AMap.TransferPolicy.LEAST_TRANSFER; break; //最少换乘模式
case "最少步行模式" : return AMap.TransferPolicy.LEAST_WALK; break; //最少步行模式
case "最舒适模式" : return AMap.TransferPolicy.MOST_COMFORT; break; //最舒适模式
case "不乘地铁模式" : return AMap.TransferPolicy.NO_SUBWAY; break; //不乘地铁模式
default : return AMap.TransferPolicy.LEAST_TIME ;break; //最快捷模式
};
break;
default : break;
}
};
AMap.service(["AMap."+type], function() {
var transOptions = {
map: map,
panel:panel,
city: "成都市",
policy: policy()
};
var trans;
switch(type){
case "Driving": trans = new AMap.Driving(transOptions);break;
case "Walking": trans = new AMap.Walking(transOptions);break;
case "Riding": trans = new AMap.Riding(transOptions);break;
default: trans = new AMap.Transfer(transOptions);break;
}
//根据起、终点坐标查询公交换乘路线
trans.search(lnglat1, lnglat2, function(status, result){});
});
}
</script>
</body>
</html>

高德js API根据出行方式和出现策略由起始点经纬度实现路线规划的更多相关文章

  1. 【高德地图API】从零开始学高德JS API(七)——定位方式大揭秘

    原文:[高德地图API]从零开始学高德JS API(七)——定位方式大揭秘 摘要:关于定位,分为GPS定位和网络定位2种.GPS定位,精度较高,可达到10米,但室内不可用,且超级费电.网络定位,分为w ...

  2. 【高德地图API】从零开始学高德JS API(一)地图展现——仙剑地图,麻点图,街景,室内图

    原文:[高德地图API]从零开始学高德JS API(一)地图展现——仙剑地图,麻点图,街景,室内图 摘要:关于地图的显示,我想大家最关心的就是麻点图,自定义底图的解决方案了吧.在过去,marker大于 ...

  3. 【高德地图API】从零开始学高德JS API(八)——地址解析与逆地址解析

    原文:[高德地图API]从零开始学高德JS API(八)——地址解析与逆地址解析 摘要:无论是百度LBS开放平台,还是高德LBS开放平台,其调用量最高的接口,必然是定位,其次就是地址解析了,又称为地理 ...

  4. 【高德地图API】从零开始学高德JS API(六)——坐标转换

    原文:[高德地图API]从零开始学高德JS API(六)——坐标转换 摘要:如何从GPS转到谷歌?如何从百度转到高德?这些都是小case.我们还提供,如何将基站cell_id转换为GPS坐标? --- ...

  5. 【高德地图API】从零开始学高德JS API(五)路线规划——驾车|公交|步行

    原文:[高德地图API]从零开始学高德JS API(五)路线规划——驾车|公交|步行 先来看两个问题:路线规划与导航有什么区别?步行导航与驾车导航有什么区别? 回答: 1.路线规划,指的是为用户提供3 ...

  6. 【高德地图API】从零开始学高德JS API(四)搜索服务——POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索

    原文:[高德地图API]从零开始学高德JS API(四)搜索服务——POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索 摘要:地图服务,大家能想到哪些?POI搜素,输入提示,地址解析,公 ...

  7. 【高德地图API】从零开始学高德JS API(三)覆盖物——标注|折线|多边形|信息窗口|聚合marker|麻点图|图片覆盖物

    原文:[高德地图API]从零开始学高德JS API(三)覆盖物——标注|折线|多边形|信息窗口|聚合marker|麻点图|图片覆盖物 摘要:覆盖物,是一张地图的灵魂.有覆盖物的地图,才是完整的地图.在 ...

  8. 【高德地图API】从零开始学高德JS API(二)地图控件与插件——测距、圆形编辑器、鼠标工具、地图类型切换、鹰眼鱼骨

    原文:[高德地图API]从零开始学高德JS API(二)地图控件与插件——测距.圆形编辑器.鼠标工具.地图类型切换.鹰眼鱼骨 摘要:无论是控件还是插件,都是在一级API接口的基础上,进行二次开发,封装 ...

  9. 【高德地图API】从零開始学高德JS API(五)路线规划——驾车|公交|步行

    先来看两个问题:路线规划与导航有什么差别?步行导航与驾车导航有什么差别? 回答: 1.路线规划,指的是为用户提供3条路线推荐.[高德]在提供路线规划的时候,会提供用户自己定义路线规划功能,这是别家没有 ...

随机推荐

  1. MyCat入门指南

    入门篇 1.       安装 1.1从https://github.com/MyCATApache/Mycat-download下载压缩包 1.2解压缩后复制到相应目录下面,比如/usr/local ...

  2. gridview 后台增加列

    BoundField field1 = null; field1 = new BoundField();  //实例化 field1.HeaderText = "序号";field ...

  3. AES前后端加密

    1.前端代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...

  4. Python中的数据结构 --- 列表(list)

      列表(list)是Python中最基本的.最常用的数据结构(相当于C语言中的数组,与C语言不同的是:列表可以存储任意数据类型的数据). 列表中的每一个元素分配一个索引号,且索引的下标是从0开始. ...

  5. Selenium实现右键保存图片(Java)

    1.代码 public class SaveImage extends TestCase { private WebDriver driver; private Actions action; pri ...

  6. 创建Azure scheduler完成日常任务

    Azure Scheduler 1. 登录portal,创建azure scheduler2. 选择任务类型.azure scheduler支持两种类型的任务.http :定时给一个url发请求sto ...

  7. TCP的粘包

    产生原因: * tcp传输以字节流的方式发送消息,消息之间没有边界 * 发送比接受的速度快,因此不能保证每次都能及时被接收 影响 : 对每次发送的内容是一个独立的意思需要单独识别 如何处理: 1. 每 ...

  8. C:源文件编译过程

    可以大致概括为3个阶段: 源文件 → 汇编代码(文本) 汇编代码 → 机器语言(二进制) 各个目标文件的处理 详细过程: 预编译处理 Pre-processing(*.c/ *.cpp → *.i) ...

  9. <context:annotation-config/>,<context:component-scan/>,<mvc:annotation-driven/>区分

    链接:http://blog.csdn.net/baple/article/details/16864175 链接:http://blog.csdn.net/Baple/article/details ...

  10. Tomcat 运行 idea 编译好的 .class JavaWeb 项目

    对于新手来说,对于项目部署,有时候就是以为拷贝在idea控制台里面跑的项目放到tomcat里面的webapps里面跑就可以了,这仅仅限于静态项目..... 他不像PHP , 修改源码直接可以跑, 而J ...