ProGAL.geom3d.complex.alphaComplex
Class AlphaComplex
java.lang.Object
ProGAL.geom3d.complex.alphaComplex.AlphaFiltration
ProGAL.geom3d.complex.alphaComplex.AlphaComplex
- All Implemented Interfaces:
- SimplicialComplex
- Direct Known Subclasses:
- ProteinComplex
public class AlphaComplex
- extends AlphaFiltration
- implements SimplicialComplex
An alpha complex for a set of d-dimensional points and a real number alpha is a subset of the Delaunay complex
where all simplices that can be enclosed by an alpha-probe (a hypersphere of radius alpha), without the probe
enclosing any points, are removed.
- Author:
- R. Fonseca
Constructor Summary |
AlphaComplex(java.util.List<Point> pl,
double alpha)
Build the alpha-complex of the specified point-list. |
AlphaComplex(RegularComplex d3d,
double alpha)
Build the alpha-complex of the specified Delaunay complex. |
Methods inherited from class ProGAL.geom3d.complex.alphaComplex.AlphaFiltration |
getAlphaShape, getAttached, getBettiNumbers, getBettiPersistence, getDim, getEdges, getInAlpha, getOnCH, getPairSimplices, getSimplices, getSurfaceTriangles, getTetrahedra, getTetrahedra, getTriangles, getVertexHull, getVertices |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AlphaComplex
public AlphaComplex(java.util.List<Point> pl,
double alpha)
- Build the alpha-complex of the specified point-list. Note that an entire Delaunay complex
is built as part of this constructor.
AlphaComplex
public AlphaComplex(RegularComplex d3d,
double alpha)
- Build the alpha-complex of the specified Delaunay complex.
getAlpha
public double getAlpha()
getEdges
public java.util.List<CEdge> getEdges()
- Specified by:
getEdges
in interface SimplicialComplex
- Overrides:
getEdges
in class AlphaFiltration
getTriangles
public java.util.List<CTriangle> getTriangles()
- Specified by:
getTriangles
in interface SimplicialComplex
- Overrides:
getTriangles
in class AlphaFiltration
getTetrahedra
public java.util.List<CTetrahedron> getTetrahedra()
- Specified by:
getTetrahedra
in interface SimplicialComplex
- Overrides:
getTetrahedra
in class AlphaFiltration
getSimplices
public java.util.List<Simplex> getSimplices()
- Overrides:
getSimplices
in class AlphaFiltration
getAllSimplices
public java.util.List<Simplex> getAllSimplices()
getAllEdges
public java.util.List<CEdge> getAllEdges()
getDepth
public int getDepth(Simplex s)
- Return the depth of simplex from the surface of the alpha complex. Note that a depth
is returned for all simplices in the Delaunay complex. The depth of exposed simplices
not in the alpha complex is -1. The depth of all other k-simplices (including simplices
in voids) is the smallest depth of adjacent k-simplices plus one.
setAlpha
public void setAlpha(double alpha)
getVoids
public void getVoids(J3DScene scene)
getDeepestCavityTetrahedron
public CTetrahedron getDeepestCavityTetrahedron()
getAllDeepestCavityTetrahedra
public java.util.ArrayList<CTetrahedron> getAllDeepestCavityTetrahedra(int depthBound)
getCavity
public void getCavity(CTetrahedron t,
int lowerBound,
J3DScene scene)
getAllCavities
public void getAllCavities(java.util.ArrayList<CTetrahedron> tetras,
int lowerBound,
J3DScene scene)
getAllCavityPaths
public void getAllCavityPaths(java.util.ArrayList<CTetrahedron> tetras,
J3DScene scene)
getCavityPath
public void getCavityPath(CTetrahedron deep,
J3DScene scene)
main
public static void main(java.lang.String[] args)