edu.umd.cs.piccolox.nodes
Class P3DRect

java.lang.Object
  extended by edu.umd.cs.piccolo.PNode
      extended by edu.umd.cs.piccolox.nodes.P3DRect
All Implemented Interfaces:
Printable, Serializable, Cloneable

public class P3DRect
extends PNode

This is a simple node that draws a "3D" rectangle within the bounds of the node. Drawing a 3D rectangle in a zooming environment is a little tricky because if you just use the regular (Java2D) 3D rectangle, the 3D borders get scaled, and that is ugly. This version always draws the 3D border at fixed 2 pixel width.

Author:
Ben Bederson
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class edu.umd.cs.piccolo.PNode
PNode.PSceneGraphDelegate
 
Field Summary
 
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
P3DRect()
          Constructs a simple P3DRect with empty bounds and a black stroke.
P3DRect(double x, double y, double width, double height)
          Constructs a P3DRect with the bounds provided.
P3DRect(Rectangle2D bounds)
          Constructs a P3DRect with the provided bounds.
 
Method Summary
 boolean getRaised()
          Returns whether this P3DRect is drawn as raised.
static void main(String[] args)
          Deprecated. since it has been moved to P3DRectExample.
protected  void paint(PPaintContext paintContext)
          Paints this rectangle with shaded edges.
 void setPaint(Paint newPaint)
          Changes the paint that will be used to draw this rectangle.
 void setRaised(boolean raised)
          Sets whether this rectangle is raised off the canvas.
 
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, internalUpdateBounds, intersects, 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, 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
 

Constructor Detail

P3DRect

public P3DRect()
Constructs a simple P3DRect with empty bounds and a black stroke.


P3DRect

public P3DRect(Rectangle2D bounds)
Constructs a P3DRect with the provided bounds.

Parameters:
bounds - bounds to assigned to the P3DRect

P3DRect

public P3DRect(double x,
               double y,
               double width,
               double height)
Constructs a P3DRect with the bounds provided.

Parameters:
x - left of bounds
y - top of bounds
width - width of bounds
height - height of bounds
Method Detail

setRaised

public void setRaised(boolean raised)
Sets whether this rectangle is raised off the canvas. If set to false, this rectangle will appear recessed into the canvas.

Parameters:
raised - whether the rectangle should be painted as raised or recessed

getRaised

public boolean getRaised()
Returns whether this P3DRect is drawn as raised.

Returns:
true if raised

paint

protected void paint(PPaintContext paintContext)
Paints this rectangle with shaded edges. Making it appear to stand out of the page as normal 3D buttons do.

Overrides:
paint in class PNode
Parameters:
paintContext - context in which the paiting should occur

setPaint

public void setPaint(Paint newPaint)
Changes the paint that will be used to draw this rectangle. This paint is used to shade the edges of the rectangle.

Overrides:
setPaint in class PNode
Parameters:
newPaint - the color to use for painting this rectangle

main

public static void main(String[] args)
Deprecated. since it has been moved to P3DRectExample.

TODO can we remove this?

Parameters:
args - Command line arguments


Copyright © 1995-2010 Piccolo2D. All Rights Reserved.