首页 > 解决方案 > 使用前一个方位的 destPoint 查找方位

问题描述

我正在尝试构建一些代码来找到与初始方位的连续位置和距离的最终方位。我正在使用 destPoint,但是很难将其集成到某种递归函数中。(如果那是我需要的)

我已经尝试过递归函数,但似乎没有什么是接近的。

这基本上是我试图手动实现的目标,但我有更多数据,并且很想弄清楚如何做到这一点!

init<-c(149.6566667, -36.01983333)
bearing<-c(270, 315, 10, 20)
distance<-c(5,5,2,2)

a<-destPoint(init,bearing[1],distance[1])
a
b<-destPoint(a, bearing[2],distance[2])
b
c<-destPoint(b, bearing[3], distance[3])
c
d<-destPoint(c, bearing[4], distance[4])
d

标签: rfunctionrecursion

解决方案


accumulate2purrr可以使用

library(geosphere)
library(purrr)
accumulate2(bearing, distance, destPoint, .init = init)[-1]
#[[1]]
#          lon       lat
#[1,] 149.6566 -36.01983

#[[2]]
#          lon      lat
#[1,] 149.6566 -36.0198

#[[3]]
#          lon       lat
#[1,] 149.6566 -36.01978

#[[4]]
#          lon       lat
#[1,] 149.6566 -36.01977

推荐阅读