import java.awt.Color; import fi.jyu.mit.graphics.ControlButtons; import fi.jyu.mit.graphics.ControllerFrame; import fi.jyu.mit.graphics.DrawableCollection; import fi.jyu.mit.graphics.EasyWindow; import fi.jyu.mit.graphics.Line; /** * Ohjelma piirtää viisi porrasta alkaen origosta päättyen * pisteesen (5,5). * Sitten piirretään laskevat portaat alkaen pisteetstä (4,5) * ja päättyen pisteeseen (9,0) * @author vesal * @version 14.9.2008 */ public class Portaat2 { /** * Aliohjelma piirtää ikkunaan yhden nousevan portaan *
* |-------(x+1,y+1) * | * | * | * (x,y) ** @param window * @param x portaan alkupisteen x * @param y portaan alkupisteen y * @return luotu olio */ public static DrawableCollection porras(EasyWindow window,double x,double y) { DrawableCollection p = new DrawableCollection(); p.move(x,y,0); p.add(new Line(0, 0, 0,+1)); p.add(new Line(0,+1,+1,+1)); window.add(p); return p; } /** * Aliohjelma piirtää ikkunaan yhden laskevan portaan *
* (x,y) * -------| * | * | * | (x+1,y-1); ** @param window * @param x portaan alkupisteen x * @param y portaan alkupisteen y */ public static void porrasAlas(EasyWindow window,double x,double y) { DrawableCollection p = new DrawableCollection(); p.move(x,y,0); p.add(new Line( 0, 0,+1, 0)); p.add(new Line(+1, 0,+1,-1)); window.add(p); } /** * @param args ei käytössä */ public static void main(String[] args) { EasyWindow window = new EasyWindow(); window.scale(0,0,10,10); porras(window,0,0); porras(window,1,1); porras(window,2,2); DrawableCollection p =porras(window,3,3); porras(window,4,4); p.setColor(Color.BLUE); porrasAlas(window,4,5); porrasAlas(window,5,4); porrasAlas(window,6,3); porrasAlas(window,7,2); porrasAlas(window,8,1); porrasAlas(window, 10, 23); window.showWindow(); new ControllerFrame(new ControlButtons(p),450,350,150,150); } }