![]() |
MAGiC
V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
|
#include <hypergraphlib_node.h>
Types publics | |
typedef std::multimap< int, Arc * > | MultimapArcsById |
typedef std::pair< int, Arc * > | IntArc_Pair |
Fonctions membres publiques | |
Node (Graph *__owner, int __id) | |
Node (const Node &__from, const Graph *__owner=0) | |
MultimapArcsById & | IncidentArcs () |
void | Add (Arc *) |
unsigned int | ArcCount (int __id) |
int | Remove (int __id) |
void | AdjacentNodes (std::set< int > &__adjacentNodes) |
void | AdjacentNodes (std::set< Node * > &__adjacentNodes) |
Arc * | IsAdjacentToNode (int __nodeId) |
Arc * | IsAdjacentToNode (Node *__n) |
int | GetNbArcsToNode (Node *__other) |
![]() | |
GraphObject (const Graph *__owner, const int __id) | |
GraphObject (const GraphObject &, const Graph *__owner) | |
int | Id () const |
const Graph * | Owner () const |
void * | GetUserData () const |
void | SetUserData (void *) |
void * | GetUserData (unsigned i) const |
void | SetUserData (unsigned i, void *) |
Attributs protégés | |
MultimapArcsById | _arcs |
![]() | |
const Graph * | _owner |
const int | _id |
std::map< int, void * > | _userData |
Définition à la ligne 35 du fichier hypergraphlib_node.h.
typedef std::pair< int, Arc* > HypergraphLib::Node::IntArc_Pair |
Définition à la ligne 38 du fichier hypergraphlib_node.h.
typedef std::multimap< int , Arc * > HypergraphLib::Node::MultimapArcsById |
Définition à la ligne 37 du fichier hypergraphlib_node.h.
HypergraphLib::Node::Node | ( | Graph * | __owner, |
int | __id | ||
) |
Constructs an empty node
Définition à la ligne 34 du fichier hypergraphlib_node.cpp.
Copy constructor
Définition à la ligne 40 du fichier hypergraphlib_node.cpp.
void HypergraphLib::Node::Add | ( | Arc * | __incidentArc | ) |
Add an incident arc to this node
Définition à la ligne 45 du fichier hypergraphlib_node.cpp.
Références _arcs, et HypergraphLib::GraphObject::Id().
Référencé par HypergraphLib::Graph::AddArc(), CAD4FE::MCBody::ContractEdgeToVertex(), CAD4FE::ShortestPath::InitializeAdjacencyGraph(), HypergraphLib::Graph::MergeNodes(), CAD4FE::MCBody::MergeVertices(), et CAD4FE::MCBody::SplitEdge().
void HypergraphLib::Node::AdjacentNodes | ( | std::set< int > & | __adjacentNodes | ) |
Return the list of adjacent nodes
Définition à la ligne 73 du fichier hypergraphlib_node.cpp.
Références _arcs, HypergraphLib::GraphObject::_id, et HypergraphLib::Arc::Nodes().
Référencé par HypergraphLib::dfs(), HypergraphLib::dfsCycle(), HypergraphLib::Filaments(), et CAD4FE::MCAA::NodeConstrictedSection().
void HypergraphLib::Node::AdjacentNodes | ( | std::set< Node * > & | __adjacentNodes | ) |
Return the list of adjacent nodes
Définition à la ligne 92 du fichier hypergraphlib_node.cpp.
Références _arcs, HypergraphLib::GraphObject::_id, et HypergraphLib::Arc::Nodes().
unsigned int HypergraphLib::Node::ArcCount | ( | int | __id | ) |
Returns the number of ocurences of the specified arc incident to this node : this function will return "2" for a loop
Définition à la ligne 67 du fichier hypergraphlib_node.cpp.
Références _arcs.
int HypergraphLib::Node::GetNbArcsToNode | ( | Node * | __other | ) |
Définition à la ligne 134 du fichier hypergraphlib_node.cpp.
Références _arcs, HypergraphLib::GraphObject::Id(), et HypergraphLib::Arc::Nodes().
Référencé par HypergraphLib::Graph::IsCycle().
|
inline |
Returns the array of incident arcs
Définition à la ligne 53 du fichier hypergraphlib_node.h.
Référencé par CAD4FE::MCBody::ContractEdgeToVertex(), HypergraphLib::dfsCycle(), HypergraphLib::Dijkstra(), CAD4FE::MCBody::Edge_GetVertices(), CAD4FE::MCBody::Face_G10SubGraph(), CAD4FE::MCBody::Face_GetAdjacentEdges(), CAD4FE::MCBody::Face_GetMCVertices(), CAD4FE::MCAA::FaceBoundaryMesh(), HypergraphLib::Filaments(), HypergraphLib::Graph::MergeNodes(), HypergraphLib::Graph::RemoveNode(), et CAD4FE::MCAA::SuppressMCVertex().
Arc * HypergraphLib::Node::IsAdjacentToNode | ( | int | __nodeId | ) |
Définition à la ligne 119 du fichier hypergraphlib_node.cpp.
Références _arcs, et HypergraphLib::Arc::Nodes().
Référencé par HypergraphLib::Filaments(), IsAdjacentToNode(), et HypergraphLib::Graph::IsCycle().
Définition à la ligne 113 du fichier hypergraphlib_node.cpp.
Références HypergraphLib::GraphObject::Id(), et IsAdjacentToNode().
int HypergraphLib::Node::Remove | ( | int | __id | ) |
Removes one occurence of the arc ID incident to this node Return 1 if the arc ID is found in incident arcs
Définition à la ligne 50 du fichier hypergraphlib_node.cpp.
Références _arcs.
|
protected |
Définition à la ligne 92 du fichier hypergraphlib_node.h.
Référencé par Add(), AdjacentNodes(), ArcCount(), GetNbArcsToNode(), IsAdjacentToNode(), et Remove().