A Python library to draw geometrical shapes on CG screen.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Shadow15510 d6e3e0aaac Update 'README.md' 1 year ago
Geolib.py First commit : add licence and librairy 1 year ago
LICENSE.md First commit : add licence and librairy 1 year ago
README.md Update 'README.md' 1 year ago





GeoLib is a Python library to draw geometrical shapes on CG screen.

This little library was coded on the calculator directly, so I apologize for the code quality (such as space, indentation etc). ^^'


The project are under licence GNU General Public Licence v3.0

Available functions


An implementation of Bresenham's algorythm

circle(x_center, y_center, radius, color)


It's also Bresenham

line(x_start, y_start, x_end, y_end, color)


Allow to draw a polygon on the screen

polygon(*coordinates, **kwargs)

  • *coordinates is the coordinates of the verticies of the polygon
  • **kwargs match to two arguments : the fill pattern and the color

Exemple :

polygone((1, 1), (10, 1), (1, 10), color=(150, 0, 0), fill='full') will draw a triangle fill with red

Progress bar

It's a funny functions but I don't think it's really useful

progress_bar(x, y, width, height, percentage, color)


It's an optimized version of polygon for rectangle

rectangle(x, y, width, height, **kwargs)

  • **kwargs as it is for polygon, **kwargs correspond to the fill pattern and the color


This section will give you some details about tricky arguments


Color correspond to the color of the shape you want to draw. This is a tuple of three elements that corresponding to the RGB. The default value is black.

Some exemples :

  • color=(0, 0, 0) : black
  • color=(255, 255, 255) : white
  • color=(255, 0, 0) : red
  • color=(0, 255, 0) : green
  • color=(0, 0, 255) : blue

Fill pattern

For some shapes you can decide to fill them with a pattern. The syntax is quiet easy : fill='my_pattern' (don't forget to quote the choosen pattern)

Now let see the available patterns :

  • 'full' : will totally fill the shape with the given color
  • 'squared' : will fill one pixel out of two
  • 'opaque' : will erase the background under the shape

Per default, your shape is transparent.