美文网首页
小程序轨迹记录漂移点位处理简单方式

小程序轨迹记录漂移点位处理简单方式

作者: litielongxx | 来源:发表于2022-10-13 16:00 被阅读0次
高德官方的融路api
小程序gps,不漂移才是少见现象,
gps存在较弱或丢失或切换基站等操作,出现这种不奇怪。
主流地图都有纠偏web服务等操作,小程序没见过。
想要好的解决,建议找找有开源算法之类过滤异常点没。
一般app解决方式:
达到一定点比如5-10个后上传后,用地图sdk自带的方法修正下轨迹,大致为补偿、平滑等纠察操作,较好的效果类似于高德轨迹或百度鹰眼算法识别(但实际也会存在上图补路后反而不实际情况)。
简单的建议参考如下:
https://developer.amap.com/demo/javascript-api/example/grasp/grasp-driving
临时处理可以试试角度画直线、简单取舍点位。
计算两轨迹点之间角度
filterPoint() {
      let temp = []
      this.points.forEach((item, i) => {
        if (i == 0) {
          temp.push(item)
          return
        }
        // 坐标1
        let position1 = {
          lng: this.points[i - 1].longitude,
          lat: this.points[i - 1].latitude
        }

        // 坐标2
        let position2 = {
          lng: item.longitude,
          lat: item.latitude
        }
        let valLng = position1.lng - position2.lng;
        let valLat = position1.lat - position2.lat;

        // 返回一个绝对值
        let absoluteLng = Math.abs(valLng);
        let absoluteLat = Math.abs(valLat);

        // 取得三角形的斜边
        let hypotenuse = Math.hypot(absoluteLng, absoluteLat);
        // 计算弧度
        let radina = Math.acos(absoluteLng / hypotenuse);

        // 计算角度
        let angle = Math.floor(radina * 180 / Math.PI);

        // 尖角剔除30°以内的,如果是30°-60°则结合实际判断取舍 
       // if (angle >= 30 && angle <= 60) {
       //     temp.push(item)
       //  }
        console.log(i, "两坐标点计算出的角度为:", angle)
      })

      return temp

    },

ps:
数据清洗去除漂移点
https://blog.csdn.net/dugushangliang/article/details/102821219
计算轨迹点之间角度
https://blog.csdn.net/qq_37379610/article/details/118855685

相关文章

  • 小程序轨迹记录漂移点位处理简单方式

    gps存在较弱或丢失或切换基站等操作,出现这种不奇怪。 主流地图都有纠偏web服务等操作,小程序没见过。 想要好的...

  • jQuery事件操作和插件

    jQuery事件操作 简单方式注册事件 语法:jQuery对象.事件名(事件处理程序) on方法注册事件 注册简单...

  • 每周成长复盘3.6

    记录成长轨迹,持续可见地自我激励;本周的内容主要是“简单的生活方式” 【学习】 1.阅读:《我决定简单的生活》《极...

  • 微信小程序开发平台招商加盟

    微信小程序开发 我们做:简单小程序 门店小程序,附近小程序 功能型,预约型小程序 企业模板小程序 点餐外卖小程序 ...

  • 微信小程序 - 问题记录

    记录下遇到的小问题及解决办法 小程序图片地扯转base64 微信小程序自定义Modal弹出框 小程序请求超时处理 ...

  • 前端面试日更解答 2020-03-17

    今天的知识点 (2020-03-11) 63.[微信小程序]微信小程序实现轨迹回放的示例代码 62.[软技能]面试...

  • 配置日志

    程序员可以通过三种方式配置日志记录: 使用显式创建记录器,处理程序和格式化程序。 创建一个日志配置文件并使用该fi...

  • Hybrid app本地开发如何调用JSBridge

    前天同事问我公司内部的小程序怎么对接的,我回忆了一下,简单记录了一下前端同学需要注意的点。背后还有小程序架构、网络...

  • 微信小程序 分享/转发 功能

    小程序的分享功能官方文档里给出了相应的API 实现小程序转发有二种方式:页面处理函数:onShareAppMess...

  • 跨浏览器的事件处理程序

    事件处理程序有DOM0级事件处理程序、DOM2级事件处理程序,IE事件处理程序,DOM0级事件处理程序具有简单,跨...

网友评论

      本文标题:小程序轨迹记录漂移点位处理简单方式

      本文链接:https://www.haomeiwen.com/subject/nflczrtx.html