Overview | Modules | Class Hierarchy | Classes | Members

# tlp::LayoutProperty Class Reference
[Properties]

`#include <LayoutProperty.h>`

Inheritance diagram for tlp::LayoutProperty:
[legend]
Collaboration diagram for tlp::LayoutProperty:
[legend]

List of all members.

## Public Member Functions

- LayoutProperty (Graph *, std::string n="", bool updateOnEdgeReversal=true)
- ~LayoutProperty ()
- PropertyInterface * clonePrototype (Graph *, const std::string &)
- std::string getTypename () const
- Coord getMax (Graph *graph=0)
- Coord getMin (Graph *graph=0)
- void translate (const tlp::Vector< float, 3 > &v, Graph *graph=0)
- void translate (const tlp::Vector< float, 3 > &v, Iterator< node > *, Iterator< edge > *)
- void scale (const tlp::Vector< float, 3 > &v, Graph *graph=0)
- void scale (const tlp::Vector< float, 3 > &v, Iterator< node > *, Iterator< edge > *)
- void rotateZ (const double &alpha, Graph *graph=0)
- void rotateX (const double &alpha, Iterator< node > *, Iterator< edge > *)
- void rotateY (const double &alpha, Iterator< node > *, Iterator< edge > *)
- void rotateZ (const double &alpha, Iterator< node > *, Iterator< edge > *)
- void center (Graph *graph=0)
- void normalize (Graph *graph=0)
- void perfectAspectRatio ()
- void resetBoundingBox ()
- double edgeLength (const edge e) const
- double averageAngularResolution (const Graph *graph=0) const
- double averageAngularResolution (const node n, const Graph *graph=0) const
- std::vector< double > angularResolutions (const node n, const Graph *graph=0) const
- void computeEmbedding (Graph *sg=0)
- void computeEmbedding (const node n, Graph *sg=0)
- unsigned int crossingNumber () const
- virtual void setNodeValue (const node, const Coord &v)
- virtual void setEdgeValue (const edge, const std::vector< Coord > &v)
- virtual void setAllNodeValue (const Coord &v)
- virtual void setAllEdgeValue (const std::vector< Coord > &v)

## Static Public Attributes

- static const std::string propertyTypename

## Protected Member Functions

- virtual void clone_handler (AbstractProperty< PointType, LineType, LayoutAlgorithm > &)

## Friends

- class LayoutAlgorithm

## Constructor & Destructor Documentation

tlp::LayoutProperty::LayoutProperty | ( | Graph * | ,
|  | std::string | n = `""`,
|  | bool | updateOnEdgeReversal = `true` |
| ) |  |  |

tlp::LayoutProperty::~LayoutProperty | ( |  | ) |

## Member Function Documentation

std::vector<double> tlp::LayoutProperty::angularResolutions | ( | const node | n,
|  | const Graph * | graph = `0` |
| ) |  |  | const

Returns a vector of all angular resolution of a node it is defined for 2D drawing, the third coordinates is omitted

double tlp::LayoutProperty::averageAngularResolution | ( | const node | n,
|  | const Graph * | graph = `0` |
| ) |  |  | const

Returns the average angular resolution of a node it is defined for 2D drawing, the third coordinates is omitted

double tlp::LayoutProperty::averageAngularResolution | ( | const Graph * | graph = `0` | ) | const

Returns the average angular resolution of the layout it is defined for 2D drawing, the third coordinates is omitted

void tlp::LayoutProperty::center | ( | Graph * | graph = `0` | ) |

virtual void tlp::LayoutProperty::clone_handler | ( | AbstractProperty< PointType, LineType, LayoutAlgorithm > & |  | ) | `[protected, virtual]`

PropertyInterface* tlp::LayoutProperty::clonePrototype | ( | Graph * | ,
|  | const std::string & |  |
| ) |  |  | `[virtual]`

Creates an object of the same real type of the current property, in the the graph (first parameter) with the name (second parameter). Values are not copied.

Implements tlp::PropertyInterface.

void tlp::LayoutProperty::computeEmbedding | ( | const node | n,
|  | Graph * | sg = `0` |
| ) |  |  |

Fix embedding of the node according to the layout ie. sort edges around the node according to its neighbors/bends position in the layout/ Only work in 2D, the third coordinate is not taken into account.

void tlp::LayoutProperty::computeEmbedding | ( | Graph * | sg = `0` | ) |

Fix embedding of the graph according to the layout ie. sort edges around nodes according to their neighbors/bends position in the layout/ Only work in 2D, the third coordinate is not taken into account.

unsigned int tlp::LayoutProperty::crossingNumber | ( |  | ) | const

Returns the number of crossings in the layout

double tlp::LayoutProperty::edgeLength | ( | const edge | e | ) | const

Returns the length of an edge, the bends are taken into account. Thus, it measure the length of a polyline. Warning this function only measure the length of the polyline between bends, when using curves like bezier etc... the result will not be the length of the curve.

Coord tlp::LayoutProperty::getMax | ( | Graph * | graph = `0` | ) |

Coord tlp::LayoutProperty::getMin | ( | Graph * | graph = `0` | ) |

std::string tlp::LayoutProperty::getTypename | ( |  | ) | const`[inline, virtual]`

Returns a string describing the type of the property. i.e. "graph", "double", "layout", "string", "integer", "color", "size", ...

Implements tlp::PropertyInterface.

void tlp::LayoutProperty::normalize | ( | Graph * | graph = `0` | ) |

void tlp::LayoutProperty::perfectAspectRatio | ( |  | ) |

void tlp::LayoutProperty::resetBoundingBox | ( |  | ) |

void tlp::LayoutProperty::rotateX | ( | const double & | alpha,
|  | Iterator< node > * | ,
|  | Iterator< edge > * |  |
| ) |  |  |

Rotates the passed nodes and edges in the given layout proxy by alpha degrees

void tlp::LayoutProperty::rotateY | ( | const double & | alpha,
|  | Iterator< node > * | ,
|  | Iterator< edge > * |  |
| ) |  |  |

void tlp::LayoutProperty::rotateZ | ( | const double & | alpha,
|  | Iterator< node > * | ,
|  | Iterator< edge > * |  |
| ) |  |  |

void tlp::LayoutProperty::rotateZ | ( | const double & | alpha,
|  | Graph * | graph = `0` |
| ) |  |  |

Rotates the layout proxy of the passed graph by alpha degrees

void tlp::LayoutProperty::scale | ( | const tlp::Vector< float, 3 > & | v,
|  | Iterator< node > * | ,
|  | Iterator< edge > * |  |
| ) |  |  |

void tlp::LayoutProperty::scale | ( | const tlp::Vector< float, 3 > & | v,
|  | Graph * | graph = `0` |
| ) |  |  |

virtual void tlp::LayoutProperty::setAllEdgeValue | ( | const std::vector< Coord > & | v | ) | `[virtual]`

virtual void tlp::LayoutProperty::setAllNodeValue | ( | const Coord & | v | ) | `[virtual]`

virtual void tlp::LayoutProperty::setEdgeValue | ( | const | edge,
|  | const std::vector< Coord > & | v |
| ) |  |  | `[virtual]`

virtual void tlp::LayoutProperty::setNodeValue | ( | const | node,
|  | const Coord & | v |
| ) |  |  | `[virtual]`

void tlp::LayoutProperty::translate | ( | const tlp::Vector< float, 3 > & | v,
|  | Iterator< node > * | ,
|  | Iterator< edge > * |  |
| ) |  |  |

void tlp::LayoutProperty::translate | ( | const tlp::Vector< float, 3 > & | v,
|  | Graph * | graph = `0` |
| ) |  |  |

## Friends And Related Function Documentation

friend class LayoutAlgorithm `[friend]`

## Member Data Documentation

const std::string tlp::LayoutProperty::propertyTypename `[static]`

Tulip Software by LaBRI Visualization Team 2001 - 2011