R: Rotate or Shift Infinite Lines

rotate.infline {spatstat.geom} | R Documentation

## Rotate or Shift Infinite Lines

### Description

Given the coordinates of one or more infinite straight lines in the plane, apply a rotation or shift.

### Usage

    ## S3 method for class 'infline'
    rotate(X, angle = pi/2, ...)

    ## S3 method for class 'infline'
    shift(X, vec = c(0,0), ...)

    ## S3 method for class 'infline'
    reflect(X)

    ## S3 method for class 'infline'
    flipxy(X)

### Arguments

`X` | Object of class `"infline"` representing one or more infinite straight lines in the plane.
`angle` | Angle of rotation, in radians.
`vec` | Translation (shift) vector: a numeric vector of length 2, or a `list(x,y)`, or a point pattern containing one point.
`...` | Ignored.

### Details

These functions are methods for the generic `shift`, `rotate`, `reflect` and `flipxy` for the class `"infline"`.

An object of class `"infline"` represents one or more infinite lines in the plane.

### Value

Another `"infline"` object representing the result of the transformation.

### Author(s)

Adrian Baddeley Adrian.Baddeley@curtin.edu.au.

### See Also

`infline`

### Examples

      L <- infline(v=0.5)

      plot(square(c(-1,1)), main="rotate lines", type="n")
      points(0, 0, pch=3)
      plot(L, col="green")
      plot(rotate(L, pi/12), col="red")
      plot(rotate(L, pi/6), col="red")
      plot(rotate(L, pi/4), col="red")

      L <- infline(p=c(0.4, 0.9), theta=pi* c(0.2, 0.6))

      plot(square(c(-1,1)), main="shift lines", type="n")
      L <- infline(p=c(0.7, 0.8), theta=pi* c(0.2, 0.6))
      plot(L, col="green")
      plot(shift(L, c(-0.5, -0.4)), col="red")

      plot(square(c(-1,1)), main="reflect lines", type="n")
      points(0, 0, pch=3)
      L <- infline(p=c(0.7, 0.8), theta=pi* c(0.2, 0.6))
      plot(L, col="green")
      plot(reflect(L), col="red")

[Package spatstat.geom version 2.3-2 Index]