tortoise

Turtle graphics on the web.


Keywords
turtle, web
License
MIT
Install
pip install tortoise==0.1.1

Documentation

Tortoise: turtle graphics on the web

Run on Repl.it About online demonstrations

license: MIT Version

tortoise library example

This repository is the proof of concept of an implementation, in Python, of turtle graphics based on web technologies. This is the main difference with the turtle module, which uses (t|T)kinter.

Cloning the repository (or retrieving the corresponding ZIP file) is sufficient to use this module. The main.py file, with which above picture were generated, is an example of use of this library. Simply launch python main.py from the root of the repository.

The module is also available on Pypi: https://pypi.org/project/tortoise/. Simply launch pip install tortoise to install it.

Alternatively, you can also use Repl.it, so you have nothing to install on your computer. Follow this link, click on the green run button, and then click on (or scan) the then displayed QR code.

This Python module is part of a larger project that aims to provide a way to write modern examples or exercises for programming tutorials.

The tortoise library currently provides following methods (coordinates and distances are relative to the viewbox of the SVG):

  • constructor(dom,id): returns a tortoise object which uses dom as the DOM from the Atlas toolkit, and the SVG element of id id,
  • getAngle(): returns the current angel, in degrees,
  • up(): puts the pen up,
  • down(): puts the pen down,
  • setAutoDraw(value): the drawing is automatically rendered each value movements (0 will disable the auto draw); call draw() to render remaining movements,
  • setPosition(x,y): the turtle jumps to position x and y,
  • forward(distance): the tortoise moves by the specified distance,
  • right(angle): the tortoise turns clockwise from angle degrees,
  • left(angle): the tortoise turns counter clockwise from angle degrees,
  • setColorRGB(r,g,b): sets the color of the pen following the RGB color model,
  • setColorHSL(h,s,l): sets the color of the pen following the HSL color model, (h: 0 - 360; s, l: 0 - 100%),
  • draw(): draws remaining movements,
  • clear(): erase the drawing area and also resets the internal settings (coordinates, angle, color…).