ObjectDraw
public final class Draw
| Field Summary | |
|---|---|
static java.awt.Color |
BLACK
|
static java.awt.Color |
BLUE
|
static java.awt.Color |
BOOK_BLUE
Shade of blue used in Introduction to Programming in Java. |
static java.awt.Color |
BOOK_RED
Shade of red used in Algorithms 4th edition. |
static java.awt.Color |
CYAN
|
static java.awt.Color |
DARK_GRAY
|
static java.awt.Color |
GRAY
|
static java.awt.Color |
GREEN
|
static java.awt.Color |
LIGHT_GRAY
|
static java.awt.Color |
MAGENTA
|
static java.awt.Color |
ORANGE
|
static java.awt.Color |
PINK
|
static java.awt.Color |
RED
|
static java.awt.Color |
WHITE
|
static java.awt.Color |
YELLOW
|
| Constructor Summary | |
|---|---|
Draw()
Create an empty drawing object. |
|
Draw(String name)
Create an empty drawing object with the given name. |
|
| Method Summary | |
|---|---|
void |
actionPerformed(java.awt.event.ActionEvent e)
This method cannot be called directly. |
void |
addListener(DrawListener listener)
Event-based interactions. |
void |
arc(double x,
double y,
double r,
double angle1,
double angle2)
Draw an arc of radius r, centered on (x, y), from angle1 to angle2 (in degrees). |
void |
circle(double x,
double y,
double r)
Draw a circle of radius r, centered on (x, y). |
void |
clear()
Clear the screen to the default color (white). |
void |
clear(java.awt.Color color)
Clear the screen to the given color. |
void |
ellipse(double x,
double y,
double semiMajorAxis,
double semiMinorAxis)
Draw an ellipse with given semimajor and semiminor axes, centered on (x, y). |
void |
filledCircle(double x,
double y,
double r)
Draw filled circle of radius r, centered on (x, y). |
void |
filledEllipse(double x,
double y,
double semiMajorAxis,
double semiMinorAxis)
Draw an ellipse with given semimajor and semiminor axes, centered on (x, y). |
void |
filledPolygon(double[] x,
double[] y)
Draw a filled polygon with the given (x[i], y[i]) coordinates. |
void |
filledRectangle(double x,
double y,
double halfWidth,
double halfHeight)
Draw a filled rectangle of given half width and half height, centered on (x, y). |
void |
filledSquare(double x,
double y,
double r)
Draw a filled square of side length 2r, centered on (x, y). |
java.awt.Font |
getFont()
Get the current font. |
java.awt.Color |
getPenColor()
Get the current pen color. |
double |
getPenRadius()
Get the current pen radius. |
boolean |
hasNextKeyTyped()
Has the user typed a key? |
void |
keyPressed(java.awt.event.KeyEvent e)
This method cannot be called directly. |
void |
keyReleased(java.awt.event.KeyEvent e)
This method cannot be called directly. |
void |
keyTyped(java.awt.event.KeyEvent e)
This method cannot be called directly. |
void |
line(double x0,
double y0,
double x1,
double y1)
Draw a line from (x0, y0) to (x1, y1). |
static void |
main(String[] args)
Test client. |
void |
mouseClicked(java.awt.event.MouseEvent e)
This method cannot be called directly. |
void |
mouseDragged(java.awt.event.MouseEvent e)
This method cannot be called directly. |
void |
mouseEntered(java.awt.event.MouseEvent e)
This method cannot be called directly. |
void |
mouseExited(java.awt.event.MouseEvent e)
This method cannot be called directly. |
void |
mouseMoved(java.awt.event.MouseEvent e)
This method cannot be called directly. |
boolean |
mousePressed()
Is the mouse being pressed? |
void |
mousePressed(java.awt.event.MouseEvent e)
This method cannot be called directly. |
void |
mouseReleased(java.awt.event.MouseEvent e)
This method cannot be called directly. |
double |
mouseX()
What is the x-coordinate of the mouse? |
double |
mouseY()
What is the y-coordinate of the mouse? |
char |
nextKeyTyped()
What is the next key that was typed by the user? |
void |
picture(double x,
double y,
String s)
Draw picture (gif, jpg, or png) centered on (x, y). |
void |
picture(double x,
double y,
String s,
double degrees)
Draw picture (gif, jpg, or png) centered on (x, y), rotated given number of degrees |
void |
picture(double x,
double y,
String s,
double w,
double h)
Draw picture (gif, jpg, or png) centered on (x, y), rescaled to w-by-h. |
void |
picture(double x,
double y,
String s,
double w,
double h,
double degrees)
Draw picture (gif, jpg, or png) centered on (x, y), rotated given number of degrees, rescaled to w-by-h. |
void |
point(double x,
double y)
Draw a point at (x, y). |
void |
polygon(double[] x,
double[] y)
Draw a polygon with the given (x[i], y[i]) coordinates. |
void |
rectangle(double x,
double y,
double halfWidth,
double halfHeight)
Draw a rectangle of given half width and half height, centered on (x, y). |
void |
save(String filename)
Save to file - suffix must be png, jpg, or gif. |
void |
setCanvasSize(int w,
int h)
Set the window size to w-by-h pixels. |
void |
setFont()
Set the font to the default font (sans serif, 16 point). |
void |
setFont(java.awt.Font f)
Set the font to the given value. |
void |
setLocationOnScreen(int x,
int y)
Set the upper-left hand corner of the drawing window to be (x, y), where (0, 0) is upper left. |
void |
setPenColor()
Set the pen color to the default color (black). |
void |
setPenColor(java.awt.Color color)
Set the pen color to the given color. |
void |
setPenRadius()
Set the pen size to the default (.002). |
void |
setPenRadius(double r)
Set the radius of the pen to the given size. |
void |
setXscale()
Set the x-scale to be the default (between 0.0 and 1.0). |
void |
setXscale(double min,
double max)
Set the x-scale (a 10% border is added to the values) |
void |
setYscale()
Set the y-scale to be the default (between 0.0 and 1.0). |
void |
setYscale(double min,
double max)
Set the y-scale (a 10% border is added to the values). |
void |
show()
Display on-screen and turn off animation mode: subsequent calls to drawing methods such as line(), circle(), and square() will be displayed on screen when called. |
void |
show(int t)
Display on screen, pause for t milliseconds, and turn on animation mode: subsequent calls to drawing methods such as line(), circle(), and square() will not be displayed on screen until the next call to show(). |
void |
square(double x,
double y,
double r)
Draw a square of side length 2r, centered on (x, y). |
void |
text(double x,
double y,
String s)
Write the given text string in the current font, centered on (x, y). |
void |
text(double x,
double y,
String s,
double degrees)
Write the given text string in the current font, centered on (x, y) and rotated by the specified number of degrees |
void |
textLeft(double x,
double y,
String s)
Write the given text string in the current font, left-aligned at (x, y). |
void |
xorOff()
|
void |
xorOn()
|
| Methods inherited from class Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.awt.Color BLACK
public static final java.awt.Color BLUE
public static final java.awt.Color CYAN
public static final java.awt.Color DARK_GRAY
public static final java.awt.Color GRAY
public static final java.awt.Color GREEN
public static final java.awt.Color LIGHT_GRAY
public static final java.awt.Color MAGENTA
public static final java.awt.Color ORANGE
public static final java.awt.Color PINK
public static final java.awt.Color RED
public static final java.awt.Color WHITE
public static final java.awt.Color YELLOW
public static final java.awt.Color BOOK_BLUE
public static final java.awt.Color BOOK_RED
| Constructor Detail |
|---|
public Draw(String name)
name - the title of the drawing window.public Draw()
| Method Detail |
|---|
public void setLocationOnScreen(int x,
int y)
x - the number of pixels from the lefty - the number of pixels from the top
a - RunTimeException if the width or height is 0 or negative
public void setCanvasSize(int w,
int h)
w - the width as a number of pixelsh - the height as a number of pixels
a - RunTimeException if the width or height is 0 or negativepublic void setXscale()
public void setYscale()
public void setXscale(double min,
double max)
min - the minimum value of the x-scalemax - the maximum value of the x-scale
public void setYscale(double min,
double max)
min - the minimum value of the y-scalemax - the maximum value of the y-scalepublic void clear()
public void clear(java.awt.Color color)
color - the Color to make the backgroundpublic double getPenRadius()
public void setPenRadius()
public void setPenRadius(double r)
r - the radius of the pen
RuntimeException - if r is negativepublic java.awt.Color getPenColor()
public void setPenColor()
public void setPenColor(java.awt.Color color)
color - the Color to make the penpublic void xorOn()
public void xorOff()
public java.awt.Font getFont()
public void setFont()
public void setFont(java.awt.Font f)
f - the font to make text
public void line(double x0,
double y0,
double x1,
double y1)
x0 - the x-coordinate of the starting pointy0 - the y-coordinate of the starting pointx1 - the x-coordinate of the destination pointy1 - the y-coordinate of the destination point
public void point(double x,
double y)
x - the x-coordinate of the pointy - the y-coordinate of the point
public void circle(double x,
double y,
double r)
x - the x-coordinate of the center of the circley - the y-coordinate of the center of the circler - the radius of the circle
RuntimeException - if the radius of the circle is negative
public void filledCircle(double x,
double y,
double r)
x - the x-coordinate of the center of the circley - the y-coordinate of the center of the circler - the radius of the circle
RuntimeException - if the radius of the circle is negative
public void ellipse(double x,
double y,
double semiMajorAxis,
double semiMinorAxis)
x - the x-coordinate of the center of the ellipsey - the y-coordinate of the center of the ellipsesemiMajorAxis - is the semimajor axis of the ellipsesemiMinorAxis - is the semiminor axis of the ellipse
RuntimeException - if either of the axes are negative
public void filledEllipse(double x,
double y,
double semiMajorAxis,
double semiMinorAxis)
x - the x-coordinate of the center of the ellipsey - the y-coordinate of the center of the ellipsesemiMajorAxis - is the semimajor axis of the ellipsesemiMinorAxis - is the semiminor axis of the ellipse
RuntimeException - if either of the axes are negative
public void arc(double x,
double y,
double r,
double angle1,
double angle2)
x - the x-coordinate of the center of the circley - the y-coordinate of the center of the circler - the radius of the circleangle1 - the starting angle. 0 would mean an arc beginning at 3 o'clock.angle2 - the angle at the end of the arc. For example, if
you want a 90 degree arc, then angle2 should be angle1 + 90.
RuntimeException - if the radius of the circle is negative
public void square(double x,
double y,
double r)
x - the x-coordinate of the center of the squarey - the y-coordinate of the center of the squarer - radius is half the length of any side of the square
RuntimeException - if r is negative
public void filledSquare(double x,
double y,
double r)
x - the x-coordinate of the center of the squarey - the y-coordinate of the center of the squarer - radius is half the length of any side of the square
RuntimeException - if r is negative
public void rectangle(double x,
double y,
double halfWidth,
double halfHeight)
x - the x-coordinate of the center of the rectangley - the y-coordinate of the center of the rectanglehalfWidth - is half the width of the rectanglehalfHeight - is half the height of the rectangle
RuntimeException - if halfWidth or halfHeight is negative
public void filledRectangle(double x,
double y,
double halfWidth,
double halfHeight)
x - the x-coordinate of the center of the rectangley - the y-coordinate of the center of the rectanglehalfWidth - is half the width of the rectanglehalfHeight - is half the height of the rectangle
RuntimeException - if halfWidth or halfHeight is negative
public void polygon(double[] x,
double[] y)
x - an array of all the x-coordindates of the polygony - an array of all the y-coordindates of the polygon
public void filledPolygon(double[] x,
double[] y)
x - an array of all the x-coordindates of the polygony - an array of all the y-coordindates of the polygon
public void picture(double x,
double y,
String s)
x - the center x-coordinate of the imagey - the center y-coordinate of the images - the name of the image/picture, e.g., "ball.gif"
RuntimeException - if the image is corrupt
public void picture(double x,
double y,
String s,
double degrees)
x - the center x-coordinate of the imagey - the center y-coordinate of the images - the name of the image/picture, e.g., "ball.gif"degrees - is the number of degrees to rotate counterclockwise
RuntimeException - if the image is corrupt
public void picture(double x,
double y,
String s,
double w,
double h)
x - the center x coordinate of the imagey - the center y coordinate of the images - the name of the image/picture, e.g., "ball.gif"w - the width of the imageh - the height of the image
RuntimeException - if the image is corrupt
public void picture(double x,
double y,
String s,
double w,
double h,
double degrees)
x - the center x-coordinate of the imagey - the center y-coordinate of the images - the name of the image/picture, e.g., "ball.gif"w - the width of the imageh - the height of the imagedegrees - is the number of degrees to rotate counterclockwise
RuntimeException - if the image is corrupt
public void text(double x,
double y,
String s)
x - the center x-coordinate of the texty - the center y-coordinate of the texts - the text
public void text(double x,
double y,
String s,
double degrees)
x - the center x-coordinate of the texty - the center y-coordinate of the texts - the textdegrees - is the number of degrees to rotate counterclockwise
public void textLeft(double x,
double y,
String s)
x - the x-coordinate of the texty - the y-coordinate of the texts - the textpublic void show(int t)
t - number of millisecondspublic void show()
public void save(String filename)
filename - the name of the file with one of the required suffixespublic void actionPerformed(java.awt.event.ActionEvent e)
actionPerformed in interface java.awt.event.ActionListenerpublic void addListener(DrawListener listener)
public boolean mousePressed()
public double mouseX()
public double mouseY()
public void mouseClicked(java.awt.event.MouseEvent e)
mouseClicked in interface java.awt.event.MouseListenerpublic void mouseEntered(java.awt.event.MouseEvent e)
mouseEntered in interface java.awt.event.MouseListenerpublic void mouseExited(java.awt.event.MouseEvent e)
mouseExited in interface java.awt.event.MouseListenerpublic void mousePressed(java.awt.event.MouseEvent e)
mousePressed in interface java.awt.event.MouseListenerpublic void mouseReleased(java.awt.event.MouseEvent e)
mouseReleased in interface java.awt.event.MouseListenerpublic void mouseDragged(java.awt.event.MouseEvent e)
mouseDragged in interface java.awt.event.MouseMotionListenerpublic void mouseMoved(java.awt.event.MouseEvent e)
mouseMoved in interface java.awt.event.MouseMotionListenerpublic boolean hasNextKeyTyped()
public char nextKeyTyped()
public void keyTyped(java.awt.event.KeyEvent e)
keyTyped in interface java.awt.event.KeyListenerpublic void keyPressed(java.awt.event.KeyEvent e)
keyPressed in interface java.awt.event.KeyListenerpublic void keyReleased(java.awt.event.KeyEvent e)
keyReleased in interface java.awt.event.KeyListenerpublic static void main(String[] args)