複数の亀を使う例(2)

ランダムウォークの例1

def randomWalk(t:Turtle) {
    repeat(10000){
        t.forward(2)
        t.left(random(60)-30)
    }
}    
clear
val t1=newTurtle(100, 10);t1.setPenColor(yellow)
val t2=newTurtle(200, 10);t2.setPenColor(green)
val t3=newTurtle(300, 10);t3.setPenColor(blue)
val t4=newTurtle(400, 10);t4.setPenColor(brown)
runInBackground { randomWalk(turtle0) }
runInBackground { randomWalk(t1) }
runInBackground { randomWalk(t2) }
runInBackground { randomWalk(t3) }
runInBackground { randomWalk(t4) }

ランダムウォークの例2

def dup(t:Turtle):Turtle={
    val t2=newTurtle(0,0)
    t2.setPosition(t.position)
    t2.setHeading(t.heading)
    t2.setPenColor(color(random(256), random(256),random(256) ))
    t2
}    
def randomWalk(n:Int, t:Turtle) {
    repeat(n){
        t.forward(2)
        t.left(random(60)-30)
    }
    runInBackground { randomWalk(400,dup(t)) }
    runInBackground { randomWalk(400,t) }
}
clear
randomWalk(100,turtle0)