discretise(X, eps = NULL, dimyx = NULL, xy = NULL)
"ppp"
) to be converted."ppp"
),
identical to X
, except that
its observation window has been converted to one
of type mask
.discretise
checks that
all the points of the pattern are actually
inside the original window. This is guaranteed to
be the case if the pattern was constructed using ppp
or as.ppp
. However anomalies are possible if the
point pattern was created or manipulated inappropriately.
These will cause an error.X
by converting its
observation window X$window
to a binary pixel image (a window
of type "mask"
). It ensures that no points of X
are
deleted by the discretisation. The window is first discretised using as.mask
.
It can happen that points of X
that were inside the original
window may fall outside the new mask.
The discretise
function corrects this by augmenting the mask
(so that the mask includes any pixel that contains a point of the pattern).
The arguments eps
, dimyx
and xy
control the fineness of the pixel array. They are passed to
as.mask
.
If eps
, dimyx
and xy
are all absent or
NULL
, and if the window of X
is of type "mask"
to start with, then discretise(X)
returns X
unchanged.
See as.mask
for further details
about the arguments eps
, dimyx
,
and xy
, and the process of converting
a window to one of type mask
.
as.mask
data(demopat)
X <- demopat
plot(X, main="original pattern")
Y <- discretise(X, dimyx=50)
plot(Y, main="discretise(X)")
stopifnot(X$n == Y$n)
# what happens if we just convert the window to a mask?
W <- X$window
M <- as.mask(W, dimyx=50)
plot(M, main="window of X converted to mask")
plot(X, add=TRUE, pch=16)
plot(X[M], add=TRUE, pch=1, cex=1.5)
XM <- X[M]
cat(paste(X$n - XM$n, "points of X lie outside M
"))
Run the code above in your browser using DataLab