shape3js.Rd
Add a generic shape to an 3js plot
shape3js(
data3js,
vertices,
faces,
normals = NULL,
col = "black",
highlight,
...
)
The data3js object
An nx3 matrix of 3d vertex coordinates
An nx3 matrix of indices relating to vertices that make up each triangular face
Optional nx3 matrix of normals to each vertex
Shape color
highlight attributes (see highlight3js()
)
Additional attributes to pass to material3js()
Returns an updated data3js object
Other plot components:
arrows3js()
,
axis3js()
,
box3js()
,
grid3js()
,
legend3js()
,
light3js()
,
lines3js()
,
mtext3js()
,
points3js()
,
segments3js()
,
sphere3js()
,
surface3js()
,
text3js()
,
triangle3js()
# Draw a teapot
data(teapot)
p <- plot3js(
xlim = range(teapot$vertices[,1]),
ylim = range(teapot$vertices[,2]),
zlim = range(teapot$vertices[,3]),
label_axes = FALSE,
aspect = c(1, 1, 1)
)
p <- shape3js(
p,
vertices = teapot$vertices,
faces = teapot$edges,
col = "lightblue"
)
r3js(p, rotation = c(-2.8, 0, 3.14), zoom = 1.2)