百度地图路径规划

简介: 代码如下

2345_image_file_copy_302.jpg

      源               码

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>百度地图路径规划</title>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=ek5SWXmBxc7eXrlsIE0nvYqZKYqoHXsE"></script>
    <style>
        #bdmap-contaniner{
            width: 700px;
            height: 500px;
            border: 1px solid black;
        }
    </style>
</head>
<body>
<button class="createMap">加载地图</button>
<br/>
<label for="startPoint">
    起点:<input type="text"  id="startPoint"  value="冠县"/>
</label>
<label for="endPoint">
    终点:<input type="text"  id="endPoint"  value="聊城"/>
</label>
<select >
    <option value="car">驾车</option>
    <option value="bus">公交</option>
    <option value="step">步行</option>
</select>
<br/>
<button  class="route">开启规划路径</button>
<div id="bdmap-contaniner"></div>
<script>
    //页面元素
    var startPoint_input=document.querySelector('#startPoint');
    var endPoint_input=document.querySelector('#endPoint');
    var routeType_select=document.querySelector('select');
    var  bdmap=null;
    document.querySelector('.createMap').onclick= function () {
        bdmap=new BMap.Map('bdmap-contaniner');
        var point = new BMap.Point(115.43, 36.48);
        bdmap.centerAndZoom(point, 15);
        bdmap.addControl(new BMap.NavigationControl());
        var centerMarker=new BMap.Marker(point);
        centerMarker.addEventListener('click', function (eve) {
            var opts = {
                width : 250,     // 信息窗口宽度
                height: 100,     // 信息窗口高度
                title : "地点坐标"  // 信息窗口标题
            };
            var infoWindow_content='当前位置:('+eve.point.lng+','+eve.point.lat+')';
            var infoWindow = new BMap.InfoWindow(infoWindow_content, opts);  // 创建信息窗口对象
            bdmap.openInfoWindow(infoWindow, bdmap.getCenter());      // 打开信息窗口
        });
        bdmap.addOverlay(centerMarker);
    };
    //路径规划
    document.querySelector('.route').onclick= function () {
        var startPoint_value=startPoint_input.value;
        var endPoint_value=endPoint_input.value;
        var routeType_select_value=routeType_select.value;
        switch (routeType_select_value){
            case 'car':{
                //驾车路线规划
                var driving = new BMap.DrivingRoute(bdmap, {
                    renderOptions: {
                        map: bdmap,
                        autoViewport: true
                    }
                });
                //绘制
                driving.search(startPoint_value, endPoint_value);
            }
                break;
            case 'bus':{
                var transit = new BMap.TransitRoute(bdmap, {
                    renderOptions: {
                        map: bdmap,
                        autoViewport: true
                    }
                });
                transit.search(startPoint_value, endPoint_value);
            }break;
            case 'step':{
                var walk = new BMap.WalkingRoute(bdmap, {
                    renderOptions: {map: bdmap}
                });
                walk.search(startPoint_value, endPoint_value);
            }
                break;
        }
    }
</script>
</body>
</html>


目录
相关文章
|
存储 Prometheus 监控
Prometheus vs. ELK Stack:容器监控与日志管理工具的较量
随着容器化技术的广泛应用,容器监控与日志管理成为了关键任务。本文将对两种常用工具进行比较与选择,分别是Prometheus和ELK Stack。Prometheus是一款开源的监控系统,专注于时序数据的收集和告警。而ELK Stack则是一套完整的日志管理解决方案,由Elasticsearch、Logstash和Kibana三个组件组成。通过比较它们的特点、优势和适用场景,读者可以更好地了解如何选择适合自己需求的工具。
|
传感器 人工智能 监控
智能水质监测:水源保护与污染控制
【10月更文挑战第24天】智能水质监测技术结合了先进的信息技术、通信技术和传感技术,实现对水质的实时监测、分析与预警,旨在提高水资源利用效率、保障公共健康、维护生态平衡、追踪污染源并建立预警机制。通过传感器、通信技术、数据处理与智能控制技术的综合应用,该技术为水资源保护提供了科学依据和有效手段,促进了水资源的可持续发展。未来,随着技术的不断创新,智能水质监测将在水资源管理中发挥更大作用。
|
10月前
|
机器学习/深度学习 人工智能 算法
《深度剖析Meta“Habitat 3.0”:AI训练的虚拟环境革新》
Habitat 3.0是AI仿真平台发展中的重要革新者,突破了传统平台的局限。它通过逼真的虚拟场景、丰富的语义信息和多模态交互能力,为AI训练提供了坚实基础。其精准物理仿真、多样化任务场景及人机协作机制,大幅提升AI学习效率与实用性。尽管面临计算成本与泛化能力挑战,未来有望结合前沿技术,在更多领域推动智能化变革,成为AI发展史上的里程碑。
274 1
|
小程序 测试技术 API
鸿蒙原生开发手记:03-元服务开发全流程(开发元服务,只需要看这一篇文章)
本文详细介绍元服务的开发及上架全流程,涵盖元服务的特点、创建项目、服务卡片、签名打包、开发测试及上架审核等环节,帮助开发者轻松掌握从零开始开发并发布元服务的全过程。元服务以其轻量、免安装、易于使用等特点,成为未来服务提供的重要形式。
2446 13
鸿蒙原生开发手记:03-元服务开发全流程(开发元服务,只需要看这一篇文章)
|
SQL 缓存 监控
优化大型数据库查询的最佳实践
在处理大规模数据时,数据库查询性能的优化至关重要。本文探讨了几种优化大型数据库查询的最佳实践,包括索引策略、查询重写、数据分区和缓存机制。通过这些方法,开发人员可以显著提高查询效率,减少系统负担,提升用户体验。本文还结合实际案例,提供了具体的优化技巧和工具建议,帮助读者有效地管理和优化大型数据库系统。
|
监控 数据挖掘 数据安全/隐私保护
ERP系统中的税务管理与优化
【7月更文挑战第25天】 ERP系统中的税务管理与优化
1118 2
|
C++ 开发者
C++一分钟之-概念(concepts):C++20的类型约束
【7月更文挑战第4天】C++20引入了Concepts,提升模板编程的类型约束和可读性。概念定义了模板参数需遵循的规则。常见问题包括过度约束、约束不完整和重载决议复杂性。避免问题的关键在于适度约束、全面覆盖约束条件和理解重载决议。示例展示了如何用Concepts限制模板函数接受的类型。概念将增强模板的安全性和灵活性,但需谨慎使用以防止错误。随着C++的发展,Concepts将成为必备工具。
453 2
|
运维 UED
实时云渲染视频流化Webgl引擎模型技术原理
点量云流技术能将WebGL引擎模型实现云交互流化,解决大模型在低性能设备上运行不畅的问题。通过服务器的视频流方式,使用户在普通设备上也能流畅体验3D应用,包括WebGL、UE/U3D等。离屏渲染功能进一步节省服务器资源,而预启动机制则优化了大模型加载慢的困境,允许提前开启多个进程以应对并发需求,提升用户体验。
585 1
|
安全 JavaScript Java
问卷调查|在线问卷调查系统|基于Springboot的在线问卷调查系统设计与实现(源码+数据库+文档)
问卷调查|在线问卷调查系统|基于Springboot的在线问卷调查系统设计与实现(源码+数据库+文档)
683 0