Project Geode-Common
class SolidPathFinder
The objective of this class is to find paths inside TetrahedralSolid3D. As an example, this class is able to find a rectilinear path between two vertices. This class may be derived for custom path findings.
Functions
SolidPathFinder
cpp
public void SolidPathFinder(const TetrahedralSolid3D & solid, index_t begin, index_t end)
public void SolidPathFinder(const TetrahedralSolid3D & solid, index_t begin, index_t end)
Find a rectilinear path between two vertices.
begin [in] Index of the cut starting vertex
end [in] Index of the cut ending vertex.
find_path
cpp
public optional find_path()
public optional find_path()
find_first_path
cpp
public optional find_first_path()
public optional find_first_path()
stop_propagation
cpp
protected bool stop_propagation(const SolidPath & path)
protected bool stop_propagation(const SolidPath & path)
adjacent_opposite_vertex
cpp
protected PolyhedronVertex adjacent_opposite_vertex(const PolyhedronFacet & facet)
protected PolyhedronVertex adjacent_opposite_vertex(const PolyhedronFacet & facet)
opposite_facet
cpp
protected PolyhedronFacet opposite_facet(const PolyhedronVertex & vertex)
protected PolyhedronFacet opposite_facet(const PolyhedronVertex & vertex)
opposite_vertex
cpp
protected PolyhedronVertex opposite_vertex(const PolyhedronFacet & facet)
protected PolyhedronVertex opposite_vertex(const PolyhedronFacet & facet)
facet_triangle
cpp
protected Triangle facet_triangle(const PolyhedronFacet & facet)
protected Triangle facet_triangle(const PolyhedronFacet & facet)
find_path_intersection_with_facet
cpp
protected optional find_path_intersection_with_facet(const PolyhedronFacet & facet)
protected optional find_path_intersection_with_facet(const PolyhedronFacet & facet)
find_next_path
cpp
protected optional find_next_path(index_t current)
protected optional find_next_path(index_t current)
find_next_paths
cpp
protected bool find_next_paths(std::vector<SolidPath> & paths)
protected bool find_next_paths(std::vector<SolidPath> & paths)
find_next_facet
cpp
protected optional find_next_facet(const PolyhedronFacet & facet_from)
protected optional find_next_facet(const PolyhedronFacet & facet_from)
next_intersection
cpp
protected optional next_intersection(const PreviousPaths & previous_paths)
protected optional next_intersection(const PreviousPaths & previous_paths)
solid
cpp
protected const TetrahedralSolid3D & solid()
protected const TetrahedralSolid3D & solid()
begin
cpp
protected index_t begin()
protected index_t begin()
end
cpp
protected index_t end()
protected index_t end()
begin_to_end
cpp
protected const Segment3D & begin_to_end()
protected const Segment3D & begin_to_end()