Class Expo

java.lang.Object
  extended by Expo

public class Expo
extends java.lang.Object

EXPO CLASS VERSION 07/16/2008

The concept and implementation of the original set of Expo class methods was
created by John L. M. Schram (the Son), who is called John Schram.
The Expo class was created to teach programming skills to students in introductory
computer science courses. Use of the Expo class eliminates many program steps that
are tedious and frustrating for beginning students. Program input is simplified and
graphics commands are more intuitive. Many additional graphics commands are added to
allow for interesting displays with minimal effort.

Since the creation of the initial bulk of the Expo class, John L. A. Schram (the father),
who is called Leon Schram, has added some additional methods.
Both John Schram and Leon Schram are computer science teachers at John Paul II High School
in Plano, Texas.

The Expo class is a work in progress and you can expect the Schrams to add additional
methods in time to come. The version date will indicate if you have the latest update.


25 constant colors are built into the Expo class and are listed below.
red, green, blue, orange, cyan, magenta, yellow, gray, lightGray, darkGray,
pink, black, white, brown, purple, violet, lightRed, darkRed, lightGreen,
darkGreen, lightBlue, darkBlue, gold, tan, and turquoise.


This code is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation.

This code is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.


Constructor Summary
Expo()
           
 
Method Summary
static void center(java.lang.String str)
          Displays centered text on an 80 column text screen.
static double cube(double number)
          Returns the "cube" of number, which is number raised to the 3rd power.

Example:
System.out.println(Expo.cube(2));
This will display 8.0
static double cubeRoot(double number)
          Returns the cubeRoot (3rd root) of number.
static void delay(int n)
          Pauses the output for a specified number of milliseconds (1/1000ths of a second).
static void displayGUI(boolean temp)
          Displays a boolean (true or false) value in a GUI window;
The window will stay on the screen until the user clicks "OK".
static void displayGUI(char temp)
          Displays a char in a GUI window;
The window will stay on the screen until the user clicks "OK".
static void displayGUI(double temp)
          Displays a double (real number) in a GUI window;
The window will stay on the screen until the user clicks "OK".
static void displayGUI(int temp)
          Displays an int (integer) in a GUI window;
The window will stay on the screen until the user clicks "OK".
static void displayGUI(java.lang.String text)
          Displays a String in a GUI window;
The window will stay on the screen until the user clicks "OK".
static void drawArc(java.awt.Graphics g, int centerX, int centerY, int xRadius, int yRadius, int start, int finish)
          Draws and arc which looks like a curve.
static void drawBurst(java.awt.Graphics g, int centerX, int centerY, int radius, int numLines)
          Draws a certain number of lines (numLines) in a burst like pattern.
static void drawCircle(java.awt.Graphics g, int centerX, int centerY, int radius)
          Draws an open circle.
static void drawGrid(java.awt.Graphics g, int w, int h, int s)
          Draws a Cartesian grid with X-axis and Y-axis.
static void drawLine(java.awt.Graphics g, int x1, int y1, int x2, int y2)
          Draws the line segment connecting coordinates x1,y2 and x2,y2.
static void drawOval(java.awt.Graphics g, int centerX, int centerY, int hRadius, int vRadius)
          Draws an open oval.
static void drawPixel(java.awt.Graphics g, int x, int y)
          Draws a single pixel at the specified x,y location.
static void drawPoint(java.awt.Graphics g, int x, int y)
          Draws a 3 pixel X 3 pixel "point" whose center is at the specified x,y location.
static void drawQuad(java.awt.Graphics g, int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4)
          Draws an open irregular quadrilateral using the four sets of provided coordinates.
static void drawRandomBurst(java.awt.Graphics g, int centerX, int centerY, int radius, int numLines)
          Draws a certain number of random lines in a burst like pattern.
static void drawRectangle(java.awt.Graphics g, int x1, int y1, int x2, int y2)
          Draws an open rectangle.
static void drawRegularPolygon(java.awt.Graphics g, int centerX, int centerY, int radius, int sides)
          Draws a regular polygon with a specified number of sides.
static void drawRoundedRectangle(java.awt.Graphics g, int x1, int y1, int x2, int y2, int radius)
          Draws an open rectangle with rounded corners.
static void drawSpiral(java.awt.Graphics g, int centerX, int centerY, int radius)
          Draws a spiral.
static void drawStar(java.awt.Graphics g, int centerX, int centerY, int radius, int points)
          Draws a star with a specified number of points.
static void drawThickArc(java.awt.Graphics g, int centerX, int centerY, int xRadius, int yRadius, int start, int finish, int thickness)
          Draws a "thick" arc which will look like a thick curve.
static void drawThickBurst(java.awt.Graphics g, int centerX, int centerY, int radius, int numLines, int thickness)
          Draws a certain number of "thick" lines in a burst like pattern.
static void drawThickCircle(java.awt.Graphics g, int centerX, int centerY, int radius, int thickness)
          Draws a "thick" circle;
The user specifies the x,y coordinate of the center of the circle as well as the radius value;
The thickness is specified in the last parameter.
static void drawThickLine(java.awt.Graphics g, int x1, int y1, int x2, int y2, int thickness)
          Draws a "thick" line segment connecting coordinates x1,y2 and x2,y2.
static void drawThickOval(java.awt.Graphics g, int centerX, int centerY, int hRadius, int vRadius, int thickness)
          Draws a "thick" oval.
static void drawThickRandomBurst(java.awt.Graphics g, int centerX, int centerY, int radius, int numLines, int thickness)
          Draws a certain number of random "thick" lines in a burst like pattern.
static void drawThickRectangle(java.awt.Graphics g, int x1, int y1, int x2, int y2, int thickness)
          Draws a "thick" open rectangle.
static void drawThickRegularPolygon(java.awt.Graphics g, int centerX, int centerY, int radius, int sides, int thickness)
          Draws a "thick" regular polygon with a specified number of sides.
static void drawThickRoundedRectangle(java.awt.Graphics g, int x1, int y1, int x2, int y2, int radius, int thickness)
          Draws an "thick" open rectangle with rounded corners.
static void drawThickSpiral(java.awt.Graphics g, int centerX, int centerY, int radius, int thickness)
          Draws a "thick" spiral.
static void drawThickStar(java.awt.Graphics g, int centerX, int centerY, int radius, int points, int thickness)
          Draws a "thick" star with a specified number of points.
static void drawTriangle(java.awt.Graphics g, int x1, int y1, int x2, int y2, int x3, int y3)
          Draws an open irregular triangle using the three sets of provided coordinates.
static boolean enterBoolean()
          Allows input of a boolean (true or false) from the keyboard in a text window.
static boolean enterBooleanGUI(java.lang.String prompt)
          Allows input of a boolean (true or false) from the keyboard using a GUI window.
static char enterChar()
          Allows input of a char from the keyboard in a text window.
static char enterCharGUI(java.lang.String prompt)
          Allows input of a char from the keyboard using a GUI window.
static double enterDouble()
          Allows input of a double (real number) from the keyboard in a text window.
static double enterDoubleGUI(java.lang.String prompt)
          Allows input of a double (real number) from the keyboard using a GUI window.
static int enterInt()
          Allows input of an int (integer) from the keyboard in a text window.
static int enterIntGUI(java.lang.String prompt)
          Allows GUI input of an int (integer) from the keyboard.
static java.lang.String enterString()
          Allows input of a String from the keyboard in a text window.
static java.lang.String enterStringGUI(java.lang.String prompt)
          Allows input of a String from the keyboard using a GUI window.
static void fillArc(java.awt.Graphics g, int centerX, int centerY, int xRadius, int yRadius, int start, int finish)
          Draws a "solid" arc which will look either like a pie wedge or Pac-man.
static void fillCircle(java.awt.Graphics g, int centerX, int centerY, int radius)
          Draws a solid "filled in" circle.
static void fillOval(java.awt.Graphics g, int centerX, int centerY, int hRadius, int vRadius)
          Draws a solid "filled in" oval.
static void fillQuad(java.awt.Graphics g, int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4)
          Draws an solid "filled-in" irregular quadrilateral using the four sets of provided coordinates.
static void fillRectangle(java.awt.Graphics g, int x1, int y1, int x2, int y2)
          Draws a solid "filled in" rectangle.
static void fillRegularPolygon(java.awt.Graphics g, int centerX, int centerY, int radius, int sides)
          Draws a solid "filled in" polygon with a specified number of sides.
static void fillRoundedRectangle(java.awt.Graphics g, int x1, int y1, int x2, int y2, int radius)
          Draws a solid "filled in" rectangle with rounded corners.
static void fillStar(java.awt.Graphics g, int centerX, int centerY, int radius, int points)
          Draws a solid "filled in" star with a specified number of points.
static void fillTriangle(java.awt.Graphics g, int x1, int y1, int x2, int y2, int x3, int y3)
          Draws an solid "filled-in" irregular triangle using the three sets of provided coordinates.
static java.awt.Color getRandomColor()
          Returns a random Color object which can be any of the 16,000,000+ possible colors.
static void graphLine(java.awt.Graphics g, double mathX1, double mathY1, double mathX2, double mathY2)
          Draws a line across the Cartesian grid.
static void graphPoint(java.awt.Graphics g, double mathX, double mathY)
          Plots a point on the Cartesian grid.
static void graphQuadratic(java.awt.Graphics g, double a, double b, double c)
          Draws a parabala on the Cartesian grid.
static void pause()
          Pauses the output and waits for the user to press the [enter] key.
static int random(int min, int max)
          Returns a "true" random integer in the [min..max] range, inclusive.
static void rightJustify(java.lang.String str)
          Displays right-justified text on an 80 column text screen.
static double root(double number, double x)
          Returns the xth root of number.
static int seedRandom(int min, int max)
          Returns a "seeded" random integer in the [min..max] range, inclusive.
static void setBackground(java.awt.Graphics g, java.awt.Color bgColor)
          Sets the entire background to a single color.
static void setColor(java.awt.Graphics g, java.awt.Color bgColor)
          Allows the user to change the color, using a Color object.
static void setColor(java.awt.Graphics g, int colorNum)
          Allows the user to change to one of 15 predefined colors using a single integer.
static void setColor(java.awt.Graphics g, int red, int green, int blue)
          Allows the user to change the color, using 3 int values representing the amount of red, green and blue.
static void setRandomColor(java.awt.Graphics g)
          Sets the current color to a random color value which can be any of the 16,000,000+ possible colors.
static void skip(int n)
          Utility method that will skip a certain number of blank lines on a text output screen.
static java.lang.String spaces(int n)
          Returns a certain number of spaces.
static double square(double number)
          Returns the "square" number, which is the number multiplied times itself.

Example:
System.out.println(Expo.square(5));
This will display 25.0
static void startSeed(double s)
          Provides the initial value of the "seeded" random integers.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Expo

public Expo()
Method Detail

square

public static double square(double number)
Returns the "square" number, which is the number multiplied times itself.

Example:
System.out.println(Expo.square(5));
This will display 25.0


cube

public static double cube(double number)
Returns the "cube" of number, which is number raised to the 3rd power.

Example:
System.out.println(Expo.cube(2));
This will display 8.0


cubeRoot

public static double cubeRoot(double number)
Returns the cubeRoot (3rd root) of number.

Example:
System.out.println(Expo.cubeRoot(8));
This will display 2.0


root

public static double root(double number,
                          double x)
Returns the xth root of number.

Example:
System.out.println(Expo.root(1000,3));
This will display the 3rd root of 1000, which is 10.0

Preconditions: number > 0, root != 0


random

public static int random(int min,
                         int max)
Returns a "true" random integer in the [min..max] range, inclusive.


startSeed

public static void startSeed(double s)
Provides the initial value of the "seeded" random integers.


seedRandom

public static int seedRandom(int min,
                             int max)
Returns a "seeded" random integer in the [min..max] range, inclusive. The seed parameters insures that each new execution of the random set will generate the same sequence of "random" integers. Method startSeed must be called first before method seedRandom.


drawGrid

public static void drawGrid(java.awt.Graphics g,
                            int w,
                            int h,
                            int s)
Draws a Cartesian grid with X-axis and Y-axis.
The graph will be the size specified by w(width) and h(height).
The final parameter (s) indicates the spacing and effectively scales the graph.


graphPoint

public static void graphPoint(java.awt.Graphics g,
                              double mathX,
                              double mathY)
Plots a point on the Cartesian grid.
Precondition: The drawGrid method must be called first.


graphLine

public static void graphLine(java.awt.Graphics g,
                             double mathX1,
                             double mathY1,
                             double mathX2,
                             double mathY2)
Draws a line across the Cartesian grid.
The line will go through the 2 points specified in the parameters.
Precondition: The drawGrid method must be called first.


graphQuadratic

public static void graphQuadratic(java.awt.Graphics g,
                                  double a,
                                  double b,
                                  double c)
Draws a parabala on the Cartesian grid.
The parabola will represent the equation:
y = ax^2 + bx + c
a, b, & c correspond to the parameters of the same name.
Precondition: The drawGrid method must be called first.


skip

public static void skip(int n)
Utility method that will skip a certain number of blank lines on a text output screen.
This is used to space out text output.


center

public static void center(java.lang.String str)
Displays centered text on an 80 column text screen.


rightJustify

public static void rightJustify(java.lang.String str)
Displays right-justified text on an 80 column text screen.


spaces

public static java.lang.String spaces(int n)
Returns a certain number of spaces.
Useful when lining up output.


pause

public static void pause()
Pauses the output and waits for the user to press the [enter] key.


delay

public static void delay(int n)
Pauses the output for a specified number of milliseconds (1/1000ths of a second).

Examples:
Expo.delay(1000); // pause for 1 second
Expo.delay(2000); // pause for 2 seconds
Expo.delay(500); // pause for 1/2 of a second
Expo.delay(100); // pause for 1/10 of a second
Expo.delay(10); // pause for 1/100 of a second
Expo.delay(1); // pause for 1/1000 of a second


enterInt

public static int enterInt()
Allows input of an int (integer) from the keyboard in a text window.


enterDouble

public static double enterDouble()
Allows input of a double (real number) from the keyboard in a text window.


enterString

public static java.lang.String enterString()
Allows input of a String from the keyboard in a text window.


enterChar

public static char enterChar()
Allows input of a char from the keyboard in a text window.


enterBoolean

public static boolean enterBoolean()
Allows input of a boolean (true or false) from the keyboard in a text window.
The user can enter the word "true" or "false".
The method is not case sensitive. (True, trUE, TruE will all work)
The user can also enter T or F.
The user can also enter 1 for true and 0 for false.
Essentially, anything that does not begin with a 'T', 't' or '1' will be interpreted as "false".


enterIntGUI

public static int enterIntGUI(java.lang.String prompt)
Allows GUI input of an int (integer) from the keyboard.

Example:
int age = Expo.enterIntGUI("How old are you?");


enterDoubleGUI

public static double enterDoubleGUI(java.lang.String prompt)
Allows input of a double (real number) from the keyboard using a GUI window.
The String parameter "prompt" is a message that tells the user what he/she is suppose to enter.

Example:
double gpa = Expo.enterDoubleGUI("What is your gpa?");


enterStringGUI

public static java.lang.String enterStringGUI(java.lang.String prompt)
Allows input of a String from the keyboard using a GUI window.
The String parameter "prompt" is a message that tells the user what he/she is suppose to enter.

Example:
String name = Expo.enterStringGUI("What is your name?");


enterCharGUI

public static char enterCharGUI(java.lang.String prompt)
Allows input of a char from the keyboard using a GUI window.
The String parameter "prompt" is a message that tells the user what he/she is suppose to enter.

Example:
char mi = Expo.enterCharGUI("What is youe middle initial?");


enterBooleanGUI

public static boolean enterBooleanGUI(java.lang.String prompt)
Allows input of a boolean (true or false) from the keyboard using a GUI window.
The user can enter the word "true" or "false".
The method is not case sensitive. (True, trUE, TruE will all work)
The user can also enter T or F.
The user can also enter 1 for true and 0 for false.
Essentially, anything that does not begin with a 'T', 't' or '1' will be interpreted as "false".
The String parameter "prompt" is a message that tells the user what he/she is suppose to enter.

Example:
boolean voter = Expo.enterBooleanGUI("You are registered to vote. (Enter True or False)");


displayGUI

public static void displayGUI(java.lang.String text)
Displays a String in a GUI window;
The window will stay on the screen until the user clicks "OK".


displayGUI

public static void displayGUI(int temp)
Displays an int (integer) in a GUI window;
The window will stay on the screen until the user clicks "OK".


displayGUI

public static void displayGUI(double temp)
Displays a double (real number) in a GUI window;
The window will stay on the screen until the user clicks "OK".


displayGUI

public static void displayGUI(char temp)
Displays a char in a GUI window;
The window will stay on the screen until the user clicks "OK".


displayGUI

public static void displayGUI(boolean temp)
Displays a boolean (true or false) value in a GUI window;
The window will stay on the screen until the user clicks "OK".


setColor

public static void setColor(java.awt.Graphics g,
                            java.awt.Color bgColor)
Allows the user to change the color, using a Color object.


setColor

public static void setColor(java.awt.Graphics g,
                            int colorNum)
Allows the user to change to one of 15 predefined colors using a single integer.
This is especially useful in programs where you want to change from one color to a contrasting color quickly.
0 = black
1 = red
2 = green
3 = blue
4 = orange
5 = cyan
6 = magenta
7 = yellow
8 = gray
9 = pink
10 = purple
11 = brown
12 = violet
13 = gold
14 = turquoise
Any negative number will give you white.


setColor

public static void setColor(java.awt.Graphics g,
                            int red,
                            int green,
                            int blue)
Allows the user to change the color, using 3 int values representing the amount of red, green and blue.
Precondition: All 3 color values need to be between 0 and 255 inclusive.


getRandomColor

public static java.awt.Color getRandomColor()
Returns a random Color object which can be any of the 16,000,000+ possible colors.


setRandomColor

public static void setRandomColor(java.awt.Graphics g)
Sets the current color to a random color value which can be any of the 16,000,000+ possible colors.


setBackground

public static void setBackground(java.awt.Graphics g,
                                 java.awt.Color bgColor)
Sets the entire background to a single color.
Precondition: The applet window cannot be greater than 4800 X 3600 in size.


drawPixel

public static void drawPixel(java.awt.Graphics g,
                             int x,
                             int y)
Draws a single pixel at the specified x,y location.


drawPoint

public static void drawPoint(java.awt.Graphics g,
                             int x,
                             int y)
Draws a 3 pixel X 3 pixel "point" whose center is at the specified x,y location.


drawLine

public static void drawLine(java.awt.Graphics g,
                            int x1,
                            int y1,
                            int x2,
                            int y2)
Draws the line segment connecting coordinates x1,y2 and x2,y2.


drawCircle

public static void drawCircle(java.awt.Graphics g,
                              int centerX,
                              int centerY,
                              int radius)
Draws an open circle.
The user specifies the x,y coordinate of the center of the circle as well as the radius value.


drawOval

public static void drawOval(java.awt.Graphics g,
                            int centerX,
                            int centerY,
                            int hRadius,
                            int vRadius)
Draws an open oval.
The user specifies the x,y coordinate of the center of the oval as well as the horizontal and vertical radii values.


drawArc

public static void drawArc(java.awt.Graphics g,
                           int centerX,
                           int centerY,
                           int xRadius,
                           int yRadius,
                           int start,
                           int finish)
Draws and arc which looks like a curve.
An ARC is a "piece" of an OVAL.
The first 5 parameters (g and 4 ints) are the same as drawOval.
There are 2 additional parameters for the starting degree value and finishing degree of the arc.
0 degrees is at the 12:00 position and the degrees progress in a CLOCKWISE fashion.
(90 degrees is at 3:00, 180 degrees is at 6:00, 270 degrees is at 9:00, 360 degrees is back at 12:00).


drawTriangle

public static void drawTriangle(java.awt.Graphics g,
                                int x1,
                                int y1,
                                int x2,
                                int y2,
                                int x3,
                                int y3)
Draws an open irregular triangle using the three sets of provided coordinates.


drawQuad

public static void drawQuad(java.awt.Graphics g,
                            int x1,
                            int y1,
                            int x2,
                            int y2,
                            int x3,
                            int y3,
                            int x4,
                            int y4)
Draws an open irregular quadrilateral using the four sets of provided coordinates.


drawRectangle

public static void drawRectangle(java.awt.Graphics g,
                                 int x1,
                                 int y1,
                                 int x2,
                                 int y2)
Draws an open rectangle.
The upper-left-hand corner is specified by x1,y1 and the lower-right-hand corner is specified by x2, y2.


drawRoundedRectangle

public static void drawRoundedRectangle(java.awt.Graphics g,
                                        int x1,
                                        int y1,
                                        int x2,
                                        int y2,
                                        int radius)
Draws an open rectangle with rounded corners.
The first 5 parameters (g and 4 ints) are the same as drawRect.
The final parameter "radius" specifies the pixels used in the rounded corner.


drawSpiral

public static void drawSpiral(java.awt.Graphics g,
                              int centerX,
                              int centerY,
                              int radius)
Draws a spiral.
The center of the spiral is specified with the centerX,centerY parameters.
The radius parameter determines the size of the spiral.
It is actually the radius of the circle that the spiral would fit inside.


drawBurst

public static void drawBurst(java.awt.Graphics g,
                             int centerX,
                             int centerY,
                             int radius,
                             int numLines)
Draws a certain number of lines (numLines) in a burst like pattern.
The lines are evenly spaced and drawn from the center of a circle to its edge.
The size of the circle is specified by the radius parameter.


drawRandomBurst

public static void drawRandomBurst(java.awt.Graphics g,
                                   int centerX,
                                   int centerY,
                                   int radius,
                                   int numLines)
Draws a certain number of random lines in a burst like pattern.
The lines have random colors, random lengths and are drawn in random directions.
The parameters are the same as drawBurst.
Post Condition: The current graphics color will be changed to whatever was the color of the last line drawn.


drawRegularPolygon

public static void drawRegularPolygon(java.awt.Graphics g,
                                      int centerX,
                                      int centerY,
                                      int radius,
                                      int sides)
Draws a regular polygon with a specified number of sides.
The center of this polygon is specified by centerX,centerY and its size is specified by radius.
(As in the radius of the circle the regular polygon would fit inside)
Precondition: sides >= 3


drawStar

public static void drawStar(java.awt.Graphics g,
                            int centerX,
                            int centerY,
                            int radius,
                            int points)
Draws a star with a specified number of points.
The center of this star is specified by centerX,centerY and its size is specified by radius.
(As in the radius of the circle the star would fit inside)
Precondition: points >= 2


drawThickLine

public static void drawThickLine(java.awt.Graphics g,
                                 int x1,
                                 int y1,
                                 int x2,
                                 int y2,
                                 int thickness)
Draws a "thick" line segment connecting coordinates x1,y2 and x2,y2.
The thickness is specified in the last parameter.


drawThickCircle

public static void drawThickCircle(java.awt.Graphics g,
                                   int centerX,
                                   int centerY,
                                   int radius,
                                   int thickness)
Draws a "thick" circle;
The user specifies the x,y coordinate of the center of the circle as well as the radius value;
The thickness is specified in the last parameter.


drawThickOval

public static void drawThickOval(java.awt.Graphics g,
                                 int centerX,
                                 int centerY,
                                 int hRadius,
                                 int vRadius,
                                 int thickness)
Draws a "thick" oval.
The user specifies the x,y coordinate of the center of the oval as well as the horizontal and vertical radii values.
The thickness is specified in the last parameter.


drawThickArc

public static void drawThickArc(java.awt.Graphics g,
                                int centerX,
                                int centerY,
                                int xRadius,
                                int yRadius,
                                int start,
                                int finish,
                                int thickness)
Draws a "thick" arc which will look like a thick curve.
The parameters are the same as drawArc, except there is an extra parameter at the end for the thickness.


drawThickRectangle

public static void drawThickRectangle(java.awt.Graphics g,
                                      int x1,
                                      int y1,
                                      int x2,
                                      int y2,
                                      int thickness)
Draws a "thick" open rectangle.
The parameters are the same as drawRectangle, except there is an extra parameter at the end for the thickness.


drawThickRoundedRectangle

public static void drawThickRoundedRectangle(java.awt.Graphics g,
                                             int x1,
                                             int y1,
                                             int x2,
                                             int y2,
                                             int radius,
                                             int thickness)
Draws an "thick" open rectangle with rounded corners.
The parameters are the same as drawRoundedRectangle, except there is an extra parameter at the end for the thickness.


drawThickSpiral

public static void drawThickSpiral(java.awt.Graphics g,
                                   int centerX,
                                   int centerY,
                                   int radius,
                                   int thickness)
Draws a "thick" spiral.
The parameters are the same as drawSpiral, except there is an extra parameter at the end for the thickness.


drawThickBurst

public static void drawThickBurst(java.awt.Graphics g,
                                  int centerX,
                                  int centerY,
                                  int radius,
                                  int numLines,
                                  int thickness)
Draws a certain number of "thick" lines in a burst like pattern.
The parameters are the same as drawBurst, except there is an extra parameter at the end for the thickness.


drawThickRandomBurst

public static void drawThickRandomBurst(java.awt.Graphics g,
                                        int centerX,
                                        int centerY,
                                        int radius,
                                        int numLines,
                                        int thickness)
Draws a certain number of random "thick" lines in a burst like pattern.
The "thick" lines have random colors, random lengths and are drawn in random directions.
The parameters are the same as drawBurst, except there is an extra parameter at the end for the thickness.
Post Condition: The current graphics color will be changed to whatever was the color of the last line drawn.


drawThickRegularPolygon

public static void drawThickRegularPolygon(java.awt.Graphics g,
                                           int centerX,
                                           int centerY,
                                           int radius,
                                           int sides,
                                           int thickness)
Draws a "thick" regular polygon with a specified number of sides.
The first 5 parameters (g and 4 ints) are the same as drawRegularPolygon.
The thickness is specified in the last parameter.
Precondition: sides >= 3


drawThickStar

public static void drawThickStar(java.awt.Graphics g,
                                 int centerX,
                                 int centerY,
                                 int radius,
                                 int points,
                                 int thickness)
Draws a "thick" star with a specified number of points.
The first 5 parameters (g and 4 ints) are the same as drawStar.
The thickness is specified in the last parameter.
Precondition: points >= 2


fillCircle

public static void fillCircle(java.awt.Graphics g,
                              int centerX,
                              int centerY,
                              int radius)
Draws a solid "filled in" circle.
The user specifies the x,y coordinate of the center of the circle as well as the radius value.


fillOval

public static void fillOval(java.awt.Graphics g,
                            int centerX,
                            int centerY,
                            int hRadius,
                            int vRadius)
Draws a solid "filled in" oval.
The user specifies the x,y coordinate of the center of the oval as well as the horizontal and vertical radii values.


fillArc

public static void fillArc(java.awt.Graphics g,
                           int centerX,
                           int centerY,
                           int xRadius,
                           int yRadius,
                           int start,
                           int finish)
Draws a "solid" arc which will look either like a pie wedge or Pac-man.
The parameters are the same as drawArc.


fillTriangle

public static void fillTriangle(java.awt.Graphics g,
                                int x1,
                                int y1,
                                int x2,
                                int y2,
                                int x3,
                                int y3)
Draws an solid "filled-in" irregular triangle using the three sets of provided coordinates.


fillQuad

public static void fillQuad(java.awt.Graphics g,
                            int x1,
                            int y1,
                            int x2,
                            int y2,
                            int x3,
                            int y3,
                            int x4,
                            int y4)
Draws an solid "filled-in" irregular quadrilateral using the four sets of provided coordinates.


fillRectangle

public static void fillRectangle(java.awt.Graphics g,
                                 int x1,
                                 int y1,
                                 int x2,
                                 int y2)
Draws a solid "filled in" rectangle.
The parameters are the same as drawRectangle.


fillRoundedRectangle

public static void fillRoundedRectangle(java.awt.Graphics g,
                                        int x1,
                                        int y1,
                                        int x2,
                                        int y2,
                                        int radius)
Draws a solid "filled in" rectangle with rounded corners.
The parameters are the same as drawRoundedRectangle.


fillRegularPolygon

public static void fillRegularPolygon(java.awt.Graphics g,
                                      int centerX,
                                      int centerY,
                                      int radius,
                                      int sides)
Draws a solid "filled in" polygon with a specified number of sides.
The parameters are the same as drawRegularPolygon.
Precondition: sides >= 3


fillStar

public static void fillStar(java.awt.Graphics g,
                            int centerX,
                            int centerY,
                            int radius,
                            int points)
Draws a solid "filled in" star with a specified number of points.
The parameters are the same as drawStar.
Precondition: points >= 2