Skip to main content

Generative art library

Project description

generativepy

Generative art and graphing library for creating images and animations.

Version 24.11 notes

  • Fix bug is extents for of_xy_function.
  • Axes.transform_from_graph can accept a point or a sequence of points.

Version 24.04 notes

3D drawing is likely to change in a future release. The rest of the library is reasonably stable.

  • Most shapes can now optionally accept FillParameters and StrokeParameters to control fill and stroke styles. This makes it easier to share styles amongst different objects.
  • Add scatter plots, including stalk and connected styles.
  • Add a basic Vector3 implementation to math module.
  • New Markers class to rationalise line markers (ticks, paraticks, parallel markers), adding new markers and allowing position to be controlled.
  • New overlay_nparrays function in nparray module allows two images to be overlaid, treating pure white as transparent.
  • Add 3D charts (z against xy) using povray. Also added complex module to genpygoodies to help with plotting complex graphs
  • Add povray module with capability of drawing 3D shapes using vapory module.
  • Plot now has a close parameter that creates a polygon area based on a section of the curve that can then be filled. This can be the area under the curve, or above the curve, or any area created be extending the curve with additional points.
  • Update docstrings of all modules to support autogenerated documentation on generativepy.com

Usage

generativepy is a library rather an application. It provides useful functions and example code that allow you to create images and videos by writing simple Python scripts.

The library requires:

  • pycairo.
  • NumPy.
  • Pillow.
  • easy_vector.
  • moderngl (only required for 3D imaging).
  • MoviePy
  • Command line application gifsicle (only needed for GIF creation).
  • Commandline applications latex and divpng

Main functionality:

  • A simple framework for creating images, image sequences, and gifs, using pycairo.
  • Support for bitmap processing using PIL and NumPy.
  • Colour module that supports RGB, HSL and CSS colours, transparency, lerping, colormaps.
  • A simple tweening module to help with animation.
  • Geometry module for drawing shapes.
  • A graphing library for plotting 2D functions.
  • MovieBuilder supports creating video files from separate scenes.
  • Latex formula rendering
  • 3D geometry module using moderngl.
  • Math modules for vectors, matrices and abstract shapes.

Website

Visit pythoninformer.com for details:

There are also some art examples in the Generative Art section of my blog.

For detailed information of pycairo see the Computer graphics in Python ebook.

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

generativepy-24.11.tar.gz (67.7 kB view details)

Uploaded Source

Built Distribution

generativepy-24.11-py3-none-any.whl (65.2 kB view details)

Uploaded Python 3

File details

Details for the file generativepy-24.11.tar.gz.

File metadata

  • Download URL: generativepy-24.11.tar.gz
  • Upload date:
  • Size: 67.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.4.2 requests/2.25.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.9

File hashes

Hashes for generativepy-24.11.tar.gz
Algorithm Hash digest
SHA256 2ede87e50da5e468a29619f8cc9ea71541c7e76e73b4b55eb493e86d0041e5d4
MD5 ddbcef5ca0e40739588271afd1eb894e
BLAKE2b-256 3ed64351d3e2517397e07b7e3afb1cfd0bc4160d4bc3298148696ba43eec2ad3

See more details on using hashes here.

File details

Details for the file generativepy-24.11-py3-none-any.whl.

File metadata

  • Download URL: generativepy-24.11-py3-none-any.whl
  • Upload date:
  • Size: 65.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.4.2 requests/2.25.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.9

File hashes

Hashes for generativepy-24.11-py3-none-any.whl
Algorithm Hash digest
SHA256 e9eb2c5a90526001cfc37767c52568d3b1012355ab08c1edc7c3e93e52c0a0d3
MD5 3a3d4fb197982c78870c41c7ca6a4919
BLAKE2b-256 d14d01b5678f7f249cbdfc65ce009d47041feefd9cf2777c4e0ca26130016dba

See more details on using hashes here.

Supported by

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