android - 使用谷歌地图突出显示实时轨迹
问题描述
我正在制作一个控制无人机的应用程序,我需要显示它的飞行轨迹和另一个显示无人机 LED 所在位置的轨迹。
无人机的轨迹很简单。问题出在 LED 的轨道上。由于轨道宽度很重要,我重叠了多个圆圈(每个位置一个 - 每秒 10 个位置),因为它们具有以米为单位的半径属性。
当前方法的问题是无人机可以行驶 6 公里,但在前 600 米,应用程序开始变得非常缓慢。
使用折线的问题在于它们的宽度以像素为单位,而不是以米为单位。
我怎样才能在不消耗大量内存的情况下实现我的目标?
一些考虑因素是:航迹宽度很重要,无人机大部分时间会走直线,但它可以在航点附近转弯。
我将颤振与谷歌地图的谷歌官方包一起使用,但欢迎考虑本机 android 代码的任何帮助。这可能会有所帮助。
解决方案
我没有关于它如何工作的详细信息,但有效:
// https://gis.stackexchange.com/questions/7430/what-ratio-scales-do-google-maps-zoom-levels-correspond-to
final metersPerPx = 156543.03392 *
math.cos(currentLocation.lat * math.pi / 180) /
math.pow(2, currentZoomLevel);
final widthInPx = widthInMeters ~/ metersPerPx;
推荐阅读
- mysql - 使用 SQL 查询使用 meta_key='_regular_price' 中的值更新 meta_key='_price'
- php - 选中从数据库中选择的复选框
- dart - Flutter 从 StatefulWidget 对象更改状态
- javascript - 有没有办法用 Javascript 显示每页的条目?
- wordpress - 禁止 chrome 开发工具在源面板上索引文件夹结构
- haskell - 将“Functor”类泛化为“MultiFunctor”?
- php - 仅将 foreach 循环中的第一个 X 输出写入文件(在关联数组内)?
- ios - 从 UITapGestureRecognizer 访问子视图
- php - PHP HREF URL链接未打开网页
- python - “异步”的pythonic术语是什么?