infline {spatstat.geom} | R Documentation |
Infinite Straight Lines
Description
Define the coordinates of one or more straight lines in the plane
Usage
infline(a = NULL, b = NULL, h = NULL, v = NULL, p = NULL, theta = NULL)
## S3 method for class 'infline'
print(x, ...)
## S3 method for class 'infline'
plot(x, ...)
Arguments
a , b |
Numeric vectors of equal length giving the
intercepts |
h |
Numeric vector giving the positions of horizontal lines when
they cross the |
v |
Numeric vector giving the positions of vertical lines when
they cross the |
p , theta |
Numeric vectors of equal length
giving the polar coordinates of the line.
Incompatible with |
x |
An object of class |
... |
Extra arguments passed to |
Details
The class infline
is a convenient way to handle
infinite straight lines in the plane.
The position of a line can be specified in several ways:
-
its intercept
a
and slopeb
in the equationy = a + b x
can be used unless the line is vertical. -
for vertical lines we can use the position
v
where the line crosses they
axis -
for horizontal lines we can use the position
h
where the line crosses thex
axis -
the polar coordinates
p
and\theta
can be used for any line. The line equation isx \cos\theta + y \sin\theta = p
The command infline
will accept line coordinates in any
of these formats. The arguments a,b,h,v
have the same interpretation
as they do in the line-plotting function
abline
.
The command infline
converts between different coordinate
systems (e.g. from a,b
to p,theta
) and returns an
object of class "infline"
that contains a representation of the lines in
each appropriate coordinate system. This object can be printed
and plotted.
Value
The value of infline
is an object of class "infline"
which is basically a data frame with columns a,b,h,v,p,theta
.
Each row of the data frame represents one line.
Entries may be NA
if a coordinate is not applicable to
a particular line.
Author(s)
Adrian Baddeley Adrian.Baddeley@curtin.edu.au and Rolf Turner rolfturner@posteo.net.
See Also
rotate.infline
,
clip.infline
,
chop.tess
,
whichhalfplane
Examples
infline(a=10:13,b=1)
infline(p=1:3, theta=pi/4)
plot(c(-1,1),c(-1,1),type="n",xlab="",ylab="", asp=1)
plot(infline(p=0.4, theta=seq(0,pi,length=20)))