精华内容
下载资源
问答
  • 路线规划

    2019-02-05 14:13:00
    一、课表 ...三、时间规划及住宿 周六中午回目的地,晚上或者下午6点从目的地回天津西/天津。 四、天津景点 转载于:https://www.cnblogs.com/2sheep2simple/p/10352733.html...

    一、课表

    二、铁路线

     天津地图:

     

     

    周五上午出发:

     

     周六晚上或者周日凌晨返程:

     三、时间规划及住宿

    周六中午回目的地,晚上或者下午6点从目的地回天津西/天津。

    四、天津景点

     

     

    转载于:https://www.cnblogs.com/2sheep2simple/p/10352733.html

    展开全文
  • 路线规划师 计划多个站点的可能路线
  • 百度地图路线规划

    2018-12-18 14:40:35
    百度地图路线规划
  • 谷歌路线规划.zip

    2020-08-06 00:38:12
    谷歌路线规划,可用于谷歌地图的路线规划,源码为OC版本。内部包含的sdk若非最新版,可自行下载最新sdk替换即可
  • iOS谷歌地图路线规划

    2018-03-22 14:09:54
    iOS谷歌地图路线规划功能 解压替换自己的谷歌秘钥 即可实现路线规划功能。
  • 基于预测的畅通路线规划
  • 1.引入2.创建并初始化实例对象const map = new AMap.Map("container")3....使用路线规划插件这里先拿驾车路线规划举个例子假设var start = "天安门", end = "人民大会堂"AMap.plugin('AMap.Driving', function () {...

    1.引入

    2.创建并初始化实例对象

    const map = new AMap.Map("container")

    3.创建一个导航元素,用来承载导航路线(这里不要忘了,是个坑,用的啥时候踩过,文档里没有详细说)

    4.使用路线规划插件

    这里先拿驾车路线规划举个例子

    假设var start = "天安门", end = "人民大会堂"

    AMap.plugin('AMap.Driving', function () {

    const driving = new AMap.Driving({

    // 驾车路线规划策略,AMap.DrivingPolicy.LEAST_TIME是最快捷模式

    policy: AMap.DrivingPolicy.LEAST_TIME,

    // map 指定将路线规划方案绘制到对应的AMap.Map对象上

    map: map,

    // panel 指定将结构化的路线详情数据显示的对应的DOM上,传入值需是DOM的ID

    panel: 'panel'

    })

    const points = [

    { keyword: start },

    { keyword: end }

    ]

    // 搜索完成后,将自动绘制路线到地图上

    driving.search(points)

    })

    当然不只有驾车路线规划,还有其他类型:

    步行规划

    AMap.plugin('AMap.Walking', function () {

    const walking = new AMap.Walking({

    map: map,

    panel: 'panel'

    })

    const points = [

    { keyword: start },

    { keyword: end }

    ]

    walking.search(points)

    })

    骑行规划

    AMap.plugin('AMap.Riding', function () {

    const riding = new AMap.Riding({

    map: map,

    panel: 'panel'

    })

    const points = [

    { keyword: start },

    { keyword: end }

    ]

    riding.search(points)

    })

    公交规划

    AMap.plugin('AMap.Transfer', function () {

    const transfer = new AMap.Transfer({

    map: map,

    panel: 'panel'

    })

    const points = [

    { keyword: start },

    { keyword: end }

    ]

    transfer.search(points)

    })

    货车规划(一天只能调用100次,超过收费)

    AMap.plugin('AMap.TruckDriving', function () {

    const truckDriving = new AMap.TruckDriving({

    map: map,

    panel: 'panel',

    // policy: ,

    size: 1, // 必填, 车辆大小

    })

    const points = [

    { keyword: start },

    { keyword: end }

    ]

    truckDriving.search(points)

    })

    以上只是简单的实现,具体的属性和方法还是要看文档的

    附demo:

    Document

    起始点:

    目的地:

    步行规划

    骑行规划

    驾车规划

    公交规划

    货车规划

    const map = new AMap.Map('container')

    function gui(tab) {

    const start = document.getElementById('start').value

    const end = document.getElementById('end').value

    switch (tab) {

    case 1:

    walking(start, end)

    break;

    case 2:

    riding(start, end)

    break;

    case 3:

    driving(start, end)

    break;

    case 4:

    transfer(start, end)

    break;

    case 5:

    truckDriving(start, end)

    break;

    }

    }

    // 步行规划

    function walking(start, end) {

    AMap.plugin('AMap.Walking', function () {

    const walking = new AMap.Walking({

    map: map,

    panel: 'panel'

    })

    const points = [

    { keyword: start },

    { keyword: end }

    ]

    walking.search(points)

    })

    }

    // 骑行规划

    function riding(start, end) {

    AMap.plugin('AMap.Riding', function () {

    const riding = new AMap.Riding({

    map: map,

    panel: 'panel'

    })

    const points = [

    { keyword: start },

    { keyword: end }

    ]

    riding.search(points)

    })

    }

    // 驾车规划

    function driving(start, end) {

    AMap.plugin('AMap.Driving', function () {

    const driving = new AMap.Driving({

    // 驾车路线规划策略,AMap.DrivingPolicy.LEAST_TIME是最快捷模式

    policy: AMap.DrivingPolicy.LEAST_TIME,

    // map 指定将路线规划方案绘制到对应的AMap.Map对象上

    map: map,

    // panel 指定将结构化的路线详情数据显示的对应的DOM上,传入值需是DOM的ID

    panel: 'panel'

    })

    const points = [

    { keyword: start },

    { keyword: end }

    ]

    // 搜索完成后,将自动绘制路线到地图上

    driving.search(points)

    })

    }

    // 公交规划

    function transfer(start, end) {

    AMap.plugin('AMap.Transfer', function () {

    const transfer = new AMap.Transfer({

    map: map,

    panel: 'panel'

    })

    const points = [

    { keyword: start },

    { keyword: end }

    ]

    transfer.search(points)

    })

    }

    // 货车路径规划

    function truckDriving(start, end) {

    AMap.plugin('AMap.TruckDriving', function () {

    const truckDriving = new AMap.TruckDriving({

    map: map,

    panel: 'panel',

    // policy: ,

    size: 1, // 必填, 车辆大小

    })

    const points = [

    { keyword: start },

    { keyword: end }

    ]

    truckDriving.search(points)

    })

    }

    展开全文
  • 继续上一篇 写路线规划 上一篇写道多点路线规划 高德地图仅仅只会按照你给出的点的顺序进行路线规划 并不会智能的给你按照最近或者最快进行规划 举个例子 A B C D 四个点路线规划 A是起点 D是终点 B C 是途径点 ...

    继续上一篇 写路线规划

    上一篇写道多点路线规划 高德地图仅仅只会按照你给出的点的顺序进行路线规划 并不会智能的给你按照最近或者最快进行规划 举个例子 A B C D 四个点路线规划 A是起点 D是终点 B C 是途径点 加入你按照 A - B - C - D 的顺序给高德 那么高德返回给你的就是 A - B - C - D这个顺序 加入这时A - B - C - D 并不是最优的路线 是不是就萌币了

    不要着急 下面我就是给你一个最优路线

    说一下思路 以A - B - C - D 为例
    首先起点A 终点 D 不会变 我们不用管
    现在命名:
    AStartLat 起点纬度 ASP A的起点
    AStartLon 起点经度

    BStartLat B起点纬度 BSP
    BStartLon B起点经度

    CStartLat C起点纬度 CSP
    CStartLon C起点经度

    BEndLat B终点纬度 BEP
    BEndLon B终点经度

    CEndLat B终点纬度 CEP
    CEndLon B终点经度

    简单做个用例图
    A —> B------>C----->D 原顺序

    A----->B 10KM
    A----->C 3KM

    A---->C---->B---->D 排序后顺序

    我们要做的就是 A —> B------>C----->D 计算出每两个点的距离 然后比较大小 得到距离最近的点 并以这个点为起点 再次计算下一轮的最近的点 最后得到一个最短的路线 就是我们的最后的目的

    好 下面上代码

    >  // 排序所有途经点
    >     private List<Point> sortPoint(List<Line> sortList) {
    >         for (int no = 0; no < sortList.size()*2-1; no++) {
    >             if (no!=0){// 不是第一次 要判断添加终点
    >                 for (int i = 1; i < startList.size(); i++) {
    >                     for (int j = 1; j < sortList.size(); j++) {
    >                         if (startList.get(i).getLlPoint()==sortList.get(j).getSrartPoint()&&startList.get(i).getLlPoint()!=sortList.get(j).getEndPoint()){
    >                             Point p = new Point();
    >                             p.setLlPoint(sortList.get(j).getEndPoint());
    >                             p.setDistance(0);
    >                             startList.add(p);
    >                         }
    >                     }
    >                 }
    >             }else {// 第一次 只添加所有起点
    >                 for (int i = 0; i < sortList.size(); i++) {
    >                     Point p = new Point();
    >                     p.setLlPoint(sortList.get(i).getSrartPoint());
    >                     p.setDistance(0);
    >                     startList.add(p);
    >                 }
    >             }
    >             for (int i = 0; i < startList.size()-1; i++) {
    >                 for (int j = (i+1); j < startList.size(); j++) {
    >                     if (i == 0){
    >                         startList.get(j).setDistance(DrivingRouteOverlay.calculateDistance(convertToLatLng(startList.get(i).getLlPoint()),convertToLatLng(startList.get(j).getLlPoint())));
    >                     }
    >                 }
    >             }
    >             Collections.sort(startList, new Comparator<Point>() {
    >                 @Override
    >                 public int compare(Point o1, Point o2) {
    >                     if (o1.getDistance()==o2.getDistance()){
    >                         return o1.getDistance();
    >                     }else {
    >                         return o1.getDistance() - o2.getDistance();
    >                     }
    >                 }
    >             });
    >             for (int i = 0; i < startList.size(); i++) {
    >                 for (int j = 0; j < startList.size(); j++) {
    >                     if (i!=j){
    >                         if (startList.get(i).getLlPoint().getLatitude()==startList.get(j).getLlPoint().getLatitude()&&startList.get(i).getLlPoint().getLongitude()==startList.get(j).getLlPoint().getLongitude()){
    >                             startList.remove(j);
    >                         }
    >                     }
    >                 }
    >             }
    >         }
    > 
    >         return startList;
    >     }
    > 
    > 
    > 
    > 计算两点之间的距离
    >  public static int calculateDistance(LatLng start, LatLng end) {
    >         double x1 = start.longitude;
    >         double y1 = start.latitude;
    >         double x2 = end.longitude;
    >         double y2 = end.latitude;
    >         return calculateDistance(x1, y1, x2, y2);
    >     }
    > // 根据经纬度计算两点的距离
    > 
    >     public static int calculateDistance(double x1, double y1, double x2, double y2) {
    >         final double NF_pi = 0.01745329251994329; // 弧度 PI/180
    >         x1 *= NF_pi;
    >         y1 *= NF_pi;
    >         x2 *= NF_pi;
    >         y2 *= NF_pi;
    >         double sinx1 = Math.sin(x1);
    >         double siny1 = Math.sin(y1);
    >         double cosx1 = Math.cos(x1);
    >         double cosy1 = Math.cos(y1);
    >         double sinx2 = Math.sin(x2);
    >         double siny2 = Math.sin(y2);
    >         double cosx2 = Math.cos(x2);
    >         double cosy2 = Math.cos(y2);
    >         double[] v1 = new double[3];
    >         v1[0] = cosy1 * cosx1 - cosy2 * cosx2;
    >         v1[1] = cosy1 * sinx1 - cosy2 * sinx2;
    >         v1[2] = siny1 - siny2;
    >         double dist = Math.sqrt(v1[0] * v1[0] + v1[1] * v1[1] + v1[2] * v1[2]);
    > 
    >         return (int) (Math.asin(dist / 2) * 12742001.5798544);
    >     }

    算法有带点粗糙 感兴趣的可以使用递归算法去算 这个不但可以计算点的距离 还可以计算多路线规划 设置不同路线颜色等等 看你的需要

    TSP解决最短路线方案和下载链接

    扫码加群交流

    展开全文
  • 基于正则表达式的约束路线规划
  • 物流配送路线规划系统_web物流路线规划设计,仿淘宝物流路线,物流配送路线规划系统,采用网页的形式操作,可采用不同算法实现。
  • 智能的实时和未来出行路线规划,更精准的路线选择和耗时预测 支持驾车、跨城公交、骑行(含电动车)、步行多种智能出行方式 满足用车、物流、外卖、旅游、交通等各行业个性化路线诉求 主要讲解, 步行,自驾,公交、...
  • 目前支持跨城公交路线规划,提供不同城市之间的火车换成方案。注意:地图SDK V4.1.3版本开始,SDK不再提供 com.amap.api.maps.overlay 包下的 overlay,已在官方demo中开源。第1步,初始化Rout...

    公交路径规划可以根据起终点和公交换乘的数据,使用 BusRouteOverlay 画出公交路线图层,包括起终点和换乘点。另外也可以自定义起终点和换乘点的图标。

    目前支持跨城公交路线规划,提供不同城市之间的火车换成方案。

    注意:地图SDK V4.1.3版本开始,SDK不再提供 com.amap.api.maps.overlay 包下的 overlay,已在官方demo中开源。

    第 1 步,初始化 RouteSearch 对象

    routeSearch = new RouteSearch(this);

    第 2 步,设置数据回调监听器

    routeSearch.setRouteSearchListener(this);

    第 3 步,设置搜索参数

    通过 BusRouteQuery(RouteSearch.FromAndTo fromAndTo, int mode, java.lang.String city, int nightflag) 设置搜索条件。方法中的参数说明如下:fromAndTo,路径的起终点;

    mode,计算路径的模式,可选,默认为最快捷;

    city,城市名称/城市区号/电话区号,此项不能为空;当进行跨城查询时,该参数对应起点的城市;

    nightflag,是否计算夜班车,默认为不计算,0:不计算,1:计算,可选。

    如果选择计算夜班车(nightflag=1),返回的夜班车数据将会排列在结果的前边。

    如果存在地铁换乘出行,返回结果中还包括地铁的入站口和出站口信息。

    如果是跨城公交出行,返回结果中包含火车信息。进行跨城公交查询时,还需调用 BusRouteQuery 的 setCityd(java.lang.String city) 方法设置终点城市。

    // fromAndTo包含路径规划的起点和终点,RouteSearch.BusLeaseWalk表示公交查询模式

    // 第三个参数表示公交查询城市区号,第四个参数表示是否计算夜班车,0表示不计算,1表示计算

    BusRouteQuery query = new BusRouteQuery(fromAndTo, RouteSearch.BusLeaseWalk, "010",0);

    //query.setCityd("027");//终点城市区号

    第 4 步,发送请求

    使用类 RouteSearch 的 calculateBusRouteAsyn(BusRouteQuery query) 方法进行公交规划路径计算。

    RouteSearch.calculateBusRouteAsyn(query);//开始规划路径

    第 5 步,接收数据

    在 RouteSearch.OnRouteSearchListener 接口回调方法 void onBusRouteSearched(BusRouteResult busRouteResult,int rCode) 处理公交路径规划结果。

    说明:

    1)可以在回调中解析 result,获取驾车的路径。

    2)result.getPaths()可以获取到 BusPath 列表,公交路径的详细信息可参考 BusPath 类。公交路径规划的一个路段(类 BusStep),必存在一段公交导航信息,最多包含一段步行信息。返回结果构成如下图所示:

    c2adabade8ef48db0d2779d3764751c8.png

    3)返回结果成功或者失败的响应码。1000为成功,其他为失败(详细信息参见网站开发指南-实用工具-错误码对照表)

    public void onBusRouteSearched(BusRouteResult result, int rCode) {

    //解析result获取算路结果,可参考官方demo

    }

    显示效果如下:

    e9e4cbf0cb1fb34b52c9061304372135.png

    注意事项

    1、使用上述功能需要下载地图SDK,导入搜索功能的jar包。

    2、地图SDK V4.1.3版本开始,SDK不再提供 com.amap.api.maps.overlay 包下的 overlay,已在官方demo中开源。

    展开全文
  • 时间依赖图的权重约束路线规划
  • 百度地图路线规划,实现公交路线搜索。
  • 针对传统最佳旅游路线规划系统最佳路线规划性能不佳的问题,设计一种基于数据挖掘的最佳旅游路线规划系统。系统的硬件配置为交互模块,交互模块主要由客户机与服务器构成,其中服务器的设置作用是管理数据,其组成...
  • JS高德地图模拟驾车路线规划绘制代码是一款通过高德地图获取路线的沿途坐标,从而模拟驾车路线规划
  • 基于轨迹搜索为一组位置进行路线规划是一个热门话题。 为了获得先前的驾驶员对路线选择的了解,一些现有的作品会搜索在空间上靠近查询位置的轨迹。 但是,这些轨迹可能仅靠近部分查询位置,或到达查询位置集之外的...
  • 百度地图定位+路线规划android源码 定位当前位置,及规划路线,划线过程
  • 受欢迎的路线规划和旅行成本估算
  • 仿造高德地图实现路线规划和周边搜索,登录注册模块,地点搜索,进行导航,路线规划有驾车、步行、骑行、公交
  • 关于路线规划的引用也相当简单,我们以步行为例://实例化地图var map = new BMap.Map("container");//定位地图中心点及缩放级别map.centerAndZoom(new BMap.Point(116.404, 39.915), 14);//定义步行路线规划实例var...
  • 2020年最新整理的Java学习路线规划图,包含详细的知识体系,从入门到精通,再到架构,总结了众多练手项目推荐。。。。
  • 此demo 是搞的高德地图标注 路线规划等操作
  • 百度地图api绘制路线规划实例;其中图中蓝色小圆圈的点为途径点,在起点与终点之间经历9个途经点,通过设置调取api自动搜索由起点到终点并且经过途径点的最优(步行)路线规划。在demo示例中对规划js做了封装。
  • 百度地图API提取定位和路线规划案例源码,本人大四学生,热爱android,经历过培训进入职场已变成真正的android程序猿。现在做基于地图的毕设,需要路线规划和定位,于是查看研究百度地图API花了一个晚上的时间,从...
  • 百度地图室内路线规划

    千次阅读 2019-04-16 16:41:13
    室内路线规划 1、创建路线规划检索实例 mSearch = RoutePlanSearch.newInstance(); 2、创建路线规划检索监听器 mSearch.setOnGetRoutePlanResultListener(new OnGetRoutePlanResultListener() { @Override ...
  • 现有起点和终点坐标值(经纬度lng、lat),目的是通过百度地图开发者平台的路线规划功能获取起点终点路线规划距离和预估时长,百度地图开发者平台路线规划使用说明网址为:... 工具:Python3 实现过程并不难,但是爬取...
  • JAVA学习路线规划

    2020-03-04 20:50:18
    路线规划好之后的重点在于严格按照计划执行~~~ HOW2J.CN JAVA学习路线 JAVA基础 JAVA中级 异常 I/O 集合框架 泛型 正则表达式 多线程 JDBC 图形界面 网络编程 JAVA高级 反射机制 注解 JAVA应用 Log4j junit ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,312
精华内容 2,924
关键字:

路线规划