Views
Grapher Package API Reference Guide
Product Documentation:
Views Documentation Home
List of all members | Public Member Functions
IlvDoubleLinkImage Class Reference

Implementation of links drawn with 3 orthogonal segments. More...

#include <ilviews/grapher/links.h>

Inheritance diagram for IlvDoubleLinkImage:
IlvLinkImage IlvSimpleGraphic IlvGraphic IlvValueInterface IlvDoubleSplineLinkImage

Public Member Functions

 IlvDoubleLinkImage (IlvDisplay *display, IlBoolean oriented, IlvGraphic *from, IlvGraphic *to, IlvPalette *palette=0)
 Constructor. More...
 
 IlvDoubleLinkImage (IlvDisplay *display, IlvLinkOrientation orientation, IlBoolean oriented, IlvGraphic *from, IlvGraphic *to, IlvPalette *palette=0)
 Constructor. More...
 
IlBoolean getFixedOrientation (IlvLinkOrientation &orient) const
 Returns the orientation mode of the link. More...
 
virtual IlvPointgetLinkPoints (IlUInt &nPoints, const IlvTransformer *t=0) const
 Returns the points defining the shape of the link. More...
 
void setFixedOrientation (IlBoolean fixed, IlvLinkOrientation orient=IlvHorizontal)
 Modifies the orientation mode of the link. More...
 
- Public Member Functions inherited from IlvLinkImage
 IlvLinkImage (IlvDisplay *display, IlBoolean oriented, IlvGraphic *from, IlvGraphic *to, IlvPalette *palette=0)
 Constructor. More...
 
virtual void computePoints (IlvPoint &src, IlvPoint &dst, const IlvTransformer *t=0) const
 Computes the endpoints of the link when it is drawn as a straight line. More...
 
IlvGraphicgetFrom () const
 Returns the start node. More...
 
IlvGraphicgetTo () const
 Returns the end node. More...
 
IlBoolean isOriented () const
 Indicates whether the link is oriented. More...
 
void setFrom (IlvGraphic *f)
 Sets the start node. More...
 
void setOriented (IlBoolean oriented)
 Changes the oriented mode. More...
 
void setTo (IlvGraphic *t)
 Sets the end node. More...
 
virtual IlBoolean zoomable () const
 Returns the zoomable property of the link. More...
 

Detailed Description

Implementation of links drawn with 3 orthogonal segments.

Library: ilvgrapher

Links of the IlvDoubleLinkImage class are made of three lines forming two right angles to connect nodes of the grapher, as shown in the following figure:

- IlvDoubleLinkImage -

The layout of the three segments can follow two modes that can be set by the IlvDoubleLinkImage::setFixedOrientation method:

Constructor & Destructor Documentation

◆ IlvDoubleLinkImage() [1/2]

IlvDoubleLinkImage::IlvDoubleLinkImage ( IlvDisplay display,
IlBoolean  oriented,
IlvGraphic from,
IlvGraphic to,
IlvPalette palette = 0 
)

Constructor.

The constructor initializes a new instance of the IlvDoubleLinkImage class with an automatic orientation layout.

Parameters
displayThe display connection that handles the drawing of the object.
orientedA Boolean indicating whether an arrowhead is to be drawn at the end of the link.
fromThe IlvGraphic object representing the start node of the link.
toThe IlvGraphic object representing the end node of the link.
paletteThe palette used to draw the link.

◆ IlvDoubleLinkImage() [2/2]

IlvDoubleLinkImage::IlvDoubleLinkImage ( IlvDisplay display,
IlvLinkOrientation  orientation,
IlBoolean  oriented,
IlvGraphic from,
IlvGraphic to,
IlvPalette palette = 0 
)

Constructor.

The constructor initializes a new instance of the IlvDoubleLinkImage class with an orientation fixed to orientation.

Parameters
displayThe display connection that handles the drawing of this object.
orientationThe fixed orientation for the link.
orientedA Boolean indicating whether an arrowhead is to be drawn at the end of the link.
fromThe IlvGraphic object representing the start node of the link.
toThe IlvGraphic object representing the end node of the link.
paletteThe palette used to draw the link.
See also
IlvDoubleLinkImage::setFixedOrientation.

Member Function Documentation

◆ getFixedOrientation()

IlBoolean IlvDoubleLinkImage::getFixedOrientation ( IlvLinkOrientation orient) const

Returns the orientation mode of the link.

Parameters
orientReturns the value of the fixed orientation (relevant only if the method returns IlTrue).
Returns
fixed IlFalse if the orientation is automatic or IlTrue if it is fixed.
See also
setFixedOrientation.

◆ getLinkPoints()

virtual IlvPoint* IlvDoubleLinkImage::getLinkPoints ( IlUInt nPoints,
const IlvTransformer t = 0 
) const
virtual

Returns the points defining the shape of the link.

Returns an array of points defining the shape of the link when it is drawn with the transformer t. The size of the resulting array of points is returned in the nPoints parameter. The array is stored in an IlPoolOf(IlvPoint) and should not be deleted or modified.
This method is internally used by the methods draw, contains, and boundingBox. It is meant to replace various methods defined in subclasses in previous releases of Rogue Wave Views; like the obsolete IlvOneLinkImage::getPoints.
This function is overloaded by subclasses defining a specific shape for links. The default implementation returns an array of two points computed with the IlvLinkImage::computePoints method.

Parameters
nPointsThe number of points in the returned array.
tThe transformer applied to the link.
Returns
The points defining the shape of the link.

Reimplemented from IlvLinkImage.

◆ setFixedOrientation()

void IlvDoubleLinkImage::setFixedOrientation ( IlBoolean  fixed,
IlvLinkOrientation  orient = IlvHorizontal 
)

Modifies the orientation mode of the link.

If fixed is IlFalse, the orientation will be computed from the relative position of the nodes. If it is IlTrue, the orientation will be fixed by the value orient (either IlvHorizontalLink or IlvVerticalLink).

Parameters
fixedIlFalse if the orientation is automatic or IlTrue if it is fixed.
orientThe new fixed orientation (relevant only if fixed is IlTrue).