Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This article introduces Turtle in Microsoft Small Basic programming language.
In this article:
What is a Turtle?
Turtle comes from Logo programming language. It's called Turtle Graphics. Basically to turn and to move the turtle causes graphic shapes. Details about Turtle history is written in a TechNet Wiki article.
Turtle.Show()
This one-line code above shows the turtle like following picture.
Turtle Object
The Turtle object provides functionality do draw shapes like Logo programming language.
Properties
There are following four properties in Turtle object.
- Angle - gets and sets the angle [degree] of the turtle. The default value is 0.
- Speed - gets and sets the speed (1 to 10) of the turtle. The default value is 5.
- X - gets and sets the X location of the turtle. The default value is 320.
- Y - gets and sets the Y location of the turtle. The default value is 240.
Operations
There are following nine operations in Turtle object. These operations don't return any values.
- Hide() - hides the turtle.
- Move(distance) - moves the turtle to a specified distance [pixel].
- MoveTo(x, y) - turns and moves the turtle to the specified location.
- PenDown() - sets the pen down.
- PenUp() - sets the pen up.
- Show() - shows the turtle.
- Turn(angle) - turns the turtle by the specified angle [degree].
- TurnLeft() - turns the turtle 90 degrees to the left.
- TurnRight() - turns the turtle 90 degrees to the right.
Known Issues
There was a know issue that the turtle can't be shown if once hided. This means that also the turtle graphics (trails) could be cleared only one time with GraphicsWindow.Clear(). But still remains an issue that there is no standard way to remove turtle trials only. To remove turtle trails, there is a workaround which detail is written in a blog article.
- Small Basic Known Issue: 25671 - Turtle.Show() Doesn't Show Turtle after GraphicsWindow.Clear() or Turtle.Hide() - fixed for v1.2
- There is no standard way to remove Turtle trails only. workaround
Sample Code
' Turtle Object Code Sample
' Turtle.Show() operation
Turtle.Show()
' Turtle.PenUp() and Turtle.MoveTo() operations
Turtle.PenUp()
x = 320
y = 400
Turtle.MoveTo(x, y)
' Turtle.Angle property
Turtle.Angle = 45
' show properties
GraphicsWindow.BrushColor = "Gray"
GraphicsWindow.DrawText(10, 10, "Turtle.X=" + Turtle.X)
GraphicsWindow.DrawText(10, 30, "Turtle.Y=" + Turtle.Y)
GraphicsWindow.DrawText(10, 50, "Turtle.Angle=" + Turtle.Angle)
GraphicsWindow.DrawText(10, 70, "Turtle.Speed=" + Turtle.Speed)
Program.Delay(3000)
' Turtle.PenDown() operation
Turtle.PenDown()
GraphicsWindow.PenColor = "Red"
' Turtle.Move() operation
distance = 130
Turtle.Move(distance)
' Turtle.Turn() and Turtle.Move operations
angle = -90
Turtle.Turn(angle)
Turtle.Move(distance)
' Turtle.TurnRight() and Turtle.Move operations
Turtle.TurnRight()
Turtle.Move(distance)
' Turtle.TurnLeft() and Turtle.Move operations
Turtle.TurnLeft()
Turtle.Move(distance)
' Turtle.Hide() operation
Turtle.Hide()
Sample Programs
- Another Turtle Graphics 0.5b (XVK119-3) - simple LOGO program
- Brownian Motion (RFV485) - is a Brownian motion demo
- Dragon and Turtle 0.6b (HMP803-5) - a fighting game
- Hilbert Curve (CMN910) - draws a Hilbert curve
- One Stroke Solver 0.2 (FST624-0) - solves one stroke path problem
- Turtle Brick 0.1 (KDH145) - brick building with Turtle
- Turtle Dodger 0.5b (QZN342-3) - simple game
- Turtle Flash 0.3 (RBN002-1) - just shows flash animation
- Turtle Maze 1.62 (PNC833-19) - maze game
- Optical Illusion #01 (TQH071) - doesn't use Turtle object but image
- Turtle Marionette (VTD423-0) - doesn't use Turtle object but image
Additional Resources
- API Reference: Turtle Object
- Clearing Turtle Trails (The Official Blog of Small Basic)
- Small Basic: Turtle Bitmap for Another Turtle Project: PNG Image (TechNet Gallery)
- Small Basic: Another Turtle Project: PowerPoint Presentation (TechNet Gallery)
- Small Basic Turtle Object - 5 Practice Exercises! (User Ed Blog)
See Also
- Small Basic Getting Started Guide: Chapter 8: Turtle Graphics
- Small Basic Curriculum: Lesson 2.2: Turtle Graphics
- Small Basic Reference Documentation: Turtle Object
- Small Basic: The History of the Logo Turtle
- Small Basic: How to Make a Turtle Maze Game
- Wiki: Small Basic Portal
Other Languages
- Small Basic: La Tortue (Turtle) (fr-FR)
- [[articles: Small Basic: タートル (ja-JP)]]
- [[articles: Small Basic:龟标(Turtle)(zh-CN)]]