网页端高德地图判断两地之间的骑行距离

引入文件:

<script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.10&key=自己申请的key&plugin=AMap.Riding"></script>

<body>
<div id="container" style="display: :none"></div>
<div id="panel" style="display: :none"></div>

<script>

function getdistance(){
     var map = new AMap.Map("container", {
        resizeEnable: true,
        center: [xxxx, 27.9224187553],//地图中心点
        // zoom: 16 //地图显示的缩放级别
    });

    var s_lng = $("#store_lng").val();//起点纬度
    var s_lat = $("#store_lat").val();起点经度
    var g_lng = $("#lng").val();
    var g_lat =$("#lat").val();
      //骑行导航
        var riding = new AMap.Riding({
            map: map,
            // panel: "panel"
        });
        //根据起终点坐标规划骑行路线
        riding.search([s_lng,s_lat],[g_lng,g_lat],function(status, result) {
            console.log(status);
            var dis=0;
             $('#twodistance').val(dis); 
            if( status == 'complete'){
                var distance = result.routes[0].distance;//骑行距离
                var time = result.routes[0].time;//骑行时间 
                console.log(distance);
                $('#twodistance').val(distance); 
            }

        });
}

</script>

要编写一个JavaScript脚本来计算两地之间骑行路程,我们可以利用高德地图API的`WalkingRoute`服务,但需要注意的是,这个示例不会显示地图,仅用于计算路径。以下是使用高德地图JavaScript API的一个简化版本的代码: ```javascript <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8"> <title>骑行路程计算器</title> <!-- 引入高德地图JS库 --> <script src="https://webapi.amap.com/maps?v=1.4.15&key=YOUR_AMAP_API_KEY"></script> </head> <body> <input type="text" id="destinationInput" placeholder="请输入目的地地址"> <button onclick="calculateRidingDistance()">计算</button> <div id="distanceInfo"></div> <script> function calculateRidingDistance() { const apiKey = 'YOUR_AMAP_API_KEY'; // 替换为实际的API key const startLocation = "固定起点地址"; // 例如 "北京市海淀区中关村大街" const destinationInput = document.getElementById('destinationInput').value; if (!destinationInput) { alert('请输入目的地'); return; } const map = new AMap.Map('container', { zoom: 13, center: [startLocation] }); // 骑行路线查询 const ridingRoute = new AMap.Routing.WalkingRoute({ origin: startLocation, destination: destinationInput, mode: '骑行', callback: function(result) { if (result.errorCode === 0) { // 成功获取到路线信息 const distance = result.routes[0].distance / 1000; // 单位由公里转换为千米 document.getElementById('distanceInfo').innerText = `从${startLocation}骑行到${destinationInput}的距离大约是 ${distance.toFixed(2)}公里`; } else { alert('获取路径失败,错误码:' + result.errorCode); } }, onSearchComplete: function() { // 如果搜索完成但未找到结果,则提示用户 if (this.searchStatus === 0) { alert('未找到有效路径,请检查输入或尝试其他路线'); } } }); ridingRoute.calculate(); } </script> </body> </html> ``` 在这个脚本中,你需要替换`YOUR_AMAP_API_KEY`为你的高德地图API密钥,并提供一个固定起点地址。用户可以在输入框中输入目的地地址,点击“计算”按钮会发起请求并显示骑行距离
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值