Generate N Uniform Random Points
Generate a random point pattern containing $n$ independent uniform random points.
runifpoint(n, win=owin(c(0,1),c(0,1)), giveup=1000, warn=TRUE)
- Number of points.
- Window in which to simulate the pattern.
An object of class
"owin"or something acceptable to
- Number of attempts in the rejection method after which the algorithm should stop trying to generate new points.
- Logical. Whether to issue a warning if
nis very large. See Details.
This function generates
n independent random points,
uniformly distributed in the window
(For nonuniform distributions, see
The algorithm depends on the type of window, as follows:
winis a rectangle then$n$independent random points, uniformly distributed in the rectangle, are generated by assigning uniform random values to their cartesian coordinates.
winis a binary image mask, then a random sequence of pixels is selected (using
sample) with equal probabilities. Then for each pixel in the sequence we generate a uniformly distributed random point in that pixel.
winis a polygonal window, the algorithm uses the rejection method. It finds a rectangle enclosing the window, generates points in this rectangle, and tests whether they fall in the desired window. It gives up when
giveup * ntests have been performed without yielding
warn=TRUE, then a warning will be issued if
n is very large.
The threshold is
This warning has no consequences,
but it helps to trap a number of common errors.
- The simulated point pattern (an object of class
# 100 random points in the unit square pp <- runifpoint(100) # irregular window data(letterR) # polygonal pp <- runifpoint(100, letterR) # binary image mask pp <- runifpoint(100, as.mask(letterR))