scratchpad
TheDamian
<code>
class Shape {
has $.x;
has $.y;
method moveTo($newx, $newy) {
$.x = $newx;
$.y = $newy;
}
method rMoveTo($newx, $newy) {
.moveTo($.x + $newx, $.y + $newy);
}
}
class Rectangle is Shape {
has $.width is rw;
has $.height is rw;
method draw() {
print "Drawing a Rectange at:($.x,$.y), width $.width, height $.height\n";
}
}
class Circle is Shape {
has $.radius;
method draw() {
print "Draw a Circle at:($.x,$.y), radius $.radius\n";
}
}
@scribble = (Rectangle.new(x=>10, y=>20, width=>5, height->6), Circle.new(x=>15, y=>25, radius=>8));
for @scribble -> $ashape {
$ashape.draw;
$ashape.rMoveTo(100, 100);
$ashape.draw;
}
$arectangle = Rectangle.new(x=>0, y=>0, width=>15, height=>15);
$arectangle.width = 30;
$arectangle.draw;
</code>