Merge with 3.4
This commit is contained in:
commit
5827da3f9f
|
@ -53,22 +53,28 @@
|
|||
|
||||
(2) How to add your own demos to the demo repository
|
||||
|
||||
- place: same directory as turtledemo/__main__.py
|
||||
- Place the file in the same directory as turtledemo/__main__.py
|
||||
|
||||
- requirements on source code:
|
||||
code must contain a main() function which will
|
||||
be executed by the viewer (see provided example scripts)
|
||||
main() may return a string which will be displayed
|
||||
in the Label below the source code window (when execution
|
||||
has finished.)
|
||||
- The code must contain a main() function which will
|
||||
be executed by the viewer (see provided example scripts).
|
||||
It may return a string which will be displayed in the Label below
|
||||
the source code window (when execution has finished.)
|
||||
|
||||
If the demo is EVENT DRIVEN, main must return the string
|
||||
"EVENTLOOP". This informs the demo viewer that the script is
|
||||
still running and must be stopped by the user!
|
||||
- In order to run mydemo.py by itself, such as during development,
|
||||
add the following at the end of the file:
|
||||
|
||||
If an "EVENTLOOP" demo runs by itself, as with clock, which uses
|
||||
ontimer, or minimal_hanoi, which loops by recursion, then the
|
||||
code should catch the turtle.Terminator exception that will be
|
||||
raised when the user presses the STOP button. (Paint is not such
|
||||
a demo; it only acts in response to mouse clicks and movements.)
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
mainloop() # keep window
|
||||
|
||||
python -m turtledemo.mydemo # will then run it
|
||||
|
||||
- If the demo is EVENT DRIVEN, main must return the string
|
||||
"EVENTLOOP". This informs the demo viewer that the script is
|
||||
still running and must be stopped by the user!
|
||||
|
||||
If an "EVENTLOOP" demo runs by itself, as with clock, which uses
|
||||
ontimer, or minimal_hanoi, which loops by recursion, then the
|
||||
code should catch the turtle.Terminator exception that will be
|
||||
raised when the user presses the STOP button. (Paint is not such
|
||||
a demo; it only acts in response to mouse clicks and movements.)
|
||||
|
|
|
@ -3,12 +3,12 @@
|
|||
|
||||
tdemo_forest.py
|
||||
|
||||
Displays a 'forest' of 3 'breadth-first-trees'
|
||||
similar to the one from example tree.
|
||||
For further remarks see xtx_tree.py
|
||||
Displays a 'forest' of 3 breadth-first-trees
|
||||
similar to the one in tree.
|
||||
For further remarks see tree.py
|
||||
|
||||
This example is a 'breadth-first'-rewrite of
|
||||
a Logo program written by Erich Neuwirth. See:
|
||||
a Logo program written by Erich Neuwirth. See
|
||||
http://homepage.univie.ac.at/erich.neuwirth/
|
||||
"""
|
||||
from turtle import Turtle, colormode, tracer, mainloop
|
||||
|
@ -104,6 +104,5 @@ def main():
|
|||
return "runtime: %.2f sec." % (b-a)
|
||||
|
||||
if __name__ == '__main__':
|
||||
msg = main()
|
||||
print(msg)
|
||||
main()
|
||||
mainloop()
|
||||
|
|
|
@ -3,11 +3,15 @@
|
|||
|
||||
tdemo_paint.py
|
||||
|
||||
A simple eventdriven paint program
|
||||
A simple event-driven paint program
|
||||
|
||||
- use left mouse button to move turtle
|
||||
- middle mouse button to change color
|
||||
- right mouse button do turn filling on/off
|
||||
- left mouse button moves turtle
|
||||
- middle mouse button changes color
|
||||
- right mouse button toogles betweem pen up
|
||||
(no line drawn when the turtle moves) and
|
||||
pen down (line is drawn). If pen up follows
|
||||
at least two pen-down moves, the polygon that
|
||||
includes the starting point is filled.
|
||||
-------------------------------------------
|
||||
Play around by clicking into the canvas
|
||||
using all three mouse buttons.
|
||||
|
|
|
@ -3,14 +3,10 @@
|
|||
|
||||
tdemo_peace.py
|
||||
|
||||
A very simple drawing suitable as a beginner's
|
||||
programming example.
|
||||
|
||||
Uses only commands, which are also available in
|
||||
old turtle.py.
|
||||
|
||||
Intentionally no variables are used except for the
|
||||
colorloop:
|
||||
A simple drawing suitable as a beginner's
|
||||
programming example. Aside from the
|
||||
peacecolors assignment and the for loop,
|
||||
it only uses turtle commands.
|
||||
"""
|
||||
|
||||
from turtle import *
|
||||
|
@ -21,7 +17,7 @@ def main():
|
|||
"royalblue1", "dodgerblue4")
|
||||
|
||||
reset()
|
||||
s = Screen()
|
||||
Screen()
|
||||
up()
|
||||
goto(-320,-195)
|
||||
width(70)
|
||||
|
@ -58,7 +54,7 @@ def main():
|
|||
up()
|
||||
|
||||
goto(0,300) # vanish if hideturtle() is not available ;-)
|
||||
return "Done!!"
|
||||
return "Done!"
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
|
@ -12,9 +12,9 @@ very light moon!
|
|||
Planet has a circular orbit, moon a stable
|
||||
orbit around the planet.
|
||||
|
||||
You can hold the movement temporarily by pressing
|
||||
the left mouse button with mouse over the
|
||||
scrollbar of the canvas.
|
||||
You can hold the movement temporarily by
|
||||
pressing the left mouse button with the
|
||||
mouse over the scrollbar of the canvas.
|
||||
|
||||
"""
|
||||
from turtle import Shape, Turtle, mainloop, Vec2D as Vec
|
||||
|
@ -108,6 +108,5 @@ def main():
|
|||
return "Done!"
|
||||
|
||||
if __name__ == '__main__':
|
||||
msg = main()
|
||||
print(msg)
|
||||
#mainloop()
|
||||
main()
|
||||
mainloop()
|
||||
|
|
|
@ -11,9 +11,9 @@ Uses:
|
|||
(1) a tree-generator, where the drawing is
|
||||
quasi the side-effect, whereas the generator
|
||||
always yields None.
|
||||
(2) Turtle-cloning: At each branching point the
|
||||
current pen is cloned. So in the end there
|
||||
are 1024 turtles.
|
||||
(2) Turtle-cloning: At each branching point
|
||||
the current pen is cloned. So in the end
|
||||
there are 1024 turtles.
|
||||
"""
|
||||
from turtle import Turtle, mainloop
|
||||
from time import clock
|
||||
|
|
|
@ -1,8 +1,16 @@
|
|||
#!/usr/bin/env python3
|
||||
## DEMONSTRATES USE OF 2 CANVASES, SO CANNOT BE RUN IN DEMOVIEWER!
|
||||
"""turtle example: Using TurtleScreen and RawTurtle
|
||||
for drawing on two distinct canvases.
|
||||
"""turtledemo.two_canvases
|
||||
|
||||
Use TurtleScreen and RawTurtle to draw on two
|
||||
distinct canvases.
|
||||
"""
|
||||
#The final mainloop only serves to keep the window open.
|
||||
|
||||
#TODO: This runs in its own two-canvas window when selected in the
|
||||
#demoviewer examples menu but the text is not loaded and the previous
|
||||
#example is left visible. If the ending mainloop is removed, the text
|
||||
#Eis loaded, this run again in a third window, and if start is pressed,
|
||||
#demoviewer raises an error because main is not found, and then freezes.
|
||||
|
||||
from turtle import TurtleScreen, RawTurtle, TK
|
||||
|
||||
root = TK.Tk()
|
||||
|
|
Loading…
Reference in New Issue