AabbMaker implements the logic to fit an Aabb to a collection of points.
The points are the position of a subset of vertices in a mesh. The Aabb will be measured and expressed in the same frame as the mesh.
This serves as the interface to Bvh, allowing the Bvh to fit volumes to geometry without knowing the details of the bounding volume types.
MeshType | is either TriangleSurfaceMesh<T> or VolumeMesh<T>, where T is double or AutoDiffXd. |
#include <drake/geometry/proximity/aabb.h>
Public Member Functions | |
AabbMaker (const MeshType &mesh_M, const std::set< int > &vertices) | |
Constructs the maker with the reference mesh and the subset of vertices to fit (indicated by corresponding index). More... | |
Aabb | Compute () const |
Computes the bounding volume of the vertices specified in the constructor. More... | |
Does not allow copy, move, or assignment | |
AabbMaker (const AabbMaker &)=delete | |
AabbMaker & | operator= (const AabbMaker &)=delete |
AabbMaker (AabbMaker &&)=delete | |
AabbMaker & | operator= (AabbMaker &&)=delete |
Constructs the maker with the reference mesh and the subset of vertices to fit (indicated by corresponding index).
mesh_M | The mesh frame M. |
vertices | The subset of vertices to fit. |
vertices
is not empty, and each of its entry is in the range [0, mesh_M.num_vertices()). Aabb Compute | ( | ) | const |
Computes the bounding volume of the vertices specified in the constructor.
aabb_M | The axis-aligned bounding box posed in mesh frame M. |