Learn R Programming

spatstat.core (version 2.0-0)

runifdisc: Generate N Uniform Random Points in a Disc

Description

Generate a random point pattern containing \(n\) independent uniform random points in a circular disc.

Usage

runifdisc(n, radius=1, centre=c(0,0), ..., nsim=1, drop=TRUE)

Arguments

n

Number of points.

radius

Radius of the circle.

centre

Coordinates of the centre of the circle.

…

Arguments passed to disc controlling the accuracy of approximation to the circle.

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.

Value

A point pattern (an object of class "ppp") if nsim=1, or a list of point patterns if nsim > 1.

Details

This function generates n independent random points, uniformly distributed in a circular disc.

It is faster (for a circular window) than the general code used in runifpoint.

To generate random points in an ellipse, first generate points in a circle using runifdisc, then transform to an ellipse using affine, as shown in the examples.

To generate random points in other windows, use runifpoint. To generate non-uniform random points, use rpoint.

See Also

disc, runifpoint, rpoint

Examples

Run this code
# NOT RUN {
 # 100 random points in the unit disc
 plot(runifdisc(100))
 # 42 random points in the ellipse with major axis 3 and minor axis 1
 X <- runifdisc(42)
 Y <- affine(X, mat=diag(c(3,1)))
 plot(Y)
# }

Run the code above in your browser using DataLab