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, …,
nsim=1, drop=TRUE, ex=NULL)
```

n

Number of points.

win

Window in which to simulate the pattern.
An object of class `"owin"`

or something acceptable to `as.owin`

.

giveup

Number of attempts in the rejection method after which the algorithm should stop trying to generate new points.

warn

Logical. Whether to issue a warning if `n`

is very large.
See Details.

…

Ignored.

nsim

Number of simulated realisations to be generated.

drop

Logical. If `nsim=1`

and `drop=TRUE`

(the default), the
result will be a point pattern, rather than a list
containing a point pattern.

ex

Optional. A point pattern to use as the example.
If `ex`

is given and `n`

and `win`

are missing,
then `n`

and `win`

will be calculated from
the point pattern `ex`

.

A point pattern (an object of class `"ppp"`

)
if `nsim=1`

, or a list of point patterns if `nsim > 1`

.

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:

If

`win`

is a rectangle then \(n\) independent random points, uniformly distributed in the rectangle, are generated by assigning uniform random values to their cartesian coordinates.If

`win`

is 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.If

`win`

is 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 * n`

tests have been performed without yielding`n`

successes.

The algorithm for binary image masks is faster than the rejection method but involves discretisation.

If `warn=TRUE`

, then a warning will be issued if `n`

is very large.
The threshold is `spatstat.options("huge.npoints")`

.
This warning has no consequences,
but it helps to trap a number of common errors.

# NOT RUN { # 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)) ## # randomising an existing point pattern runifpoint(npoints(cells), win=Window(cells)) runifpoint(ex=cells) # }