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

package sk.paz1a.practicals.task1;

import sk.upjs.jpaz2.*;

public class SmartTurtle extends Turtle {

        // put new methods here

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

}
package sk.paz1a.practicals.task1;

import java.awt.Color;

import sk.upjs.jpaz2.*;

public class Launcher {

        public static void main(String[] args) {
                // create new "sandbox" - a place where turtles can live
                AnimatedWinPane sandbox = new AnimatedWinPane();

                // create new turtle and add it to the "sandbox"
                SmartTurtle franklin = new SmartTurtle();
                sandbox.add(franklin);

                // create new object inspector
                ObjectInspector oi = new ObjectInspector();
                // ask the inspector to inspect "franklin" and "sandbox"
                oi.inspect(franklin);
                oi.inspect(sandbox);

                // you can put other initialization commands here

                franklin.moveTo(100, 150);
                franklin.setPenColor(Color.blue);

                Turtle cecil = new Turtle();
                sandbox.add(cecil);
                oi.inspect(cecil);
                cecil.setPenColor(Color.red);
                cecil.setPosition(200, 150);

                for (int i = 0; i < 4; i++) {
                        cecil.step(75);
                        cecil.turn(90);
                }       

                franklin.square();
        }
}
package sk.paz1a.practicals.task1;

import java.awt.Color;

import sk.upjs.jpaz2.*;

public class SmartTurtle extends Turtle {

        // put new methods here

        public void square(double size) {
                this.rectangle(size, size);
        }

        public void triangle(double size) {
                for (int i = 0; i < 3; i++) {
                        this.step(size);
                        this.turn(120);

                }
        }

        public void rgbTriangle(double size) {
                this.setPenWidth(2);
                this.setPenColor(Color.RED);
                this.turn(120);
                this.step(size);

                this.setPenColor(Color.GREEN);
                this.turn(120);
                this.step(size);

                this.setPenColor(Color.BLUE);
                this.turn(120);
                this.step(size);

        }

        public void rectangle(double width, double height) {
                for (int i = 0; i < 2; i++) {
                        this.step(height);
                        this.turn(90);
                        this.step(width);
                        this.turn(90);
                }

        }

        public void filledSquare(double size) {
                this.openPolygon();
                for (int i = 0; i < 2; i++) {
                        this.step(size);
                        this.turn(90);
                }
                this.closePolygon();
        }

        public void house(double size) {
                double x, y;
                x = this.getX();
                y = this.getY();

//              this.square(size);
//              this.step(size);
//              this.turn(30);
//              this.triangle(size);
//              this.turn(-30);
//              this.step(-size);

                this.square(size);
                this.step(size);
                this.turn(30);
                this.triangle(size);
                this.turn(-30);
                this.setPosition(x, y);

        }

        public void filledHouse(double size) {
                this.openPolygon();
                this.house(size);
                this.closePolygon();
        }

}
 
package sk.paz1a.practicals.task1;

import java.awt.Color;

import sk.upjs.jpaz2.*;

public class Launcher {

        public static void main(String[] args) {
                // create new "sandbox" - a place where turtles can live
                AnimatedWinPane sandbox = new AnimatedWinPane();

                // create new turtle and add it to the "sandbox"
                SmartTurtle franklin = new SmartTurtle();
                sandbox.add(franklin);

                // create new object inspector
                ObjectInspector oi = new ObjectInspector();
                // ask the inspector to inspect "franklin" and "sandbox"
                oi.inspect(franklin);
                oi.inspect(sandbox);

                // you can put other initialization commands here

//              franklin.moveTo(100, 150);
//              franklin.setPenColor(Color.blue);

                Turtle cecil = new Turtle();
                sandbox.add(cecil);
                oi.inspect(cecil);
//              cecil.setPenColor(Color.red);
//              cecil.setPosition(200, 150);

//              for (int i = 0; i < 4; i++) {
//                      cecil.step(75);
//                      cecil.turn(90);
//              }       
//             
//              franklin.square();

//              franklin.rgbTriangle(50);;
//              franklin.rectangle(100, 100);
//              franklin.filledSquare(100);
                franklin.filledHouse(50);

        }
}