Exercises
Compilation Target
Create a line drawing of an archery target with three concentric scoring bands, as shown in Figure pictures:target1.
For bonus credit add a stand so we can place the target on a range, as shown in Figure pictures:target2.
<div class="solution">
The simplest solution is to create three concentric circles using the on
method:
Image
.circle(20)
.on(Image.circle(40))
.on(Image.circle(60))
For the extra credit we can create a stand using two rectangles:
Image
.circle(20)
.on(Image.circle(40))
.on(Image.circle(60))
.above(Image.rectangle(6, 20))
.above(Image.rectangle(20, 6))
</div>
Stay on Target
Colour your target red and white, the stand in brown (if applicable), and some ground in green. See Figure pictures:target3 for an example.
<div class="solution">
The trick here is using parentheses to control the order of composition.
The fillColor()
, strokeColor()
, and strokeWidth()
methods
apply to a single image---we need to make sure that image
comprises the correct set of shapes:
Image
.circle(20).fillColor(Color.red)
.on(Image.circle(40).fillColor(Color.white))
.on(Image.circle(60).fillColor(Color.red))
.above(Image.rectangle(6, 20).fillColor(Color.brown))
.above(Image.rectangle(20, 6).fillColor(Color.brown))
.above(Image.rectangle(80, 25).noStroke.fillColor(Color.green))
</div>