* a few updates * more updates * reorder radio blocks * more shuffling of new radio apis * fixing hot or ocold * more doc fixes * more updates * fixing docs issues * more doc fixes * restore docs errors * missing packate * renamed argument of callback * mssing radio * more odcs fixes * lock turtle * ignore docs for now
1.8 KiB
Turtle Square
Introduction @unplugged
Imagine that a virtual turtle, as big as an LED, that you can control it with commands. In this tutorial, you will learn to use the turtle and draw a square.
Moving the turtle @fullscreen
The turtle starts in the center of the screen facing up. Place a ||turtle:forward||
block to make it move up.
turtle.forward(1)
Turning and moving @fullscreen
Place a ||turtle:turnRight||
to turn the turtle and place another ||turtle:forward||
block to make it move again.
turtle.forward(1)
turtle.turnRight()
turtle.forward(1)
Drawing a square
If you add enough ||turtle:turnRight||
and ||turtle:forward||
block, the turtle
will eventually draw a square.
You can move the blocks in a ||input:on button pressed||
to easily run the code again.
input.onButtonPressed(Button.A, function() {
turtle.forward(1)
turtle.turnRight()
turtle.forward(1)
turtle.turnRight()
turtle.forward(1)
turtle.turnRight()
turtle.forward(1)
turtle.turnRight()
})
"For" is for repetition
Have you notice the repetition pattern in the blocks needed to draw a square?
Try to use a for
loop to achieve the same effect.
input.onButtonPressed(Button.A, function() {
for(let i = 0; i <=4; ++i) {
turtle.forward(1)
turtle.turnRight()
}
})
Leaving a trail
The turtle holds a pen that turns on LEDs. If you add the ||turtle:pen||
block,
it will leave a trail as it moves.
input.onButtonPressed(Button.A, function() {
turtle.pen(TurtlePenMode.Down)
for(let i = 0; i <=4; ++i) {
turtle.forward(1)
turtle.turnRight()
}
})
microturtle=github:Microsoft/pxt-microturtle#v0.0.9