Attempts to merge "mesh3d" objects. Objects need to be similar enough; see Details.

# S3 method for class 'mesh3d'
merge(x, y, ..., attributesMustMatch = FALSE)


x, y

"mesh3d" objects to merge.


Optional additional objects.


See Details.


To allow objects to be merged, they need to be similar enough in terms of having the same list of material properties, normals, texture coordinates, etc.

If attributesMustMatch is TRUE, it is an error to have attributes in one mesh but not in another, and those attributes that only specify a single value must have equal values in all meshes.

If attributesMustMatch is FALSE, any non-matching attributes will be dropped from the final result.


A single "mesh3d" object merging the contents of the arguments.


Duncan Murdoch


# Notice that the alpha setting for the cube is dropped, because
# the other shapes don't specify alpha.
shade3d(merge(cube3d(col="red", alpha = 0.5),
              translate3d(tetrahedron3d(col="green"), 2, 0, 0),
              translate3d(octahedron3d(col="blue"), 4, 0, 0)))