OpenMD 3.1
Molecular Dynamics in the Open
|
Compute alpha complex or alpha shape. More...
#include <AlphaHull.hpp>
Public Member Functions | |
AlphaHull (RealType alpha) | |
void | computeHull (std::vector< StuntDouble * > bodydoubles) |
RealType | getArea () |
RealType | getVolume () |
vector< Triangle > | getMesh () |
Protected Attributes | |
int | dim_ |
RealType | alpha_ |
const std::string | options_ |
Compute alpha complex or alpha shape.
Builds the alpha shape (H. Edelsbrunner and P.Mucke, "Three-dimensional Alpha Shapes," ACM Trans. Graph. 13, 1994) from a set of atomic locations using the Qhull library, http://www.qhull.org/
For a given value of \(\alpha\), the \(\alpha\)-shape includes all of the tetrahedra in the Delaunay triangulation which have an empty circumsphere with radius equal or smaller than \(\alpha\). To carry out this calculation, all points are lifted to 4D so that each point is \((x, y, z, x^2+y^2+z^2)\). The convex hull is computed in 4D, and tetrahedral facets with circumsphere radii larger than \(\alpha\) are removed.
alpha | the circumsphere radius to test tetrahedra for elimination |
Definition at line 79 of file AlphaHull.hpp.
AlphaHull::AlphaHull | ( | RealType | alpha | ) |
Definition at line 66 of file AlphaHull.cpp.
|
inlinevirtual |
Definition at line 82 of file AlphaHull.hpp.
|
virtual |
Implements OpenMD::Hull.
Definition at line 69 of file AlphaHull.cpp.
|
inlinevirtual |
Implements OpenMD::Hull.
Definition at line 87 of file AlphaHull.hpp.
|
inlinevirtual |
Implements OpenMD::Hull.
Definition at line 92 of file AlphaHull.hpp.
|
inlinevirtual |
Implements OpenMD::Hull.
Definition at line 90 of file AlphaHull.hpp.
|
protected |
Definition at line 96 of file AlphaHull.hpp.
|
protected |
Definition at line 95 of file AlphaHull.hpp.
|
protected |
Definition at line 97 of file AlphaHull.hpp.