123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
-
- /**
- * This class represents a simple picture. You can draw the picture using
- * the draw method. But wait, there's more: being an electronic picture, it
- * can be changed. You can set it to black-and-white display and back to
- * colors (only after it's been drawn, of course).
- *
- * This class was written as an early example for teaching Java with BlueJ.
- *
- * @author Michael Kölling and David J. Barnes
- * @version 1.1 (24 May 2001)
- */
- public class Picture
- {
- private Square wall;
- private Square window;
- private Triangle roof;
- private Circle sun;
-
- /**
- * Constructor for objects of class Picture
- */
- public Picture()
- {
- // nothing to do... instance variables are automatically set to null
- }
-
- /**
- * Draw this picture.
- */
- public void draw()
- {
- wall = new Square();
- wall.moveVertical(80);
- wall.changeSize(100);
- wall.makeVisible();
-
- window = new Square();
- window.changeColor("black");
- window.moveHorizontal(20);
- window.moveVertical(100);
- window.makeVisible();
-
- roof = new Triangle();
- roof.changeSize(50, 140);
- roof.moveHorizontal(60);
- roof.moveVertical(70);
- roof.makeVisible();
-
- sun = new Circle();
- sun.changeColor("yellow");
- sun.moveHorizontal(180);
- sun.moveVertical(-10);
- sun.changeSize(60);
- sun.makeVisible();
- }
-
- /**
- * Change this picture to black/white display
- */
- public void setBlackAndWhite()
- {
- if(wall != null) // only if it's painted already...
- {
- wall.changeColor("black");
- window.changeColor("white");
- roof.changeColor("black");
- sun.changeColor("black");
- }
- }
-
- /**
- * Change this picture to use color display
- */
- public void setColor()
- {
- if(wall != null) // only if it's painted already...
- {
- wall.changeColor("red");
- window.changeColor("black");
- roof.changeColor("green");
- sun.changeColor("yellow");
- }
- }
-
- }
|