Skip to main content

Python A-Turtle

Project description

Python A-Trutle is a library that implements Turtle Graphics with asyncio support.

A short capability summary:

  • Supports both sync and asyncio compatible coroutine API.

  • Multiple turtle support with either vector or bitmap shapes.

  • Concurrent animation support via the coroutine API.

  • Built on top of the Standard Library’s tkinter module.

  • Sprite support (essentially turtles that don’t draw lines)

  • More.

Installation

Python A-Turtle is a pure Python package distributed via PyPI. Install it with:

$ pip install aturtle

For improved bitmap image rotation speed and quality, install the optional Pillow extra with:

$ pip install aturtle[pillow]

Quick Start

import aturtle

w = aturtle.Window()
sh = aturtle.shapes.vector.Triangle(radius=20, angle=0)
s = aturtle.create_sprite(w, sh, update=True)
t = aturtle.turtle.Turtle(s)
t.sync_forward(100)

Thanks

  • To the creators and maintainers of Tcl/Tk, a programming language I used for a while in the late 1990’s, in particular for the seriously under-appreciated Canvas widget which is amazingly powerful. Python embeds the Tcl/Tk interpreter in the form of the tkinter Standard Library module. Long live Tcl/Tk and tkinter!

  • To whoever Quarks is, for sharing an effective technique for debouncing Tk KeyPress / KeyRelease events in towards the end of this thread.

  • To Terry Pratchet, for his Discworld novels and, in particular, for Great A’Tuin, the “Giant Star Turtle (…) who travels through the Discworld universe’s space, carrying four giant elephants (…) who in turn carry the Discworld.”, which has come to my mind often while creating this.

About

Python A-Turtle is being created by Tiago Montes.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aturtle-1.0.0a0.tar.gz (21.2 kB view hashes)

Uploaded Source

Built Distribution

aturtle-1.0.0a0-py2.py3-none-any.whl (24.5 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page