gumbo.graphic.content
Interface KinkableGraphic

All Superinterfaces:
Graphic, LinkingGraphic
All Known Implementing Classes:
SwingGraphEdge

public interface KinkableGraphic
extends LinkingGraphic

A linking graphic with none or more ordered kink points, which are distinct from its end points. Depending on the graphic implementation, kink points can serve as tie and break points for rectilinear shaped links, or as interpolation points for cuvilinear ones. The semantics of the kink points is defined by the graphic entity. Unlike end points, kink points do not affect the shape's topology.

Version:
$Revision: 1.7 $
Author:
Jon Barrilleaux (jonb@jmbaai.com) of JMB and Associates Inc.

Method Summary
 void addGraphicLinkKink(Point3 point)
          Adds a kink point to the end of the kink point list.
 void clearGraphicLinkKinks()
          Clears the kink point list.
 Point3 getGraphicLinkKink(int index, Point3 retVal)
          Gets the specified kink point in the kink point list.
 int getGraphicLinkKinkCount()
          Gets the number of kink points in the kink point list.
 void removeGraphicLinkKink(int index)
          Removes the specified kink point from the kink point list.
 void setGraphicLinkKink(int index, Point3 point)
          Sets the specified kink point in the kink point list.
 
Methods inherited from interface gumbo.graphic.content.LinkingGraphic
getGraphicLinkDecoSize, getGraphicLinkEnd, getGraphicLinkEndCount, setGraphicLinkDecoSize, setGraphicLinkEnd
 
Methods inherited from interface gumbo.graphic.Graphic
getGraphic
 

Method Detail

getGraphicLinkKinkCount

public int getGraphicLinkKinkCount()
Gets the number of kink points in the kink point list.

Returns:
Kink point count.

setGraphicLinkKink

public void setGraphicLinkKink(int index,
                               Point3 point)
Sets the specified kink point in the kink point list.

Parameters:
index - Index of the point to set.
point - Value of the point. Never null.
Throws:
java.lang.IndexOutOfBoundsException - Index is outside the point list.

getGraphicLinkKink

public Point3 getGraphicLinkKink(int index,
                                 Point3 retVal)
Gets the specified kink point in the kink point list.

Parameters:
index - Index of the point to get.
retVal - Return value object. Value of the point. Never null.
Returns:
Reference to retVal. Never null.
Throws:
java.lang.IndexOutOfBoundsException - Index is outside the point list.

addGraphicLinkKink

public void addGraphicLinkKink(Point3 point)
Adds a kink point to the end of the kink point list.

Parameters:
point - Value of the point position. Never null.
Throws:
java.lang.UnsupportedOperationException - Can't add kinks to this link.

removeGraphicLinkKink

public void removeGraphicLinkKink(int index)
Removes the specified kink point from the kink point list.

Parameters:
index - Index of the point to remove.
Throws:
java.lang.IndexOutOfBoundsException - Index is outside the point list.
java.lang.UnsupportedOperationException - Can't remove kinks from this link.

clearGraphicLinkKinks

public void clearGraphicLinkKinks()
Clears the kink point list.

Throws:
java.lang.UnsupportedOperationException - Can't remove kinks from this link.