OpenLayers学习笔记(十二)— 飞机速度矢量线预测(二)

这篇博客介绍了如何使用OpenLayers结合物体的当前速度和方向,根据计算公式预测飞机在一定时间后的位置,从而绘制速度矢量线。作者提供了一个模拟demo的实现,并详细说明了调用函数进行数据更新的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前有一篇博客简单写了一个模拟demo,根据物体当前的速度和方向预测多少时间后所在的位置,具体计算是参考《(译)计算距离、方位以及更多经纬度之间的点》,现在重新用计算公式实现,代码如下: 

let from, to;

let createVelLine = obj => {
    const DEG2RAD = Math.PI / 180;
    const RAD2DEG = 180 / Math.PI;
    const radius = 6371.0088; //km
    const KTS2KPH = 1.85200;
    let pred_secs = 30; //预测未来30s的轨迹线

    //角度转弧度
    let latFrom = obj.latitude * DEG2RAD;
    let lonFrom = obj.longitude * DEG2RAD;
    let bearing = obj.rotation;

    //30s后预测点的距离
    if (map.getView().getZoom() < 8) pred_secs *= 4;
    let distance = obj.speed * KTS2KPH * (pred_secs / 3600); //公里 H

    //计算预测点坐标
    let latTo = Math.asin(
        Math.sin(latFrom) * Math.cos(distance / radius) +
        Math
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值