277:-based (i.e. relative direction and distance from a starting point) in comparison to coordinate-addressed systems such as bitmaps or raster graphics. As a practical matter, the use of turtle geometry instead of a more traditional model mimics the actual movement logic of the turtle robot. The turtle is traditionally and most often represented pictorially either as a triangle or a turtle icon (though it can be represented by any icon).
185:
364:
36:
308:
197:
320:) is defined to choose the plane the turtle's 2D "forward" vector rotates in; the "up" vector itself also rotates around the "forward" vector. In effect, the turtle has two different heading angles, one within the plane and the other determining the plane's angle. Usually changing the plane's angle does not move the turtle, in line with the traditional setup.
218:
The turtle moves with commands that are relative to its own position, such as "move forward 10 spaces" and "turn left 90 degrees". The pen carried by the turtle can also be controlled, by enabling it, setting its color, or setting its width. A student could understand (and predict and reason about)
226:
A full turtle graphics system requires control flow, procedures, and recursion: many turtle drawing programs fall short. From these building blocks one can build more complex shapes like squares, triangles, circles and other composite figures. The idea of turtle graphics, for example is useful in a
284:
programming language's standard library includes a Turtle graphics module. Like its Logo predecessor, the Python implementation of turtle allows programmers to control one or more turtles in a two-dimensional space. Since the standard Python syntax, control flow, and data structures can be used
315:
The ideas behind turtle graphics can be extended to include three-dimensional space. This is achieved by using one of several different coordinate models. A common setup is cartesian-rotational as with the original 2D turtle: an additional "up" vector
169:
294:
327:
command is used to rotate the "up" vector around the "forward" vector. The article proceeds to develop an algebraic theory to prove geometric properties from syntactic properties of the underlying turtle programs. One of the insights is that a
261:, a simple robot controlled from the user's workstation that is designed to carry out the drawing functions assigned to it using a small retractable pen set into or attached to the robot's body. Turtle geometry works somewhat differently from (
207:
The turtle has three attributes: a location, an orientation (or direction), and a pen. The pen, too, has attributes: color, width, and on/off state (also called
285:
alongside the turtle module, turtle has become a popular way for programmers learning Python to familiarize themselves with the basics of the language.
675:
643:
612:
119:
355:) in the "Rotational Cartesian Turtle". Other coordinate models, including non-Euclidean geometry, are allowed but not included.
53:
100:
57:
497:
72:
281:
201:
79:
336:
241:
is also sometimes used in graphics environments as an alternative to a strictly coordinate-addressed graphics system.
157:
153:
670:
404:
301:
250:
86:
447:
68:
46:
297:
425:
270:
228:
145:
649:
639:
618:
608:
599:
274:
133:
93:
534:
498:"3. Hello, little turtles! โ How to Think Like a Computer Scientist: Learning with Python 3"
257:
added support for turtle graphics to Logo in the late 1960s to support his version of the
238:
141:
363:
594:
258:
254:
220:
184:
149:
664:
632:
522:
317:
473:
604:
35:
172:
An animation that shows how the turtle is used to create graphics by combining
168:
17:
538:
219:
the turtle's motion by imagining what they would do if they were the turtle.
653:
622:
307:
293:
196:
189:
558:
379:
572:
523:"3D turtle geometry: artwork, theory, program equivalence and symmetry"
399:
394:
389:
384:
368:
232:
634:
The
Children's Machine: Rethinking School in the Age of the Computer
362:
306:
292:
195:
183:
167:
426:"Turtle Geometry in Computer Graphics and Computer Aided Design"
29:
474:"25.1. turtle โ Turtle graphics โ Python 3.7.0 documentation"
332:
command is really a shorthand of a turn-roll-turn sequence.
335:
Cheloniidae Turtle
Graphics is a 3D turtle library for
323:
Verhoeff 2010 implements the two vector approach; a
600:
Mindstorms: Children, Computers, and
Powerful Ideas
60:. Unsourced material may be challenged and removed.
631:
249:Turtle graphics are often associated with the
8:
527:International Journal of Arts and Technology
448:"Friends of the Turtle: On Logo And Turtles"
180:commands while a pen is touching the paper
156:. Turtle graphics is a key feature of the
120:Learn how and when to remove this message
424:Goldman, Ron; Schaefer, Scott; Ju, Tao.
416:
223:called this "body syntonic" reasoning.
200:A turtle graphic pattern drawn with a
367:Animated gif with turtle in MSWLogo (
7:
58:adding citations to reliable sources
311:Pattern drawn with a Python program
446:Thornburg, David D. (March 1983).
25:
34:
45:needs additional citations for
559:Spencer Tipping on cheloniidae
154:Cartesian plane (x and y axis)
1:
289:Extension to three dimensions
571:Pietrocola, Giorgio (2005).
302:Cheloniidae Turtle Graphics
692:
603:(2nd ed.). New York:
405:Joy (programming language)
676:Free educational software
638:. New York: Basic Books.
539:10.1504/IJART.2010.032569
502:python.camden.rutgers.edu
251:Logo programming language
192:turtle graphics algorithm
158:Logo programming language
630:Papert, Seymour (1993).
188:A spiral drawn with an
521:Verhoeff, Tom (2010).
372:
312:
304:
204:
193:
181:
561:(retrieved 2016-9-17)
366:
310:
296:
199:
187:
171:
54:improve this article
373:
313:
305:
298:3D turtle graphics
273:, being primarily
271:Cartesian geometry
229:Lindenmayer system
205:
194:
182:
671:Computer graphics
351:command (same as
343:command (same as
144:using a relative
134:computer graphics
130:
129:
122:
104:
69:"Turtle graphics"
27:Computer Graphics
16:(Redirected from
683:
657:
637:
626:
581:
580:
568:
562:
556:
550:
549:
547:
545:
533:(2/3): 288โ319.
518:
512:
511:
509:
508:
494:
488:
487:
485:
484:
470:
464:
463:
461:
459:
443:
437:
436:
430:
421:
125:
118:
114:
111:
105:
103:
62:
38:
30:
21:
691:
690:
686:
685:
684:
682:
681:
680:
661:
660:
646:
629:
615:
595:Papert, Seymour
593:
590:
588:Further reading
585:
584:
570:
569:
565:
557:
553:
543:
541:
520:
519:
515:
506:
504:
496:
495:
491:
482:
480:
478:docs.python.org
472:
471:
467:
457:
455:
445:
444:
440:
428:
423:
422:
418:
413:
361:
300:generated with
291:
247:
239:Turtle geometry
231:for generating
166:
142:vector graphics
138:turtle graphics
126:
115:
109:
106:
63:
61:
51:
39:
28:
23:
22:
18:Turtle Graphics
15:
12:
11:
5:
689:
687:
679:
678:
673:
663:
662:
659:
658:
644:
627:
613:
589:
586:
583:
582:
563:
551:
513:
489:
465:
438:
415:
414:
412:
409:
408:
407:
402:
397:
392:
387:
382:
377:
360:
357:
290:
287:
255:Seymour Papert
246:
243:
221:Seymour Papert
202:Python program
165:
162:
128:
127:
42:
40:
33:
26:
24:
14:
13:
10:
9:
6:
4:
3:
2:
688:
677:
674:
672:
669:
668:
666:
655:
651:
647:
645:0-465-01830-0
641:
636:
635:
628:
624:
620:
616:
614:0-465-04674-6
610:
606:
602:
601:
596:
592:
591:
587:
578:
574:
573:"Tartapelago"
567:
564:
560:
555:
552:
540:
536:
532:
528:
524:
517:
514:
503:
499:
493:
490:
479:
475:
469:
466:
454:. p. 148
453:
449:
442:
439:
434:
433:CSE.WUSTL.edu
427:
420:
417:
410:
406:
403:
401:
398:
396:
393:
391:
388:
386:
383:
381:
378:
375:
374:
370:
365:
358:
356:
354:
350:
346:
342:
338:
333:
331:
326:
321:
319:
318:normal vector
309:
303:
299:
295:
288:
286:
283:
278:
276:
272:
268:
264:
260:
256:
252:
244:
242:
240:
236:
234:
230:
224:
222:
216:
214:
210:
203:
198:
191:
186:
179:
175:
170:
163:
161:
159:
155:
151:
147:
143:
139:
135:
124:
121:
113:
110:February 2008
102:
99:
95:
92:
88:
85:
81:
78:
74:
71: โ
70:
66:
65:Find sources:
59:
55:
49:
48:
43:This article
41:
37:
32:
31:
19:
633:
598:
576:
566:
554:
542:. Retrieved
530:
526:
516:
505:. Retrieved
501:
492:
481:. Retrieved
477:
468:
456:. Retrieved
451:
441:
432:
419:
352:
348:
344:
340:
334:
329:
324:
322:
314:
279:
269:) addressed
266:
262:
259:turtle robot
248:
237:
225:
217:
212:
208:
206:
177:
173:
137:
131:
116:
107:
97:
90:
83:
76:
64:
52:Please help
47:verification
44:
605:Basic Books
544:28 February
339:. It has a
280:Today, the
665:Categories
507:2018-08-23
483:2018-08-23
411:References
152:") upon a
80:newspapers
654:248428992
623:794964988
458:6 October
190:iterative
597:(1993).
452:Compute!
380:L-system
359:See also
347:) and a
233:fractals
164:Overview
400:MSWLogo
395:FMSLogo
390:NetLogo
385:UCBLogo
376:KTurtle
369:Cycloid
245:History
174:forward
94:scholar
652:
642:
621:
611:
577:Maecla
282:Python
275:vector
150:turtle
148:(the "
146:cursor
96:
89:
82:
75:
67:
429:(PDF)
349:pitch
101:JSTOR
87:books
650:OCLC
640:ISBN
619:OCLC
609:ISBN
546:2021
460:2013
353:dive
345:roll
341:bank
337:Java
330:dive
325:roll
211:and
209:down
178:turn
176:and
140:are
73:news
535:doi
215:).
132:In
56:by
667::
648:.
617:.
607:.
575:.
529:.
525:.
500:.
476:.
450:.
431:.
253:.
235:.
213:up
160:.
136:,
656:.
625:.
579:.
548:.
537::
531:3
510:.
486:.
462:.
435:.
371:)
316:(
267:y
265:,
263:x
123:)
117:(
112:)
108:(
98:ยท
91:ยท
84:ยท
77:ยท
50:.
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.