as.mesh3d.ashape3d
converts an
alphashape3d::ashape3d
object into a nat/rgl compatible
mesh3d
surface
Note that this provides a link to the Rvcg package
as.mesh3d.boundingbox
converts a nat
boundingbox
object into an rgl compatible mesh3d
object.
# S3 method for ashape3d as.mesh3d(x, tri_to_keep = 2L, ...) # S3 method for hxsurf as.mesh3d(x, Regions = NULL, material = NULL, drop = TRUE, ...) # S3 method for boundingbox as.mesh3d(x, ...)
x  Object to convert to mesh3d 

tri_to_keep  Which alphashape triangles to keep (expert use only  see

...  Additional arguments for methods 
Regions  Character vector or regions to select from 
material  rgl materials such as 
drop  Whether to drop unused vertices (default TRUE) 
a mesh3d
object which can be plotted and
manipulated using rgl
and nat
packages.
An alpha shape is a generalisation of a convex hull enclosing a set of points. Unlike a convex hull, the resultant surface can be partly concave allowing the surface to more closely follow the set of points.
In this implementation, the parameter alpha is a scale factor with units of length that defines a spatial domain. When alpha is larger the alpha shape approaches the convex hull; when alpha is smaller the alpha shape has a greater number of faces / vertices i.e. it follows the points more closely.
as.mesh3d
, tmesh3d
,
as.hxsurf
, read.hxsurf
Other hxsurf: as.hxsurf
,
materials
, plot3d.hxsurf
,
read.hxsurf
, subset.hxsurf
,
write.hxsurf
#>#> Device 1 : alpha = 10# convert to mesh3d kcs20.mesh=as.mesh3d(kcs20.a) # check that all points are inside mesh all(pointsinside(kcs20, kcs20.mesh))#> [1] FALSE#> [1] TRUEnclear3d() wire3d(kcs20.mesh) plot3d(kcs20, col=type, lwd=2) # } bb=boundingbox(kcs20) mbb=as.mesh3d(bb) # \donttest{ plot3d(kcs20) # simple plot plot3d(bb) shade3d(mbb, col='red', alpha=0.3) # }