Drawing utilities for generating geometric patterns and grids using Pillow and aggdraw
Project description
lambda-draw-tools
Drawing utilities for generating geometric patterns, grids, and wave-based line art using Pillow and aggdraw.
Install
pip install lambda-draw-tools
Quick start
Hexagon grid
from lambdawaker.draw.grid.hexagon_grid import create_hexagon_grid
img = create_hexagon_grid(
width=600,
height=600,
hexagon_size=40,
thickness=2,
angle=0,
color="#4B0082",
bg_color=(255, 255, 255, 0),
)
img.show()
Angled parallel lines
from lambdawaker.draw.waves.parallel_lines import create_parallel_lines
img = create_parallel_lines(
width=800,
height=600,
spacing=24,
thickness=2,
angle=35,
color="midnightblue",
bg_color=(255, 255, 255, 0),
)
img.show()
Project Structure
The project is organized into several packages under lambdawaker.draw, each serving a specific purpose:
-
lambdawaker.draw.grid: Contains functions to generate grid-based patterns.shapes_grid.py: Creates grids of arbitrary shapes (circles, squares, etc.).hexagon_grid.py: Generates hexagonal tiling grids.traingles_grid.py: Generates equilateral triangle tiling grids.concentric_polygins.py: Draws concentric polygons.simple_shapes.py: Helper functions for drawing basic shapes like circles, squares, triangles, polygons, and stars.
-
lambdawaker.draw.waves: Provides tools for drawing wave-like patterns.parallel_lines.py: Draws parallel lines at a specified angle.parallel_sin.py: Draws parallel sine waves.square_wave.py: Draws parallel square waves.parallel_sawtooth.py: Draws parallel sawtooth waves.
-
lambdawaker.draw.header: Utilities for creating image headers with decorative bottom edges.sin_header.py: Header with a sine-wave bottom edge.curved_header.py: Header with a curved bottom edge.square_header.py: Simple rectangular header.
-
lambdawaker.draw.color: Color manipulation and generation tools.HSLuvColor.py: A class for handling colors in the HSLuv color space.generate_color.py: Functions for generating random colors.generate_from_color.py: Functions for generating color palettes (complementary, triadic, etc.) from a base color.visualization.py: Tools for visualizing color palettes.utils.py: Utility functions for color math and parsing.
-
lambdawaker.draw.shapes:concentric.py: Containsrotating_polygonsfor drawing concentric rotating polygons.
Requirements
- Python 3.8+
- Pillow >= 9.0
- aggdraw >= 1.3.16.post1
Notes
- On some platforms,
aggdrawmay require build tools if a prebuilt wheel isn’t available. - The library exposes convenience creators like
create_hexagon_gridandcreate_parallel_lines, as well as lower-leveldraw_*functions that render into an existingaggdraw.Drawcontext.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lambdawaker_draw_tools-0.1.3.tar.gz.
File metadata
- Download URL: lambdawaker_draw_tools-0.1.3.tar.gz
- Upload date:
- Size: 77.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e70969aa4188a3cae650dad31a9782a8af051ab6fe821e18142647b92695a68
|
|
| MD5 |
f49f8d823607cfc26fd86f4c458198be
|
|
| BLAKE2b-256 |
75396694b979e162b1290df0460a11ee696edc1c2f0a56114b958fb0b952a748
|
File details
Details for the file lambdawaker_draw_tools-0.1.3-py3-none-any.whl.
File metadata
- Download URL: lambdawaker_draw_tools-0.1.3-py3-none-any.whl
- Upload date:
- Size: 77.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
14f24f69ba3ab85ff7e127c926325634b39b785f4fcb9177d842265d03dcf412
|
|
| MD5 |
926dc0f21a285cdac5d8acee0d170e6b
|
|
| BLAKE2b-256 |
fac91825162dc27569417418cd5084fb4690d3549b8b8667b0e9a7303e45e324
|