spatstat (version 1.16-1)

runifpoint: 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)


Number of points.
Window in which to simulate the pattern. An object of class "owin" or something acceptable to as.owin.
Number of attempts in the rejection method after which the algorithm should stop trying to generate new points.


  • The simulated point pattern (an object of class "ppp").


This function generates n independent random points, uniformly distributed in the window win. (For nonuniform distributions, see rpoint.)

The algorithm depends on the type of window, as follows:

  • Ifwinis a rectangle then$n$independent random points, uniformly distributed in the rectangle, are generated by assigning uniform random values to their cartesian coordinates.
  • Ifwinis a binary image mask, then a random sequence of pixels is selected (usingsample) with equal probabilities. Then for each pixel in the sequence we generate a uniformly distributed random point in that pixel.
  • Ifwinis 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 whengiveup * ntests have been performed without yieldingnsuccesses.
The algorithm for binary image masks is faster than the rejection method but involves discretisation.

See Also

ppp.object, owin.object, rpoispp, rpoint


Run this code
# 100 random points in the unit square
 pp <- runifpoint(100)
 # irregular window
 # polygonal
 pp <- runifpoint(100, letterR)
 # binary image mask
 pp <- runifpoint(100, as.mask(letterR))

Run the code above in your browser using DataCamp Workspace