Riešenia (skupina A, 1. týždeň)

Teoretické cvičenie

Spustac.java

import java.awt.Color;

import sk.upjs.jpaz2.*;

public class Spustac {

        /**
         * @param args
         */

        public static void main(String[] args) {
                WinPane plocha = new WinPane();
                ObjectInspector oi = new ObjectInspector();

                oi.inspect(plocha);

                ChytraTurtle jozko = new ChytraTurtle();
                Turtle zofka = new Turtle();

                plocha.add(jozko);
                plocha.add(zofka);
                oi.inspect(jozko);
                oi.inspect(zofka);

                jozko.setPosition(100, 150);
                zofka.setPosition(200, 150);

                jozko.setPenColor(Color.blue);
                zofka.setPenColor(Color.red);

                for (int i = 0; i < 4; i++) {
                        jozko.step(100);
                        jozko.turn(90);
                        JPAZUtilities.delay(2000);
                }
        }
}

ChytraTurtle.java

import sk.upjs.jpaz2.Turtle;

public class ChytraTurtle extends Turtle {
        public void spomalenyDomcek() {
                this.step(70);
                this.turn(30);
                this.step(70);
                this.turn(120);
                this.step(70);
                this.turn(30);
                this.step(70);
                this.turn(90);
                this.step(70);
                this.turn(90);
        }
}
import sk.upjs.jpaz2.*;

public class Spustac {

        /**
         * @param args
         */

        public static void main(String[] args) {
                WinPane plocha = new WinPane()

                ObjectInspector oi = new ObjectInspector();
                oi.inspect(plocha);

                ChytraTurtle jozko = new ChytraTurtle();
                plocha.add(jozko);
                oi.inspect(jozko);
                jozko.center();
        }
}
import sk.upjs.jpaz2.Turtle;


public class ChytraTurtle extends Turtle {

        public void trojuholnik(double dlzkaStrany) {
                // 3 krat zopakujem 2 prikazy
                for (int i=0; i<3; i++) {
                        // spravim krok vpred
                        this.step(dlzkaStrany);
                        this.turn(120);
                }
        }

        public void stvorec(double dlzkaStrany) {
                for (int i=0; i<4; i++) {
                        this.step(dlzkaStrany);
                        this.turn(90);
                }
        }

        public void domcek(double dlzkaStrany) {
                this.stvorec(dlzkaStrany);
                this.step(dlzkaStrany);
                this.turn(30);
                this.trojuholnik(dlzkaStrany);
                this.turn(-30);
                this.step(-dlzkaStrany);
        }

        public void vystredenyStvorec(double dlzkaStrany) {
                this.penUp();
                this.step(dlzkaStrany/2);
                this.penDown();
                this.turn(90);
                this.step(dlzkaStrany/2);
                for (int i=0; i<3; i++) {
                        this.turn(90);
                        this.step(dlzkaStrany);
                }
                this.turn(90);
                this.step(dlzkaStrany/2);
                this.turn(-90);
                this.penUp();
                this.step(-dlzkaStrany/2);
                this.penDown();
        }
}
import java.awt.Color;

import sk.upjs.jpaz2.*;

public class ChytraTurtle extends Turtle {

        public void plot(double sirka, double vyska) {
                for (int i = 0; i < 5; i++) {
                        this.step(vyska);
                        this.turn(30);
                        this.step(sirka);
                        this.turn(120);
                        this.step(sirka);
                        this.turn(30);
                        this.step(vyska);
                        this.turn(180);
                }
                this.turn(270);
                this.step(5 * sirka);
                this.turn(90);
        }

        public void ciarkaBodkaCiarka(double dlzka) {
                this.step(dlzka / 4);
                this.penUp();
                this.step(dlzka / 4);
                this.dot(dlzka / 8);
                this.step(dlzka / 4);
                this.penDown();
                this.step(dlzka / 4);
        }

        public void slniecko(double polomer) {
                this.setPenColor(Color.yellow);

                for (int i = 0; i < 36; i++) {
                        this.step(2 * polomer);
                        this.step(-2 * polomer);
                        this.turn(10);
                }
                this.setFillColor(Color.orange);
                this.dot(polomer);

        }

        public void vrtulka(double dlzka) {
                for (int i = 0; i < 8; i++) {
                        this.step(dlzka);
                        this.turn(45);
                        this.step(10);
                        this.step(-10);
                        this.turn(-45);
                        this.step(-dlzka);
                        this.turn(360.0 / 8);
                }
        }

        public void stvorec(double dlzkaStrany) {
                this.openPolygon();
                this.penUp();
                for (int i = 0; i < 4; i++) {
                        this.step(dlzkaStrany);
                        this.turn(90);
                }
                this.penDown();
                this.closePolygon();
        }

        public void u(double strana) {
                for (int i = 0; i < 3; i++) {
                        this.step(strana);
                        this.turn(90);
                }
        }

        public void kriz(double strana) {
                for (int i = 0; i < 4; i++) {
                        this.u(strana);
                        this.turn(180);
                }
        }
}