# Tortoise: [turtle graphics](https://q37.info/s/3dwhcdfm) on the web
[![Version 0.1.1](https://img.shields.io/static/v1.svg?&color=90b4ed&label=Version&message=0.1.1)](https://q37.info/s/q4ghchsr) [![Download stats](https://img.shields.io/pypi/dm/tortoise.svg)](https://pypistats.org/packages/tortoise) [![License](https://img.shields.io/pypi/l/atlastk.svg?style=plastic)](https://github.com/epeios-q37/tortoise-python/blob/master/LICENSE)
[![tortoise library example](https://q37.info/s/frgzbhq9)](http://q37.info/s/dj9b7ksf)
This repository is the [proof of concept](https://q37.info/s/hzpbtv7r) of an implementation, in *Python*, of [turtle graphics](https://q37.info/s/3dwhcdfm) 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.
You can also test the library directly in your web browser, with nothing to install: <http://q37.info/s/dj9b7ksf>.
This *Python* module is part of a [larger project](https://q37.info/s/tpkx4cfk) 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](https://q37.info/s/c7hfkzvs), 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…).
Raw data
{
"_id": null,
"home_page": "https://github.com/epeios-q37/tortoise-python",
"name": "tortoise",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "turtle,web",
"author": "Claude SIMON",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/8b/98/970d10bcc02eda8370c425dd6306526eec8b407aa83f13bb0ebe7da41012/tortoise-0.1.1.tar.gz",
"platform": "",
"description": "# Tortoise: [turtle graphics](https://q37.info/s/3dwhcdfm) on the web\n\n[![Version 0.1.1](https://img.shields.io/static/v1.svg?&color=90b4ed&label=Version&message=0.1.1)](https://q37.info/s/q4ghchsr) [![Download stats](https://img.shields.io/pypi/dm/tortoise.svg)](https://pypistats.org/packages/tortoise) [![License](https://img.shields.io/pypi/l/atlastk.svg?style=plastic)](https://github.com/epeios-q37/tortoise-python/blob/master/LICENSE)\n\n[![tortoise library example](https://q37.info/s/frgzbhq9)](http://q37.info/s/dj9b7ksf)\n\nThis repository is the [proof of concept](https://q37.info/s/hzpbtv7r) of an implementation, in *Python*, of [turtle graphics](https://q37.info/s/3dwhcdfm) based on web technologies. This is the main difference with the *turtle* module, which uses *(t|T)kinter*.\n\nCloning 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.\n\nThe module is also available on *Pypi*: <https://pypi.org/project/tortoise/>. Simply launch `pip install tortoise` to install it.\n\nYou can also test the library directly in your web browser, with nothing to install: <http://q37.info/s/dj9b7ksf>.\n\nThis *Python* module is part of a [larger project](https://q37.info/s/tpkx4cfk) that aims to provide a way to write modern examples or exercises for programming tutorials.\n\nThe *tortoise* library currently provides following methods (coordinates and distances are relative to the *viewbox* of the SVG):\n\n- *constructor*`(dom,id)`: returns a *tortoise* object which uses `dom` as the *DOM* from the [*Atlas* toolkit](https://q37.info/s/c7hfkzvs), and the SVG element of id `id`,\n- `getAngle()`: returns the current angel, in degrees,\n- `up()`: puts the pen up,\n- `down()`: puts the pen down,\n- `setAutoDraw(value)`: the drawing is automatically rendered each `value` movements (`0` will disable the auto draw); call `draw()` to render remaining movements,\n- `setPosition(x,y)`: the turtle jumps to position `x` and `y`,\n- `forward(distance)`: the tortoise moves by the specified `distance`,\n- `right(angle)`: the tortoise turns clockwise from `angle` degrees,\n- `left(angle)`: the tortoise turns *counter* clockwise from `angle` degrees,\n- `setColorRGB(r,g,b)`: sets the color of the pen following the RGB color model,\n- `setColorHSL(h,s,l)`: sets the color of the pen following the HSL color model, (`h`: 0 - 360; `s`, `l`: 0 - 100%),\n- `draw()`: draws remaining movements,\n- `clear()`: erase the drawing area and also resets the internal settings (coordinates, angle, color\u2026).\n\n\n",
"bugtrack_url": null,
"license": "",
"summary": "Turtle graphics on the web.",
"version": "0.1.1",
"project_urls": {
"Homepage": "https://github.com/epeios-q37/tortoise-python"
},
"split_keywords": [
"turtle",
"web"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "16efb314819f12e48e7a99f07825d064b596d58cc4a0c3b75939d0d10fedf90d",
"md5": "3db863f17eb2bea0619d92d20631d1e3",
"sha256": "bcb58a56d6796cad0db330104450df2caf2ea9e98d844bb2906274bd15c12804"
},
"downloads": -1,
"filename": "tortoise-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3db863f17eb2bea0619d92d20631d1e3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 5263,
"upload_time": "2019-08-03T15:54:17",
"upload_time_iso_8601": "2019-08-03T15:54:17.909940Z",
"url": "https://files.pythonhosted.org/packages/16/ef/b314819f12e48e7a99f07825d064b596d58cc4a0c3b75939d0d10fedf90d/tortoise-0.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8b98970d10bcc02eda8370c425dd6306526eec8b407aa83f13bb0ebe7da41012",
"md5": "7275ac9c80517bb9653c053243d5cca2",
"sha256": "a4ebd69b152d266174b3b0f2a22e3fb8995101eb749d3114813a98f405ab10bb"
},
"downloads": -1,
"filename": "tortoise-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "7275ac9c80517bb9653c053243d5cca2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 4114,
"upload_time": "2019-08-03T15:54:19",
"upload_time_iso_8601": "2019-08-03T15:54:19.508378Z",
"url": "https://files.pythonhosted.org/packages/8b/98/970d10bcc02eda8370c425dd6306526eec8b407aa83f13bb0ebe7da41012/tortoise-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2019-08-03 15:54:19",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "epeios-q37",
"github_project": "tortoise-python",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "tortoise"
}