Given a two-dimensional polygon, this generates a three-dimensional extrusion
of the shape by triangulating the polygon and creating a cylinder with
that shape as the end faces.

`extrude3d(x, y = NULL, thickness = 1, smooth = FALSE, ...)`

## Arguments

x, y |
A polygon description in one of the forms supported by `triangulate` . |

thickness |
The extrusion will have this thickness. |

smooth |
logical; should normals be added so that the edges of the extrusion appear
smooth? |

... |
Other parameters to pass to `tmesh3d` when constructing the
mesh. |

## Details

The extrusion is always constructed with the polygon in the xy plane at
`z = 0`

and another copy at `z = thickness`

. Use
the transformation functions (e.g. `rotate3d`

) to
obtain other orientations and placements.

## Value

A mesh object containing a triangulation of the polygon
for each face, and quadrilaterals for the sides.

## Author

Duncan Murdoch

## See also

## Examples

```
x <- c(1:10, 10:1)
y <- rev(c(rep(c(0, 2), 5), rep(c(1.5, -0.5), 5)))
plot(x, y, type = "n")
polygon(x, y)
open3d()
shade3d( extrude3d(x, y), col = "red" )
```