infline

0th

Percentile

Infinite Straight Lines

Define the coordinates of one or more straight lines in the plane

Keywords
spatial, datagen
Usage
infline(a = NULL, b = NULL, h = NULL, v = NULL, p = NULL, theta = NULL)

# S3 method for infline print(x, …)

# S3 method for infline plot(x, …)

Arguments
a,b

Numeric vectors of equal length giving the intercepts \(a\) and slopes \(b\) of the lines. Incompatible with h,v,p,theta

h

Numeric vector giving the positions of horizontal lines when they cross the \(y\) axis. Incompatible with a,b,v,p,theta

v

Numeric vector giving the positions of vertical lines when they cross the \(x\) axis. Incompatible with a,b,h,p,theta

p,theta

Numeric vectors of equal length giving the polar coordinates of the line. Incompatible with a,b,h,v

x

An object of class "infline"

Extra arguments passed to print for printing or abline for plotting

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 slope \(b\) in the equation \(y = a + b x\) can be used unless the line is vertical.

  • for vertical lines we can use the position \(v\) where the line crosses the \(y\) axis

  • for horizontal lines we can use the position \(h\) where the line crosses the \(x\) axis

  • the polar coordinates \(p\) and \(\theta\) can be used for any line. The line equation is $$ y \cos\theta + x \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.

See Also

rotate.infline, clip.infline, chop.tess, whichhalfplane

Aliases
  • infline
  • plot.infline
  • print.infline
Examples
# NOT RUN {
  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)))
# }
Documentation reproduced from package spatstat, version 1.55-1, License: GPL (>= 2)

Community examples

Looks like there are no examples yet.