coords2coords: Operations on Coordinates

coords2coordsR Documentation

Operations on Coordinates

Description

Functions for shifting, zooming and envolving rectangle of a set of coordinates.

Usage

coords2coords(coords, xlim, ylim, xlim.ori, ylim.ori)

zoom.coords(x, ...)

## Default S3 method:
zoom.coords(x, xzoom, yzoom, xlim.ori, ylim.ori, xoff=0, yoff=0, ...)

## S3 method for class 'geodata'
zoom.coords(x, ...)

rect.coords(coords, xzoom = 1, yzoom=xzoom, add.to.plot=TRUE,
            quiet = FALSE, ...)

Arguments

coords, x

two column matrix or data-frame with coordinates.

xlim

range of the new x-coordinates.

ylim

range of the new y-coordinates.

xlim.ori

optional. Range of the original x-coordinates, by default the range of the original x-coordinates.

ylim.ori

optional. Range of the original y-coordinates, by default the range of the original y-coordinates.

xzoom

scalar, expanding factor in the x-direction.

yzoom

scalar, expanding factor in the y-direction.

xoff

scalar, shift in the x-direction.

yoff

scalar, shift in the y-direction.

add.to.plot

logical, if TRUE the retangle is added to the current plot.

quiet

logical, none is returned.

...

further arguments to be passed to rect.

Value

coords2coords and zoom.coords

return an object of the same type as given in the argument coords with the transformed coordinates.

rect.coords

returns a matrix with the 4 coordinates of the rectangle defined by the coordinates.

Author(s)

Paulo Justiniano Ribeiro Jr. paulojus@leg.ufpr.br,
Peter J. Diggle p.diggle@lancaster.ac.uk.

See Also

subarea, rect

Examples

foo <- matrix(c(4,6,6,4,2,2,4,4), nc=2)
foo1 <- zoom.coords(foo, 2)
foo1
foo2 <- coords2coords(foo, c(6,10), c(6,10))
foo2
plot(1:10, 1:10, type="n")
polygon(foo)
polygon(foo1, lty=2)
polygon(foo2, lwd=2)
arrows(foo[,1], foo[,2],foo1[,1],foo1[,2], lty=2)
arrows(foo[,1], foo[,2],foo2[,1],foo2[,2])
legend("topleft", 
       c("foo", "foo1 (zoom.coords)", "foo2 (coords2coords)"), lty=c(1,2,1), lwd=c(1,1,2))

## "zooming" part of The Gambia map
gb <- gambia.borders/1000
gd <- gambia[,1:2]/1000
plot(gb, ty="l", asp=1, xlab="W-E (kilometres)", ylab="N-S (kilometres)")
points(gd, pch=19, cex=0.5)
r1b <- gb[gb[,1] < 420,]
rc1 <- rect.coords(r1b, lty=2)

r1bn <- zoom.coords(r1b, 1.8, xoff=90, yoff=-90)
rc2 <- rect.coords(r1bn, xz=1.05)
segments(rc1[c(1,3),1],rc1[c(1,3),2],rc2[c(1,3),1],rc2[c(1,3),2], lty=3)

lines(r1bn)
r1d <- gd[gd[,1] < 420,]
r1dn <- zoom.coords(r1d, 1.7, xlim.o=range(r1b[,1],na.rm=TRUE), ylim.o=range(r1b[,2], na.rm=TRUE), 
                    xoff=90, yoff=-90)
points(r1dn, pch=19, cex=0.5)
text(450,1340, "Western Region", cex=1.5)

geoR documentation built on May 29, 2024, 1:36 a.m.

Related to coords2coords in geoR...