![]() |
Tulip
4.6.0
Better Visualization Through Research
|
#include <LayoutProperty.h>
Inheritance diagram for tlp::LayoutProperty:
Collaboration diagram for tlp::LayoutProperty:Public Member Functions | |
| LayoutProperty (Graph *graph, const std::string &name="") | |
| std::vector< double > | angularResolutions (const node n, const Graph *subgraph=NULL) const |
| double | averageAngularResolution (const Graph *subgraph=NULL) const |
| double | averageAngularResolution (const node n, const Graph *subgraph=NULL) const |
| double | averageEdgeLength (const Graph *subgraph=NULL) const |
| void | center (Graph *subgraph=NULL) |
| void | center (const Vec3f &newCenter, Graph *subgraph=NULL) |
| PropertyInterface * | clonePrototype (Graph *, const std::string &) |
| void | computeEmbedding (Graph *subgraph=NULL) |
| void | computeEmbedding (const node n, Graph *subgraph=NULL) |
| double | edgeLength (const edge e) const |
| Coord | getMax (Graph *subgraph=NULL) |
| Coord | getMin (Graph *subgraph=NULL) |
| const std::string & | getTypename () const |
| void | normalize (Graph *subgraph=NULL) |
| void | perfectAspectRatio () |
| void | rotateX (const double &alpha, Graph *subgraph=NULL) |
| void | rotateX (const double &alpha, Iterator< node > *itNodes, Iterator< edge > *itEdges) |
| void | rotateY (const double &alpha, Graph *subgraph=NULL) |
| void | rotateY (const double &alpha, Iterator< node > *itNodes, Iterator< edge > *itEdges) |
| void | rotateZ (const double &alpha, Graph *subgraph=NULL) |
| void | rotateZ (const double &alpha, Iterator< node > *itNodes, Iterator< edge > *itEdges) |
| void | scale (const Vec3f &scaleFactors, Graph *subgraph=NULL) |
| void | scale (const Vec3f &scaleFactors, Iterator< node > *itNodes, Iterator< edge > *itEdges) |
| virtual void | setAllEdgeValue (const std::vector< Coord > &v) |
| virtual void | setAllNodeValue (const Coord &v) |
| virtual void | setEdgeValue (const edge, const std::vector< Coord > &v) |
| virtual void | setNodeValue (const node, const Coord &v) |
| void | translate (const Vec3f &move, Graph *subgraph=NULL) |
| void | translate (const Vec3f &move, Iterator< node > *itNodes, Iterator< edge > *itEdges) |
Public Attributes | |
| unsigned int | nbBendedEdges |
Static Public Attributes | |
| static const std::string | propertyTypename |
Protected Member Functions | |
| virtual void | clone_handler (AbstractProperty< tlp::PointType, tlp::LineType > &) |
A graph property that maps a tlp::Coord value to graph nodes and std::vector<tlp::Coord> for edges.
Definition at line 48 of file LayoutProperty.h.
| std::vector<double> tlp::LayoutProperty::angularResolutions | ( | const node | n, |
| const Graph * | subgraph = NULL |
||
| ) | const |
Returns a vector of all angular resolution of a node. It is only defined for 2D drawing, meaning the third coordinate is omitted
| n | the graph node on which to compute the angular resolution |
| subgraph | If not null, only computes the average angular resolution for the node in that sub-graph |
| double tlp::LayoutProperty::averageAngularResolution | ( | const Graph * | subgraph = NULL | ) | const |
Returns the average angular resolution of the layout. It is only defined for 2D drawing, meaning the third coordinate is omitted
| subgraph | It not null, only computes the average angular resolution for that sub-graph |
| double tlp::LayoutProperty::averageAngularResolution | ( | const node | n, |
| const Graph * | subgraph = NULL |
||
| ) | const |
Returns the average angular resolution of a node. It is only defined for 2D drawing, meaning the third coordinate is omitted
| n | the graph node on which to compute the angular resolution |
| subgraph | If not null, only computes the average angular resolution for the node in that sub-graph |
| double tlp::LayoutProperty::averageEdgeLength | ( | const Graph * | subgraph = NULL | ) | const |
Returns the average edge length of the layout, the bends are taken into account
| subgraph | If not null, only compute the average edge length for that sub-graph |
| void tlp::LayoutProperty::center | ( | Graph * | subgraph = NULL | ) |
Centers the layout, meaning translating it in order that the center of its bounding box is (0,0,0)
| subgraph | If not null, only centers the layout of that sub-graph |
| void tlp::LayoutProperty::center | ( | const Vec3f & | newCenter, |
| Graph * | subgraph = NULL |
||
| ) |
Centers the layout to newCenter, meaning translating it in order that the center of its bounding box is equal to newCenter
| newCenter | the coordinate of the new layout center |
| subgraph | If not null, only centers the layout of that sub-graph |
| void tlp::LayoutProperty::computeEmbedding | ( | Graph * | subgraph = NULL | ) |
Fixes embedding of the graph according to the layout ie. sort edges around nodes according to their neighbors/bends position in the layout/ Only works in 2D, the third coordinate is not taken into account.
| subgraph | It not null, only fixes embedding in that sub-graph |
| void tlp::LayoutProperty::computeEmbedding | ( | const node | n, |
| Graph * | subgraph = NULL |
||
| ) |
Fixes 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.
| n | the graph node on which to fix embedding |
| subgraph | If not null, only fixes the embedding of the node in that sub-graph |
| 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.
| e | the graph edge on which to compute its length |
| Coord tlp::LayoutProperty::getMax | ( | Graph * | subgraph = NULL | ) |
Returns the maximum coordinate of the layout, i.e. the top-right corner of the induced bounding box
| subgraph | If not null, returns the maximum coordinate for a sub-graph layout |
| Coord tlp::LayoutProperty::getMin | ( | Graph * | subgraph = NULL | ) |
Returns the minimum coordinate of the layout, i.e. the bottom-left corner of the induced bounding box
| subgraph | If not null, returns the minimum coordinate for a sub-graph layout |
| void tlp::LayoutProperty::normalize | ( | Graph * | subgraph = NULL | ) |
Normalizes the layout, meaning dividing each nodes and edges coordinate by the maximum magnitude of the whole coordinates set
| subgraph | If not null, only normalizes the layout of that sub-graph |
Scales the layout in order to approach an aspect ratio (width / height) of 1.0 .
| void tlp::LayoutProperty::rotateX | ( | const double & | alpha, |
| Graph * | subgraph = NULL |
||
| ) |
Rotates the layout around the X-axis according to an angle in degrees.
| alpha | an angle in degrees |
| subgraph | If not null, only rotates the layout of that sub-graph |
| void tlp::LayoutProperty::rotateX | ( | const double & | alpha, |
| Iterator< node > * | itNodes, | ||
| Iterator< edge > * | itEdges | ||
| ) |
Rotates the layout around the X-axis of the nodes and edges provided through iterators according to an angle in degrees.
| alpha | an angle in degrees |
| itNodes | an iterator on graph nodes |
| itEdges | an iterator on graph edges |
| void tlp::LayoutProperty::rotateY | ( | const double & | alpha, |
| Graph * | subgraph = NULL |
||
| ) |
Rotates the layout around the Y-axis according to an angle in degrees.
| alpha | an angle in degrees |
| subgraph | If not null, only rotates the layout of that sub-graph |
| void tlp::LayoutProperty::rotateY | ( | const double & | alpha, |
| Iterator< node > * | itNodes, | ||
| Iterator< edge > * | itEdges | ||
| ) |
Rotates the layout around the Y-axis of the nodes and edges provided through iterators according to an angle in degrees.
| alpha | an angle in degrees |
| itNodes | an iterator on graph nodes |
| itEdges | an iterator on graph edges |
| void tlp::LayoutProperty::rotateZ | ( | const double & | alpha, |
| Graph * | subgraph = NULL |
||
| ) |
Rotates the layout around the Z-axis according to an angle in degrees.
| alpha | an angle in degrees |
| subgraph | If not null, only rotates the layout of that sub-graph |
| void tlp::LayoutProperty::rotateZ | ( | const double & | alpha, |
| Iterator< node > * | itNodes, | ||
| Iterator< edge > * | itEdges | ||
| ) |
Rotates the layout around the Z-axis of the nodes and edges provided through iterators according to an angle in degrees.
| alpha | an angle in degrees |
| itNodes | an iterator on graph nodes |
| itEdges | an iterator on graph edges |
| void tlp::LayoutProperty::scale | ( | const Vec3f & | scaleFactors, |
| Graph * | subgraph = NULL |
||
| ) |
Scales the current layout according to a vector of scale factors (sx, sy, sz).
| scaleFactors | a vector of scale factors |
| subgraph | If not null, only scales the layout of that sub-graph |
| void tlp::LayoutProperty::scale | ( | const Vec3f & | scaleFactors, |
| Iterator< node > * | itNodes, | ||
| Iterator< edge > * | itEdges | ||
| ) |
Scales the layout of a set of nodes and edges provided through iterators according to a vector of scale factors (sx, sy, sz).
| scaleFactors | a vector of scale factors |
| itNodes | an iterator on graph nodes |
| itEdges | an iterator on graph edges |
| virtual void tlp::LayoutProperty::setNodeValue | ( | const node | , |
| const Coord & | v | ||
| ) | [virtual] |
Returns the number of crossings in the layout
| void tlp::LayoutProperty::translate | ( | const Vec3f & | move, |
| Graph * | subgraph = NULL |
||
| ) |
Translates the current layout according to a movement vector
| move | a movement vector |
| subgraph | If not null, only translates the layout of that sub-graph |
| void tlp::LayoutProperty::translate | ( | const Vec3f & | move, |
| Iterator< node > * | itNodes, | ||
| Iterator< edge > * | itEdges | ||
| ) |
Translates the layout of a set of nodes and edges provided through iterators according to a movement vector
| move | a movement vector |
| itNodes | an iterator on graph nodes |
| itEdges | an iterator on graph edges |