Skip to main content

This project implements a simple API of turtle to draw line, rectangle, circle, text and convert the process into gif.

Project description

Rabit

This project implements a simple API of turtle to draw line, rectangle, circle, text and convert the process into gif.

Install

  • Install the package.
pip3 install rabit
  • Install python-tk.

Usage

Rabit splits the drawing board into grids x grids. To create a Rabit object, you should choose the grids (in a row/column) you want to split and the size(default is 600) of drawing board.

import rabit

# The first argument is the number of grids in a row/column.
# The second argument is the size of the drawing board.
rabit = rabit.Rabit(11, 600)

You can draw rectangle with draw_rect(row, col, rows=1, cols=1, color="black").

  • row: row of the left up corner of the rectangle
  • col: column of the left up corner of the rectangle
  • rows: length of the rectangle
  • cols: width of the rectangle
  • color: line color

You can paint rectangle with paint_rect(row, col, rows=1, cols=1, color="black", cover=Flase).

  • row: row of the left up corner of the rectangle
  • col: column of the left up corner of the rectangle
  • rows: length of the rectangle
  • cols: width of the rectangle
  • color: line color
  • cover: if cover the text on it

You can clear rectangle with clear_rect(row, col, rows=1, cols=1, color="white").

  • row: row of the left up corner of the rectangle
  • col: column of the left up corner of the rectangle
  • rows: length of the rectangle
  • cols: width of the rectangle
  • color: line color

You can draw text with draw_text(row, col, text, color="black", font=("Times", 24)).

  • row: row of the text
  • col: column of text
  • text: text
  • color: text color
  • font: text font

You can draw line with draw_line(from_row, from_col, to_row, to_col, color="black") .

  • from_row: row of start point
  • from_col: column of start point
  • to_row: row of end point
  • to_col: column of end point
  • color: line color

You can convert the drawing process into gif with convert2gif(func, fps_for_eps, fps_for_gif).The conversion can split into two steps:

  • Capturing pictures at a certain rate while drawing.
  • convert all pictures(.eps) into a gif at a certain FPS by imageio.
import rabit

def your_draw_function():
  ...

# The first argument is the name of your draw function.
# The second argument is the FPS(or rate) of the capturing process.
# The third argument is the FPS of the final gif.
rabit.convert2gif(your_draw_function, 10, 5)

There are other functions you can use:

  • speed(speed): set the drawing speed
  • delay(time): set the delay time(ms)
  • pensize(pensize): set the pensize
  • begin_hide(): hide the following drawing animation
  • end_hide(): end of the hiding
  • hold(): don't close the window after the drawing

Examples

There is an example in the example directory.

The converted gif is:

example

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

rabit-0.3.tar.gz (4.7 kB view hashes)

Uploaded Source

Built Distribution

rabit-0.3-py3-none-any.whl (5.4 kB view hashes)

Uploaded 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