|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.vistech.shapes.Shapes | +--com.vistech.shapes.Box
Represents an interactively drawable rectangle. Although the Box shape is a rectangle, it is drawn as a polygon in this implementation. The drawing of a rectangle requires the upper left hand corner coordinates as the starting position. So the drawRect will draw the rectangle from top to bottom and left to right. If the current position moves up or right with respect to the starting position, the rectangle will not be drawn because the width and height values are negative. So there are two options. 1. Switch the starting and current positions whenever the rectangle is drawn from bottom to top or right to left. 2. Use the drawPolygon method. We chose the second option because it involved less programming.
Field Summary | |
protected int[] |
xp
xp the x coordinates of the Box corners |
protected int[] |
yp
yp the y coordinates of the Box corners |
Fields inherited from class com.vistech.shapes.Shapes |
basicStroke, cur, drawingColor, fillColor, fillOn, font, path, shapeCount, smallRectsOn, st |
Fields inherited from interface com.vistech.shapes.Drawable |
ANNOTEXT, ARROW, BOX, CUBIC_CURVE, CURVE, DOUBLE_HEADED_ARROW, ELLIPSE, LINE, NONE, POLYGON |
Constructor Summary | |
Box()
|
Method Summary | |
boolean |
contains(java.awt.Graphics2D g,
int x,
int y)
Vhecks whether the specified point contained in the shape. |
void |
draw(java.awt.Graphics2D g)
Draws the shape permanently, which happens when the mouse is released. |
void |
drawInteractive(java.awt.Graphics2D g)
Draws interactively on a Graphics context g. |
void |
drawPolygon(java.awt.Graphics2D g,
int[] x,
int[] y)
Draws the box with the specified vertices. |
void |
drawSmallRects(java.awt.Graphics2D g)
Draws small rectangle at the shape corners to indicate that the shape is active. |
void |
erase(java.awt.Graphics2D g)
Erases the box |
void |
fill(java.awt.Graphics2D g,
java.awt.Color color)
Fills with a given color. |
void |
fillPolygon(java.awt.Graphics2D g,
int[] x,
int[] y)
Fills the box. |
void |
init(int x,
int y)
Initializes the Box parameters. |
void |
move(java.awt.Graphics2D g,
int diffx,
int diffy)
Moves the shape by a specified displacement. |
void |
setCurrentPosition(java.awt.Point cp)
Sets the current position. |
Methods inherited from class com.vistech.shapes.Shapes |
contains, copy, getCurrentPosition, getDrawingColor, getFillColor, getFillOn, getFont, getGeneralPath, getShapeCount, getSmallRectsOn, getStartPosition, getStroke, setDrawingColor, setFillColor, setFillOn, setFont, setGeneralPath, setShapeCount, setSmallRectsOn, setStartPosition, setStroke |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected int[] xp
protected int[] yp
Constructor Detail |
public Box()
Method Detail |
public void init(int x, int y)
init
in interface Drawable
init
in class Shapes
x
- the x coordinate of the starting position.y
- the y coordinate of the starting poistion.public void setCurrentPosition(java.awt.Point cp)
setCurrentPosition
in interface Drawable
setCurrentPosition
in class Shapes
x
- the x coordinate of the current position.y
- the y coordinate of the current poistion.public void drawInteractive(java.awt.Graphics2D g)
drawInteractive
in interface Drawable
g
- the graphics object on which the shape is to be drawn.public void draw(java.awt.Graphics2D g)
Drawable
draw
in interface Drawable
com.vistech.shapes.Drawable
g
- the graphcs context on which the shape is drawn.public void move(java.awt.Graphics2D g, int diffx, int diffy)
Drawable
move
in interface Drawable
com.vistech.shapes.Drawable
x
- the displacement.y
- the displacement.public void erase(java.awt.Graphics2D g)
erase
in interface Drawable
g
- the graphics object on which the shape is drawn.public void fill(java.awt.Graphics2D g, java.awt.Color color)
fill
in interface Fillable
g
- the graphics object on which the shape is to be drawn.color
- the filling color.public boolean contains(java.awt.Graphics2D g, int x, int y)
Shapes
contains
in class Shapes
com.vistech.shapes.Shapes
g
- the graphics context on which the shape was drawn.x
- the coordinate of the point that is being checked for containment.y
- the coordinate of the point that is being checked for containment.public void drawSmallRects(java.awt.Graphics2D g)
Shapes
drawSmallRects
in class Shapes
com.vistech.shapes.Shapes
g
- the graphics context on which the shape was drawn.public void drawPolygon(java.awt.Graphics2D g, int[] x, int[] y)
g
- the graphics object on which the shape is to be drawn.x
- an array of x coordinates.y
- an array of y coordinates.public void fillPolygon(java.awt.Graphics2D g, int[] x, int[] y)
g
- the graphics object on which the shape is to be drawn.x
- an array of x coordinates.y
- an array of y coordinates.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |