Computer Science 252
Problem Solving with Java
Spring 2014, The College of Saint Rose
StdGraphicsDemo Demo
A working demo of StdGraphicsDemo will appear below. Click inside the applet to interact with it.
StdGraphicsDemo BlueJ Project
Click here to download a BlueJ project for StdGraphicsDemo.
StdGraphicsDemo Source Code
The Java source code for StdGraphicsDemo is below. Click on a file name to download it.
import java.awt.*; import java.awt.geom.*; import javax.swing.JApplet; /* * Example StdGraphicsDemo: from Bruce, Danyluk, Murtagh, Figure * D.3, p. 666. * * Demonstration of non-objectdraw graphics in Java. * * Slight modifications by * Jim Teresco, The College of Saint Rose, CSC 252, Spring 2014 * * $Id: StdGraphicsDemo.java 2351 2014-05-01 01:51:25Z terescoj $ */ public class StdGraphicsDemo extends JApplet { public void paint(Graphics g) { Graphics2D g2 = (Graphics2D) g; int gridWidth = getWidth()/4; int x = 5; int y = 7; int rectWidth = gridWidth - 2*x; int stringY = getHeight() - 3; int rectHeight = stringY - y - 20; // Draw a Rectangle2D.Double Rectangle2D.Double rect = new Rectangle2D.Double(x, y, rectWidth, rectHeight); g2.draw(rect); g2.drawString("Rectangle2D", x, stringY); x += gridWidth; // Draw Line2D.Double Line2D.Double line = new Line2D.Double(x, y+rectHeight-1, x+rectWidth, y); g2.draw(line); g2.drawString("Line2D", x, stringY); x += gridWidth; // Draw Ellipse2D.Double g2.draw(new Ellipse2D.Double(x, y, rectWidth, rectHeight)); g2.drawString("Ellipse2D", x, stringY); x += gridWidth; // a filled 2DRectangle.Double in red g2.setPaint(Color.red); rect.setFrame(x, y, rectWidth, rectHeight); g2.fill(rect); // and one more string g2.setPaint(Color.black); g2.drawString("Filled Rectangle2D", x, stringY); } }