public class BasicEdgeArrowRenderingSupport<V,E> extends Object implements EdgeArrowRenderingSupport<V,E>
Constructor and Description |
---|
BasicEdgeArrowRenderingSupport() |
Modifier and Type | Method and Description |
---|---|
AffineTransform |
getArrowTransform(RenderContext<V,E> rc,
Line2D edgeShape,
Shape vertexShape)
This is used for the arrow of a directed and for one of the
arrows for non-directed edges
Get a transform to place the arrow shape on the passed edge at the
point where it intersects the passed shape
|
AffineTransform |
getArrowTransform(RenderContext<V,E> rc,
Shape edgeShape,
Shape vertexShape)
Returns a transform to position the arrowhead on this edge shape at the
point where it intersects the passed vertex shape.
|
protected Line2D |
getFirstOutsideSegment(Line2D line,
Shape shape)
Passed Line's point1 must be inside the passed shape or
an IllegalArgumentException is thrown
|
protected Line2D |
getLastOutsideSegment(Line2D line,
Shape shape)
Passed Line's point2 must be inside the passed shape or
an IllegalArgumentException is thrown
|
protected AffineTransform |
getReverseArrowTransform(RenderContext<V,E> rc,
Line2D edgeShape,
Shape vertexShape)
This is used for the reverse-arrow of a non-directed edge
get a transform to place the arrow shape on the passed edge at the
point where it intersects the passed shape
|
AffineTransform |
getReverseArrowTransform(RenderContext<V,E> rc,
Shape edgeShape,
Shape vertexShape)
Returns a transform to position the arrowhead on this edge shape at the
point where it intersects the passed vertex shape.
|
AffineTransform |
getReverseArrowTransform(RenderContext<V,E> rc,
Shape edgeShape,
Shape vertexShape,
boolean passedGo)
Returns a transform to position the arrowhead on this edge shape at the
point where it intersects the passed vertex shape.
|
protected void |
subdivide(Line2D src,
Line2D left,
Line2D right)
divide a Line2D into 2 new Line2Ds that are returned
in the passed left and right instances, if non-null
|
public AffineTransform getArrowTransform(RenderContext<V,E> rc, Shape edgeShape, Shape vertexShape)
EdgeArrowRenderingSupport
getArrowTransform
in interface EdgeArrowRenderingSupport<V,E>
public AffineTransform getReverseArrowTransform(RenderContext<V,E> rc, Shape edgeShape, Shape vertexShape)
EdgeArrowRenderingSupport
getReverseArrowTransform
in interface EdgeArrowRenderingSupport<V,E>
public AffineTransform getReverseArrowTransform(RenderContext<V,E> rc, Shape edgeShape, Shape vertexShape, boolean passedGo)
EdgeArrowRenderingSupport
Returns a transform to position the arrowhead on this edge shape at the point where it intersects the passed vertex shape.
The Loop edge is a special case because its staring point is not inside the vertex. The passedGo flag handles this case.
getReverseArrowTransform
in interface EdgeArrowRenderingSupport<V,E>
passedGo
- - used only for Loop edgespublic AffineTransform getArrowTransform(RenderContext<V,E> rc, Line2D edgeShape, Shape vertexShape)
EdgeArrowRenderingSupport
getArrowTransform
in interface EdgeArrowRenderingSupport<V,E>
protected AffineTransform getReverseArrowTransform(RenderContext<V,E> rc, Line2D edgeShape, Shape vertexShape)
edgeShape
- vertexShape
- protected Line2D getLastOutsideSegment(Line2D line, Shape shape)
line
- line to subdivideshape
- shape to compare with lineIllegalArgumentException
- if the passed line's point1 is not inside the shapeprotected Line2D getFirstOutsideSegment(Line2D line, Shape shape)
line
- line to subdivideshape
- shape to compare with lineIllegalArgumentException
- if the passed line's point1 is not inside the shapeCopyright © 2014. All rights reserved.