![]() |
aimsalgo
5.0.5
Neuroimaging image processing
|
#include <aims/geodesicpath/geodesic_algorithm_graph_base.h>
Public Types | |
typedef Node * | node_pointer |
![]() | |
enum | AlgorithmType { EXACT, DIJKSTRA, SUBDIVISION, UNDEFINED_ALGORITHM } |
Public Member Functions | |
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 () |
![]() | |
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::Mesh * | mesh () |
Protected Types | |
typedef std::set< node_pointer, Node > | queue_type |
![]() | |
typedef std::pair< vertex_pointer, double > | stop_vertex_with_distace_type |
Protected Member Functions | |
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 |
![]() | |
void | set_stop_conditions (std::vector< SurfacePoint > *stop_points, double stop_distance) |
double | stop_distance () |
Protected Attributes | |
std::vector< Node > | m_nodes |
queue_type | m_queue |
std::vector< SurfacePoint > | m_sources |
![]() | |
AlgorithmType | m_type |
std::vector< stop_vertex_with_distace_type > | m_stop_vertices |
double | m_max_propagation_distance |
geodesic::Mesh * | m_mesh |
double | m_time_consumed |
double | m_propagation_distance_stopped |
Definition at line 13 of file geodesic_algorithm_graph_base.h.
typedef Node* geodesic::GeodesicAlgorithmGraphBase< Node >::node_pointer |
Definition at line 16 of file geodesic_algorithm_graph_base.h.
|
protected |
Definition at line 109 of file geodesic_algorithm_graph_base.h.
|
inline |
Definition at line 18 of file geodesic_algorithm_graph_base.h.
|
inline |
Definition at line 22 of file geodesic_algorithm_graph_base.h.
|
inlineprotected |
Definition at line 56 of file geodesic_algorithm_graph_base.h.
Referenced by geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::best_source(), geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::trace_back(), and geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::trace_back_with_index().
|
inlinevirtual |
Implements geodesic::GeodesicAlgorithmBase.
Definition at line 311 of file geodesic_algorithm_graph_base.h.
Referenced by geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::~GeodesicAlgorithmGraphBase().
|
inlineprotected |
Definition at line 215 of file geodesic_algorithm_graph_base.h.
Referenced by geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::best_first_node(), and geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::propagate().
|
protectedpure virtual |
|
protectedpure virtual |
|
inlineprotected |
Definition at line 46 of file geodesic_algorithm_graph_base.h.
Referenced by geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::best_first_node(), geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::check_stop_conditions(), and geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::trace_back_with_index().
|
inlinevirtual |
Reimplemented from geodesic::GeodesicAlgorithmBase.
Definition at line 37 of file geodesic_algorithm_graph_base.h.
|
virtual |
Implements geodesic::GeodesicAlgorithmBase.
Definition at line 116 of file geodesic_algorithm_graph_base.h.
Referenced by geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::~GeodesicAlgorithmGraphBase().
|
inlineprotected |
Definition at line 51 of file geodesic_algorithm_graph_base.h.
Referenced by geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::propagate().
|
inlinevirtual |
Implements geodesic::GeodesicAlgorithmBase.
Definition at line 238 of file geodesic_algorithm_graph_base.h.
Referenced by geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::~GeodesicAlgorithmGraphBase().
|
inlinevirtual |
Implements geodesic::GeodesicAlgorithmBase.
Definition at line 272 of file geodesic_algorithm_graph_base.h.
Referenced by geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::~GeodesicAlgorithmGraphBase().
|
protected |
Definition at line 107 of file geodesic_algorithm_graph_base.h.
Referenced by geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::best_first_node(), geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::check_stop_conditions(), geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::print_statistics(), and geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::propagate().
|
protected |
Definition at line 110 of file geodesic_algorithm_graph_base.h.
Referenced by geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::check_stop_conditions(), and geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::propagate().
|
protected |
Definition at line 112 of file geodesic_algorithm_graph_base.h.
Referenced by geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::propagate(), geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::set_sources(), geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::trace_back(), and geodesic::GeodesicAlgorithmGraphBase< SubdivisionNode >::trace_back_with_index().