public class TriangleFigure extends AbstractAttributedFigure
Figure with a triangular shape.
The tip of the triangle points in the direction specified by the attribute
AttributeKeys.ORIENTATION.
This figure creates a OrientationHandle which allows
to interactively change the orientation of the triangle.
changingDepth, listenerListpropertySupportCONNECTABLE_PROPERTY, REMOVABLE_PROPERTY, SELECTABLE_PROPERTY, TRANSFORMABLE_PROPERTY| Constructor and Description |
|---|
TriangleFigure()
Creates a new instance.
|
TriangleFigure(AttributeKeys.Orientation direction) |
TriangleFigure(double x,
double y,
double width,
double height) |
TriangleFigure(double x,
double y,
double width,
double height,
AttributeKeys.Orientation direction) |
| Modifier and Type | Method and Description |
|---|---|
java.awt.geom.Point2D.Double |
chop(java.awt.geom.Point2D.Double p) |
TriangleFigure |
clone()
Returns a clone of the figure, with clones of all aggregated figures,
such as children and decorators.
|
boolean |
contains(java.awt.geom.Point2D.Double p)
Checks if a Point2D.Double is inside the figure.
|
java.util.Collection<Handle> |
createHandles(int detailLevel)
Creates handles used to manipulate the figure.
|
protected void |
drawFill(java.awt.Graphics2D g)
This method is called by method draw() to draw the fill
area of the figure.
|
protected void |
drawStroke(java.awt.Graphics2D g)
This method is called by method draw() to draw the text of the figure
.
|
Connector |
findCompatibleConnector(Connector c,
boolean isStartConnector)
Returns a compatible connector.
|
Connector |
findConnector(java.awt.geom.Point2D.Double p,
ConnectionFigure prototype)
Returns the Figures connector for the specified location.
|
BezierPath |
getBezierPath() |
java.awt.geom.Rectangle2D.Double |
getBounds()
Returns the untransformed logical bounds of the figure as a Rectangle.
|
java.awt.geom.Rectangle2D.Double |
getDrawingArea()
Returns the drawing area of the figure as a Rectangle.
|
java.lang.Object |
getTransformRestoreData()
Gets data which can be used to restore the transformation of the figure
without loss of precision, after a transform has been applied to it.
|
void |
restoreTransformTo(java.lang.Object geometry)
Restores the transform of the figure to a previously stored state.
|
void |
setBounds(java.awt.geom.Point2D.Double anchor,
java.awt.geom.Point2D.Double lead)
Sets the logical and untransformed bounds of the figure.
|
void |
transform(java.awt.geom.AffineTransform tx)
Moves the Figure to a new location.
|
applyAttributesTo, draw, drawText, get, getAttributeKey, getAttributes, getAttributesRestoreData, getStroke, getStrokeMiterLimitFactor, hasAttribute, isAttributeEnabled, read, readAttributes, removeAttribute, restoreAttributesTo, set, setAttributeEnabled, setAttributes, write, writeAttributesaddFigureListener, addNotify, changed, findFigureInside, fireAreaInvalidated, fireAreaInvalidated, fireAreaInvalidated, fireAttributeChanged, fireFigureAdded, fireFigureChanged, fireFigureChanged, fireFigureChanged, fireFigureHandlesChanged, fireFigureRemoved, fireFigureRequestRemove, fireUndoableEditHappened, getActions, getChangingDepth, getConnectors, getCursor, getDecomposition, getDrawing, getEndPoint, getFontRenderContext, getLayer, getLock, getPreferredSize, getStartPoint, getTool, getToolTipText, handleDrop, handleMouseClick, includes, invalidate, isChanging, isConnectable, isRemovable, isSelectable, isTransformable, isVisible, remap, removeFigureListener, removeNotify, requestRemove, setBounds, setConnectable, setRemovable, setSelectable, setTransformable, setVisible, toString, validate, willChangeaddPropertyChangeListener, addPropertyChangeListener, firePropertyChange, firePropertyChange, firePropertyChange, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListenerequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddPropertyChangeListener, removePropertyChangeListenerpublic TriangleFigure()
public TriangleFigure(AttributeKeys.Orientation direction)
public TriangleFigure(double x,
double y,
double width,
double height)
public TriangleFigure(double x,
double y,
double width,
double height,
AttributeKeys.Orientation direction)
public Connector findConnector(java.awt.geom.Point2D.Double p, ConnectionFigure prototype)
ChopTriangleConnector is returned.findConnector in interface FigurefindConnector in class AbstractFigurep - the location of the connector.prototype - The prototype used to create a connection or null if
unknown. This allows for specific connectors for different
connection figures.ChopRectangleConnectorpublic Connector findCompatibleConnector(Connector c, boolean isStartConnector)
ChopTriangleConnector is returned.findCompatibleConnector in interface FigurefindCompatibleConnector in class AbstractFigurepublic java.awt.geom.Rectangle2D.Double getBounds()
FigureThe bounds are used by Handle objects for adjusting the figure and for aligning the figure on a grid.
protected void drawFill(java.awt.Graphics2D g)
AbstractAttributedFiguredrawFill in class AbstractAttributedFigureprotected void drawStroke(java.awt.Graphics2D g)
AbstractAttributedFiguredrawStroke in class AbstractAttributedFigurepublic java.util.Collection<Handle> createHandles(int detailLevel)
FigurecreateHandles in interface FigurecreateHandles in class AbstractFiguredetailLevel - The detail level of the handles. Usually this is 0 for
bounding box handles and 1 for point handles. The value -1 is used
by the SelectAreaTracker and the HandleTracker to highlight figures, over which the mouse
pointer is hovering.Handlepublic BezierPath getBezierPath()
public boolean contains(java.awt.geom.Point2D.Double p)
public void setBounds(java.awt.geom.Point2D.Double anchor,
java.awt.geom.Point2D.Double lead)
FigureThis is used by Tool's which create a new Figure and by Tool's which connect a Figure to another Figure.
This is a basic operation which does not fire events. Use the following code sequence, if you need event firing:
figure.willChange(); figure.setBounds(...); figure.changed();
setBounds in interface FiguresetBounds in class AbstractFigureanchor - the start point of the boundslead - the end point of the boundsFigure.getBounds()public java.awt.geom.Rectangle2D.Double getDrawingArea()
Figure
The drawing area is used to inform DrawingView about the
area that is needed to draw this figure.
The drawing area needs to be large enough, to take line width, line caps and other decorations into account that exceed the bounds of the Figure.
getDrawingArea in interface FiguregetDrawingArea in class AbstractAttributedFigurepublic java.awt.geom.Point2D.Double chop(java.awt.geom.Point2D.Double p)
public void transform(java.awt.geom.AffineTransform tx)
tx - the transformation matrix.Figure.getTransformRestoreData(),
Figure.restoreTransformTo(java.lang.Object)public TriangleFigure clone()
Figureclone in interface Figureclone in class AbstractAttributedFigurepublic void restoreTransformTo(java.lang.Object geometry)
Figurepublic java.lang.Object getTransformRestoreData()
FigureFigure.transform(AffineTransform)