|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.umd.cs.piccolo.PNode
edu.umd.cs.piccolox.swt.PSWTPath
public class PSWTPath
PPath is a wrapper around a java.awt.geom.GeneralPath. The setBounds method works by scaling the path to fit into the specified bounds. This normally works well, but if the specified base bounds get too small then it is impossible to expand the path shape again since all its numbers have tended to zero, so application code may need to take this into consideration.
One option that applications have is to call startResizeBounds
before starting an interaction that may make the bounds very small, and
calling endResizeBounds
when this interaction is finished. When
this is done PPath will use a copy of the original path to do the resizing so
the numbers in the path wont loose resolution.
This class also provides methods for constructing common shapes using a general path.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class edu.umd.cs.piccolo.PNode |
---|
edu.umd.cs.piccolo.PNode.PSceneGraphDelegate |
Field Summary | |
---|---|
(package private) edu.umd.cs.piccolo.util.PAffineTransform |
internalXForm
|
(package private) java.awt.geom.AffineTransform |
inverseXForm
|
(package private) java.awt.Shape |
origShape
|
static java.lang.String |
PROPERTY_SHAPE
The property name that identifies a change of this node's path. |
(package private) java.awt.Shape |
shape
|
(package private) double[] |
shapePts
|
(package private) boolean |
updatingBoundsFromPath
|
Fields inherited from class edu.umd.cs.piccolo.PNode |
---|
FILL_STRATEGY_ASPECT_COVER, FILL_STRATEGY_ASPECT_FIT, FILL_STRATEGY_EXACT_FIT, PROPERTY_BOUNDS, PROPERTY_CHILDREN, PROPERTY_CHILDREN_PICKABLE, PROPERTY_CLIENT_PROPERTIES, PROPERTY_CODE_BOUNDS, PROPERTY_CODE_CHILDREN, PROPERTY_CODE_CHILDREN_PICKABLE, PROPERTY_CODE_CLIENT_PROPERTIES, PROPERTY_CODE_FULL_BOUNDS, PROPERTY_CODE_PAINT, PROPERTY_CODE_PARENT, PROPERTY_CODE_PICKABLE, PROPERTY_CODE_TRANSFORM, PROPERTY_CODE_TRANSPARENCY, PROPERTY_CODE_VISIBLE, PROPERTY_FULL_BOUNDS, PROPERTY_PAINT, PROPERTY_PARENT, PROPERTY_PICKABLE, PROPERTY_TRANSFORM, PROPERTY_TRANSPARENCY, PROPERTY_VISIBLE, SCENE_GRAPH_DELEGATE |
Fields inherited from interface java.awt.print.Printable |
---|
NO_SUCH_PAGE, PAGE_EXISTS |
Constructor Summary | |
---|---|
PSWTPath()
|
|
PSWTPath(java.awt.Shape aShape)
|
Method Summary | |
---|---|
java.awt.Shape |
cloneShape(java.awt.Shape aShape)
|
static PSWTPath |
createEllipse(float x,
float y,
float width,
float height)
|
static PSWTPath |
createPolyline(float[] xp,
float[] yp)
|
static PSWTPath |
createPolyline(java.awt.geom.Point2D[] points)
|
static PSWTPath |
createRectangle(float x,
float y,
float width,
float height)
|
static PSWTPath |
createRoundRectangle(float x,
float y,
float width,
float height,
float arcWidth,
float arcHeight)
|
java.awt.geom.Point2D |
getCenter()
|
java.awt.Paint |
getStrokePaint()
|
protected void |
internalUpdateBounds(double x,
double y,
double width,
double height)
Set the bounds of this path. |
boolean |
intersects(java.awt.geom.Rectangle2D aBounds)
|
protected void |
paint(edu.umd.cs.piccolo.util.PPaintContext paintContext)
|
void |
setPathToEllipse(float x,
float y,
float width,
float height)
|
void |
setPathToPolyline(float[] xp,
float[] yp)
|
void |
setPathToPolyline(java.awt.geom.Point2D[] points)
|
void |
setPathToRectangle(float x,
float y,
float width,
float height)
|
void |
setPathToRoundRectangle(float x,
float y,
float width,
float height,
float arcWidth,
float arcHeight)
|
void |
setShape(java.awt.Shape aShape)
|
void |
setStrokeColor(java.awt.Paint aPaint)
|
void |
updateBoundsFromPath()
|
void |
updateShapePoints(java.awt.Shape aShape)
|
Methods inherited from class edu.umd.cs.piccolo.PNode |
---|
addActivity, addAttribute, addChild, addChild, addChildren, addClientProperty, addInputEventListener, addPropertyChangeListener, addPropertyChangeListener, animateToBounds, animateToColor, animateToPositionScaleRotation, animateToRelativePosition, animateToTransform, animateToTransparency, animateTransformToBounds, centerBoundsOnPoint, centerFullBoundsOnPoint, clone, computeFullBounds, endResizeBounds, findIntersectingNodes, fireChildPropertyChange, firePropertyChange, fullIntersects, fullPaint, fullPick, getAllNodes, getAllNodes, getAttribute, getAttribute, getBooleanAttribute, getBounds, getBoundsChanged, getBoundsReference, getBoundsVolatile, getChild, getChildBoundsInvalid, getChildBoundsVolatile, getChildPaintInvalid, getChildrenCount, getChildrenIterator, getChildrenPickable, getChildrenReference, getClientProperties, getClientProperty, getClientPropertyKeysEnumeration, getClientPropertyKeysIterator, getDoubleAttribute, getFullBounds, getFullBoundsInvalid, getFullBoundsReference, getGlobalBounds, getGlobalFullBounds, getGlobalRotation, getGlobalScale, getGlobalToLocalTransform, getGlobalTranslation, getHeight, getInputEventListeners, getIntegerAttribute, getInverseTransform, getListenerList, getLocalToGlobalTransform, getName, getOccluded, getOffset, getPaint, getPaintInvalid, getParent, getPickable, getPropertyChangeParentMask, getRoot, getRotation, getScale, getTransform, getTransformReference, getTransparency, getUnionOfChildrenBounds, getVisible, getWidth, getX, getXOffset, getY, getYOffset, globalToLocal, globalToLocal, globalToLocal, indexOfChild, invalidateFullBounds, invalidateLayout, invalidatePaint, isAncestorOf, isDescendentOf, isDescendentOfRoot, isOpaque, layoutChildren, lerp, localToGlobal, localToGlobal, localToGlobal, localToParent, localToParent, localToParent, moveInBackOf, moveInFrontOf, moveToBack, moveToFront, offset, paintAfterChildren, paramString, parentBoundsChanged, parentToLocal, parentToLocal, parentToLocal, pick, pickAfterChildren, position, print, print, removeAllChildren, removeChild, removeChild, removeChildren, removeFromParent, removeInputEventListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaintFrom, reparent, replaceWith, resetBounds, rotate, rotateAboutPoint, rotateAboutPoint, rotateInPlace, scale, scaleAboutPoint, scaleAboutPoint, setBounds, setBounds, setBoundsChanged, setChildBoundsInvalid, setChildBoundsVolatile, setChildPaintInvalid, setChildrenPickable, setFullBoundsInvalid, setGlobalRotation, setGlobalScale, setGlobalTranslation, setHeight, setName, setOccluded, setOffset, setOffset, setPaint, setPaintInvalid, setParent, setPickable, setPropertyChangeParentMask, setRotation, setScale, setTransform, setTransparency, setVisible, setWidth, setX, setY, signalBoundsChanged, startResizeBounds, toImage, toImage, toImage, toImage, transformBy, translate, validateFullBounds, validateFullPaint |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String PROPERTY_SHAPE
boolean updatingBoundsFromPath
java.awt.Shape origShape
java.awt.Shape shape
edu.umd.cs.piccolo.util.PAffineTransform internalXForm
java.awt.geom.AffineTransform inverseXForm
double[] shapePts
Constructor Detail |
---|
public PSWTPath()
public PSWTPath(java.awt.Shape aShape)
Method Detail |
---|
public static PSWTPath createRectangle(float x, float y, float width, float height)
public static PSWTPath createRoundRectangle(float x, float y, float width, float height, float arcWidth, float arcHeight)
public static PSWTPath createEllipse(float x, float y, float width, float height)
public static PSWTPath createPolyline(java.awt.geom.Point2D[] points)
public static PSWTPath createPolyline(float[] xp, float[] yp)
public java.awt.Paint getStrokePaint()
public void setStrokeColor(java.awt.Paint aPaint)
protected void internalUpdateBounds(double x, double y, double width, double height)
internalUpdateBounds
in class edu.umd.cs.piccolo.PNode
public boolean intersects(java.awt.geom.Rectangle2D aBounds)
intersects
in class edu.umd.cs.piccolo.PNode
public void updateBoundsFromPath()
protected void paint(edu.umd.cs.piccolo.util.PPaintContext paintContext)
paint
in class edu.umd.cs.piccolo.PNode
public void setShape(java.awt.Shape aShape)
public void updateShapePoints(java.awt.Shape aShape)
public java.awt.Shape cloneShape(java.awt.Shape aShape)
public void setPathToRectangle(float x, float y, float width, float height)
public void setPathToRoundRectangle(float x, float y, float width, float height, float arcWidth, float arcHeight)
public void setPathToEllipse(float x, float y, float width, float height)
public void setPathToPolyline(java.awt.geom.Point2D[] points)
public void setPathToPolyline(float[] xp, float[] yp)
public java.awt.geom.Point2D getCenter()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |