verifies for one or more points whether they fall in a given polygon

point.in.polygon(point.x, point.y, pol.x, pol.y, mode.checked=FALSE)

Arguments

point.x

numerical array of x-coordinates of points

point.y

numerical array of y-coordinates of points

pol.x

numerical array of x-coordinates of polygon

pol.y

numerical array of y-coordinates of polygon

mode.checked

default FALSE, used internally to save time when all the other argument are known to be of storage mode double

Value

integer array; values are: 0: point is strictly exterior to pol; 1: point is strictly interior to pol; 2: point lies on the relative interior of an edge of pol; 3: point is a vertex of pol.

References

Uses the C function InPoly(). InPoly is Copyright (c) 1998 by Joseph O'Rourke. It may be freely redistributed in its entirety provided that this copyright notice is not removed.

Examples

# open polygon:
point.in.polygon(1:10,1:10,c(3,5,5,3),c(3,3,5,5))
#>  [1] 0 0 3 1 3 0 0 0 0 0
# closed polygon:
point.in.polygon(1:10,rep(4,10),c(3,5,5,3,3),c(3,3,5,5,3))
#>  [1] 0 0 2 1 2 0 0 0 0 0