qmesh3d(vertices, indices, homogeneous = TRUE, material = NULL)
cube3d(trans = identityMatrix(), ...) # cube object
oh3d(trans = identityMatrix(), ...) # an 'o' object
dot3d(x, ...) # draw dots at the vertices of an object
## S3 method for class 'qmesh3d':
dot3d(x, override = TRUE, ...)
wire3d(x, ...) # draw a wireframe object
## S3 method for class 'qmesh3d':
wire3d(x, override = TRUE, ...)
shade3d(x, ...) # draw a shaded object
## S3 method for class 'qmesh3d':
shade3d(x, override = TRUE, ...)
cube3d
and oh3d
objects optionally take a matrix transformation as
an argument. This transformation is applied to all vertices of the default shape.
The default is an identity transformation. Use par3d("userMatrix")
to render the
object vertically in the current user view.r3d
, par3d
# generate a quad mesh object
vertices <- c(
-1.0, -1.0, 0, 1.0,
1.0, -1.0, 0, 1.0,
1.0, 1.0, 0, 1.0,
-1.0, 1.0, 0, 1.0
)
indices <- c( 1, 2, 3, 4 )
clear3d()
wire3d( qmesh3d(vertices,indices) )
# render 4 meshes vertically in the current view
clear3d()
bg3d("gray")
l0 <- oh3d(tran = par3d("userMatrix"), color = "green" )
shade3d( translate3d( l0, -6, 0, 0 ))
l1 <- subdivision3d( l0 )
shade3d( translate3d( l1 , -2, 0, 0 ), color="red", override = FALSE )
l2 <- subdivision3d( l1 )
shade3d( translate3d( l2 , 2, 0, 0 ), color="red", override = TRUE )
l3 <- subdivision3d( l2 )
shade3d( translate3d( l3 , 6, 0, 0 ), color="red" )
Run the code above in your browser using DataLab