kinematic: Interpolate using kinematic interpolation

Description Usage Arguments Details Value References Examples

View source: R/kinematic.R

Description

Perform kinematic path interpolation on a movement dataset. Kinematic path interpolation was introduced in the paper Long (2015). Kinematic interpolation is appropriate for fast moving objects, recorded with relatively high resolution tracking data.

Usage

1
kinematic(xytvv, t.slice)

Arguments

xytvv

a 2x5 dataframe containing the coordinates, times, and initial and final velocities (as 2D vectors) of the two points to be interpolated between, often termed the anchor points. Each row of the dataframe should be arranged as x, y, t, vx, vy.

t.slice

a single time (POSIX or numeric), or list of times, to be interpolated for. The times must lie between those of the points in xytv.

Details

Kinematic interpolation requires the user to input the coordinates of the anchor points between which the interpolation is occurring, as well as initial and final velocities associate with the anchor points. In practice, these velocities may be explicitly known, or estimated from the tracking data.

Value

The function returns a dataframe (with nrow = length{t.slice}) corresponding to the interpolated locations.

References

Long, JA (2015) Kinematic interpolation of movement data. International Journal of Geographical Information Science. DOI: 10.1080/13658816.2015.1081909.

Examples

1
2
3
4
5
6
7
8
9
data(contrived)
xyt <- contrived
###times for interpolation
t.slice <- c(1.5,2,2.5,3,3.5,4,4.5,5,5.5)
### add velocities for kinematic analysis
xytvv <- cbind(xyt[2:3,],rbind(c(0,3),c(3,0)))
a <- kinematic(xytvv,t.slice)
plot(xyt[,1],xyt[,2],pch=20)
points(a[,1],a[,2])

jedalong/PathInterpolatR documentation built on May 19, 2019, 12:40 a.m.