shape (version 1.4.4)

getellipse: x-y coordinates of ellipse

Description

calculates x-y values for (part of) an ellipse; the ellipse can be rotated

Usage

getellipse(rx = 1, ry = rx, mid = c(0, 0), dr = 0.01, 
           angle = 0, from = -pi, to = pi)

Arguments

rx

long radius of ellipse.

ry

short radius of ellipse.

mid

midpoint of ellipse.

dr

size of segments, in radians, to specify ellipse (decrease for smoother).

angle

rotation angle, degrees.

from

starting angle for ellipse segment, radians.

to

final angle for ellipse segment, radians. The segment is generated counterclockwise. The default is draw a full ellipse.

Value

a 2-column matrix with x-y values of the ellipse

Details

rx and ry are the horizontal and vertical radiusses of the ellipses.

points from and to are joined counterclockwise. (this has changed since version 1.3.4).

See Also

plotellipse, filledellipse

Examples

Run this code
# NOT RUN {
plot(getellipse(1, from = 0, to = pi/2), type = "l", col = "red",
     lwd = 2, main = "getellipse")
lines(getellipse(0.5, 0.25, mid = c(0.5, 0.5)), type = "l", 
      col = "blue", lwd = 2)
lines(getellipse(0.5, 0.25, mid = c(0.5, 0.5), angle = 45), 
      type = "l", col = "green", lwd = 2)

lines(getellipse(0.2, 0.2, mid = c(0.5, 0.5), from = 0, to = pi/2), 
      type = "l", col = "orange", lwd = 2)
lines(getellipse(0.2, 0.2, mid = c(0.5, 0.5), from = pi/2, to = 0), 
      type = "l", col = "black", lwd = 2)
lines(getellipse(0.1, 0.1, mid = c(0.75, 0.5), from = -pi/2, to = pi/2), 
      type = "l", col = "black", lwd = 2)

emptyplot(main = "getellipse")
col <- femmecol(90)
for (i in seq(0, 180, by = 2)) 
      lines(getellipse(0.5, 0.25, mid = c(0.5, 0.5), angle = i),
            type = "l", col = col[(i/2)+1], lwd = 2)
# }

Run the code above in your browser using DataLab