Computes the distances between pairs of points taken from two different point patterns.

```
# S3 method for ppp
crossdist(X, Y, …, periodic=FALSE, method="C", squared=FALSE)
```

X,Y

Point patterns (objects of class `"ppp"`

).

…

Ignored.

periodic

Logical. Specifies whether to apply a periodic edge correction.

method

String specifying which method of calculation to use.
Values are `"C"`

and `"interpreted"`

.

squared

Logical. If `squared=TRUE`

, the squared distances are
returned instead (this computation is faster).

A matrix whose `[i,j]`

entry is the distance
from the `i`

-th point in `X`

to the `j`

-th point in `Y`

.

Given two point patterns, this function computes the Euclidean distance from each point in the first pattern to each point in the second pattern, and returns a matrix containing these distances.

This is a method for the generic function `crossdist`

for point patterns (objects of class `"ppp"`

).

This function expects two
point patterns `X`

and `Y`

, and returns the matrix
whose `[i,j]`

entry is the distance from `X[i]`

to
`Y[j]`

.

Alternatively if `periodic=TRUE`

, then provided the windows
containing `X`

and `Y`

are identical and are rectangular,
then the distances will be computed in the `periodic'
sense (also known as `torus' distance): opposite edges of the
rectangle are regarded as equivalent.
This is meaningless if the window is not a rectangle.

The argument `method`

is not normally used. It is
retained only for checking the validity of the software.
If `method = "interpreted"`

then the distances are
computed using interpreted R code only. If `method="C"`

(the default) then C code is used.
The C code is faster by a factor of 4.

`crossdist`

,
`crossdist.default`

,
`crossdist.psp`

,
`pairdist`

,
`nndist`

,
`Gest`

# NOT RUN { data(cells) d <- crossdist(cells, runifpoint(6)) d <- crossdist(cells, runifpoint(6), periodic=TRUE) # }