aimsalgo  5.1.2
Neuroimaging image processing
geodesic::GeodesicAlgorithmSubdivision Class Reference

#include <aims/geodesicpath/geodesic_algorithm_subdivision.h>

Inheritance diagram for geodesic::GeodesicAlgorithmSubdivision:
Collaboration diagram for geodesic::GeodesicAlgorithmSubdivision:

Public Member Functions

 GeodesicAlgorithmSubdivision (geodesic::Mesh *mesh=NULL, unsigned subdivision_level=0)
 
 ~GeodesicAlgorithmSubdivision ()
 
unsigned subdivision_level ()
 
void set_subdivision_level (unsigned subdivision_level)
 
- Public Member Functions inherited from geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >
 GeodesicAlgorithmGraphBase (geodesic::Mesh *mesh)
 
 ~GeodesicAlgorithmGraphBase ()
 
void propagate (std::vector< SurfacePoint > &sources, double max_propagation_distance=GEODESIC_INF, std::vector< SurfacePoint > *stop_points=NULL)
 
void trace_back (SurfacePoint &destination, std::vector< SurfacePoint > &path)
 
void trace_back_with_index (SurfacePoint &destination, std::vector< SurfacePoint > &path, std::vector< unsigned > &indexVertex)
 
unsigned best_source (SurfacePoint &point, double &best_source_distance)
 
void print_statistics ()
 
- Public Member Functions inherited from geodesic::GeodesicAlgorithmBase
 GeodesicAlgorithmBase (geodesic::Mesh *mesh)
 
virtual ~GeodesicAlgorithmBase ()
 
void geodesic (SurfacePoint &source, SurfacePoint &destination, std::vector< SurfacePoint > &path)
 
void geodesic (std::vector< SurfacePoint > &sources, std::vector< SurfacePoint > &destinations, std::vector< std::vector< SurfacePoint > > &paths)
 
void geodesic (SurfacePoint &source, SurfacePoint &destination, std::vector< SurfacePoint > &path, std::vector< unsigned > &indexVertex)
 
void geodesic (SurfacePoint &sources, std::vector< SurfacePoint > &destinations, std::vector< std::vector< SurfacePoint > > &paths, std::vector< std::vector< unsigned > > &indexVertex)
 
double length (std::vector< SurfacePoint > &path)
 
void print_info_about_path (std::vector< SurfacePoint > &path)
 
AlgorithmType type ()
 
virtual std::string name ()
 
geodesic::Meshmesh ()
 

Protected Member Functions

void list_nodes_visible_from_source (MeshElementBase *p, std::vector< node_pointer > &storage)
 
void list_nodes_visible_from_node (node_pointer node, std::vector< node_pointer > &storage, std::vector< double > &distances, double threshold_distance)
 
unsigned node_indexx (edge_pointer e)
 
- Protected Member Functions inherited from geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >
unsigned node_index (vertex_pointer v)
 
void set_sources (std::vector< SurfacePoint > &sources)
 
node_pointer best_first_node (SurfacePoint &point, double &best_total_distance)
 
bool check_stop_conditions (unsigned &index)
 
virtual void list_nodes_visible_from_source (MeshElementBase *p, std::vector< node_pointer > &storage)=0
 
virtual void list_nodes_visible_from_node (node_pointer node, std::vector< node_pointer > &storage, std::vector< double > &distances, double threshold_distance)=0
 
- Protected Member Functions inherited from geodesic::GeodesicAlgorithmBase
void set_stop_conditions (std::vector< SurfacePoint > *stop_points, double stop_distance)
 
double stop_distance ()
 

Additional Inherited Members

- Public Types inherited from geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >
typedef SubdivisionNodenode_pointer
 
- Public Types inherited from geodesic::GeodesicAlgorithmBase
enum  AlgorithmType { EXACT , DIJKSTRA , SUBDIVISION , UNDEFINED_ALGORITHM }
 
- Protected Types inherited from geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >
typedef std::set< node_pointer, SubdivisionNodequeue_type
 
- Protected Types inherited from geodesic::GeodesicAlgorithmBase
typedef std::pair< vertex_pointer, double > stop_vertex_with_distace_type
 
- Protected Attributes inherited from geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >
std::vector< SubdivisionNodem_nodes
 
queue_type m_queue
 
std::vector< SurfacePointm_sources
 
- Protected Attributes inherited from geodesic::GeodesicAlgorithmBase
AlgorithmType m_type
 
std::vector< stop_vertex_with_distace_typem_stop_vertices
 
double m_max_propagation_distance
 
geodesic::Meshm_mesh
 
double m_time_consumed
 
double m_propagation_distance_stopped
 

Detailed Description

Definition at line 88 of file geodesic_algorithm_subdivision.h.

Constructor & Destructor Documentation

◆ GeodesicAlgorithmSubdivision()

◆ ~GeodesicAlgorithmSubdivision()

geodesic::GeodesicAlgorithmSubdivision::~GeodesicAlgorithmSubdivision ( )
inline

Definition at line 108 of file geodesic_algorithm_subdivision.h.

Member Function Documentation

◆ list_nodes_visible_from_node()

◆ list_nodes_visible_from_source()

void geodesic::GeodesicAlgorithmSubdivision::list_nodes_visible_from_source ( MeshElementBase p,
std::vector< node_pointer > &  storage 
)
protected

◆ node_indexx()

unsigned geodesic::GeodesicAlgorithmSubdivision::node_indexx ( edge_pointer  e)
inlineprotected

◆ set_subdivision_level()

void geodesic::GeodesicAlgorithmSubdivision::set_subdivision_level ( unsigned  subdivision_level)
inline

◆ subdivision_level()

unsigned geodesic::GeodesicAlgorithmSubdivision::subdivision_level ( )
inline

The documentation for this class was generated from the following file: