MeVisLabToolboxReference
ml::VesselNode Class Reference

class VesselNode More...

#include <mlVesselNode.h>

Inheritance diagram for ml::VesselNode:
ml::BaseGraphItem ml::PropertyContainer ml::Base

List of all members.

Public Member Functions

 VesselNode (const VesselNode &other)
 Copy constructor (creates an unconnected object, only copies properties), deprecated.
 ~VesselNode ()
 Destructor.
VesselNodeoperator= (const VesselNode &other)
 Assignment operator, deprecated. Use copyProperties() instead.
void copyProperties (const VesselNode *other)
 Copy all properties (topology information is left unchanged)
bool operator== (const VesselNode &other) const
bool operator!= (const VesselNode &other) const
Graph geometry
 STATIC_GRAPH_PROPERTY (Vector3, pos, Pos)
void setVectorPos (const ImageVector &position)
 Position in world.
ImageVector getVectorPos () const
 Position in world.
double distance (Vector3 position) const
 Get the euclidean distance between _worldPos and pos.
void transform (const Matrix4 &m)
 Apply a 4x4 homogeneous transformation matrix to the node position.
void convertToVoxel (Matrix4 *mat)
 Convert nodes' coordinates.
void convertToWorld (Matrix4 *mat)
 Convert nodes' coordinates.
Persistence
virtual void addStateToTree (TreeNode *parent) const
 Attaches the object state as children of the given parent node.
 ML_SET_ADDSTATE_VERSION (2)
 Set current addStateToTree() version number:
virtual void readStateFromTree (TreeNode *parent)
 Reads the object state from the children of the given parent node.

Friends

class Graph
class VesselEdge
class LoadTreeData

Graph Topology

bool isRoot () const
 Get the node type: root, end or branch node.
bool isEnd () const
bool isBranch () const
int nodeType () const
size_t getEdgeNum () const
 Get Number of edges dependent to the node.
VesselEdgegetDepEdge (size_t i)
 Get the pointer of edge with index i.
const VesselEdgegetDepEdge (size_t i) const
 Get the pointer of edge with index i.
std::vector< VesselEdge * > * edges ()
VesselNodegetDepNode (size_t i)
 Get dependent node via edge with index i.
const VesselNodegetDepNode (size_t i) const
 Get dependent node via edge with index i.
bool isPred (size_t i) const
 Is the dependent edge with index i preceding?
bool isSucc (size_t i) const
 Is the dependent edge with index i succeeding?
bool isCycle (size_t i) const
 Is the dependent edge with index i a cycle?
bool closeCycle ()
VesselNodegetPredNode ()
 Get the one and only predecessor node (return NULL for rootnode)
const VesselNodegetPredNode () const
 Get the one and only predecessor node (return NULL for rootnode)
VesselEdgegetPredEdge ()
 Get the one and only predecessor edge (return NULL for rootnode)
const VesselEdgegetPredEdge () const
 Get the one and only predecessor edge (return NULL for rootnode)

Properties

typedef MLdouble(VesselNode::* NodeGetFkt )(void) const
 object bound function pointer: position of function relative to (individual) object base
typedef void(VesselNode::* NodeSetFkt )(const MLdouble &)
 function to set float parameter value
 STATIC_GRAPH_PROPERTY (MLint, label, Label)
 STATIC_GRAPH_PROPERTY (MLdouble, minDistance, MinDistance)
 STATIC_GRAPH_PROPERTY (MLdouble, drainVolume, DrainVolume)
 STATIC_GRAPH_PROPERTY (MLdouble, maxPathLength, MaxPathLength)
 STATIC_GRAPH_PROPERTY (MLdouble, weight, Weight)
 Weigt of the node.
 STATIC_GRAPH_PROPERTY (MLint16, shortLabel, ShortLabel)
 Intern processing label used for different purposes.
 STATIC_GRAPH_PROPERTY (MLuint32, enumLabel, EnumLabel)
 label to enumerate the node within a graph. not enumerated value is 0.

Detailed Description

class VesselNode

Definition at line 25 of file mlVesselNode.h.


Member Typedef Documentation

typedef MLdouble(VesselNode::* ml::VesselNode::NodeGetFkt)(void) const

object bound function pointer: position of function relative to (individual) object base

function to get float parameter value

Definition at line 143 of file mlVesselNode.h.

typedef void(VesselNode::* ml::VesselNode::NodeSetFkt)(const MLdouble &)

function to set float parameter value

Definition at line 144 of file mlVesselNode.h.


Constructor & Destructor Documentation

ml::VesselNode::VesselNode ( const VesselNode other)

Copy constructor (creates an unconnected object, only copies properties), deprecated.

ml::VesselNode::~VesselNode ( ) [inline]

Destructor.

Definition at line 37 of file mlVesselNode.h.


Member Function Documentation

virtual void ml::VesselNode::addStateToTree ( TreeNode parent) const [virtual]

Attaches the object state as children of the given parent node.

Reimplemented from ml::BaseGraphItem.

bool ml::VesselNode::closeCycle ( )
void ml::VesselNode::convertToVoxel ( Matrix4 mat)

Convert nodes' coordinates.

void ml::VesselNode::convertToWorld ( Matrix4 mat)

Convert nodes' coordinates.

void ml::VesselNode::copyProperties ( const VesselNode other)

Copy all properties (topology information is left unchanged)

double ml::VesselNode::distance ( Vector3  position) const [inline]

Get the euclidean distance between _worldPos and pos.

Used for node selection in a scene.

Definition at line 101 of file mlVesselNode.h.

std::vector<VesselEdge*>* ml::VesselNode::edges ( ) [inline]

Definition at line 65 of file mlVesselNode.h.

VesselEdge* ml::VesselNode::getDepEdge ( size_t  i) [inline]

Get the pointer of edge with index i.

Definition at line 61 of file mlVesselNode.h.

const VesselEdge* ml::VesselNode::getDepEdge ( size_t  i) const [inline]

Get the pointer of edge with index i.

Definition at line 63 of file mlVesselNode.h.

VesselNode* ml::VesselNode::getDepNode ( size_t  i)

Get dependent node via edge with index i.

const VesselNode* ml::VesselNode::getDepNode ( size_t  i) const

Get dependent node via edge with index i.

size_t ml::VesselNode::getEdgeNum ( ) const [inline]

Get Number of edges dependent to the node.

Definition at line 59 of file mlVesselNode.h.

VesselEdge* ml::VesselNode::getPredEdge ( )

Get the one and only predecessor edge (return NULL for rootnode)

const VesselEdge* ml::VesselNode::getPredEdge ( ) const

Get the one and only predecessor edge (return NULL for rootnode)

VesselNode* ml::VesselNode::getPredNode ( )

Get the one and only predecessor node (return NULL for rootnode)

const VesselNode* ml::VesselNode::getPredNode ( ) const

Get the one and only predecessor node (return NULL for rootnode)

ImageVector ml::VesselNode::getVectorPos ( ) const [inline]

Position in world.

Definition at line 97 of file mlVesselNode.h.

References ml::ImageVector.

bool ml::VesselNode::isBranch ( ) const
bool ml::VesselNode::isCycle ( size_t  i) const [inline]

Is the dependent edge with index i a cycle?

Definition at line 76 of file mlVesselNode.h.

bool ml::VesselNode::isEnd ( ) const
bool ml::VesselNode::isPred ( size_t  i) const [inline]

Is the dependent edge with index i preceding?

Definition at line 72 of file mlVesselNode.h.

bool ml::VesselNode::isRoot ( ) const

Get the node type: root, end or branch node.

bool ml::VesselNode::isSucc ( size_t  i) const [inline]

Is the dependent edge with index i succeeding?

Definition at line 74 of file mlVesselNode.h.

ml::VesselNode::ML_SET_ADDSTATE_VERSION ( )

Set current addStateToTree() version number:

Reimplemented from ml::BaseGraphItem.

int ml::VesselNode::nodeType ( ) const
bool ml::VesselNode::operator!= ( const VesselNode other) const [inline]

Definition at line 48 of file mlVesselNode.h.

VesselNode& ml::VesselNode::operator= ( const VesselNode other)

Assignment operator, deprecated. Use copyProperties() instead.

bool ml::VesselNode::operator== ( const VesselNode other) const
virtual void ml::VesselNode::readStateFromTree ( TreeNode parent) [virtual]

Reads the object state from the children of the given parent node.

Reimplemented from ml::BaseGraphItem.

void ml::VesselNode::setVectorPos ( const ImageVector position) [inline]

Position in world.

Definition at line 95 of file mlVesselNode.h.

ml::VesselNode::STATIC_GRAPH_PROPERTY ( MLdouble  ,
minDistance  ,
MinDistance   
)
ml::VesselNode::STATIC_GRAPH_PROPERTY ( MLdouble  ,
maxPathLength  ,
MaxPathLength   
)
ml::VesselNode::STATIC_GRAPH_PROPERTY ( Vector3  ,
pos  ,
Pos   
)
ml::VesselNode::STATIC_GRAPH_PROPERTY ( MLdouble  ,
weight  ,
Weight   
)

Weigt of the node.

May be used to direct the graph by attaching edges to the root-node in a weighted order. Default is 1.0.

ml::VesselNode::STATIC_GRAPH_PROPERTY ( MLuint32  ,
enumLabel  ,
EnumLabel   
)

label to enumerate the node within a graph. not enumerated value is 0.

ml::VesselNode::STATIC_GRAPH_PROPERTY ( MLdouble  ,
drainVolume  ,
DrainVolume   
)
ml::VesselNode::STATIC_GRAPH_PROPERTY ( MLint  ,
label  ,
Label   
)
ml::VesselNode::STATIC_GRAPH_PROPERTY ( MLint16  ,
shortLabel  ,
ShortLabel   
)

Intern processing label used for different purposes.

void ml::VesselNode::transform ( const Matrix4 m)

Apply a 4x4 homogeneous transformation matrix to the node position.


Friends And Related Function Documentation

friend class Graph [friend]

Reimplemented from ml::BaseGraphItem.

Definition at line 27 of file mlVesselNode.h.

friend class LoadTreeData [friend]

Reimplemented from ml::BaseGraphItem.

Definition at line 29 of file mlVesselNode.h.

friend class VesselEdge [friend]

Definition at line 28 of file mlVesselNode.h.


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