A very simple implementation of Bresenham algorithm implementations
Project description
Simple Bresenham implementation
This is a very simple Bresenham implementation for enumerating pixels along a line including a very simple anti aliased version. It's the felt infinite implementation out there and has been implemented during enhancement of a tomography reconstruction library for personal use.
Dependencies
numpy >= 1.25
Installation
pip install pybresenham-tspspi
Usage
Simple lines
import matplotlib.pyplot as plt
import numpy as np
from bresenham.bresenham import trace_line
fig, ax = plt.subplots()
img = np.zeros((51, 21))
for pt in trace_line((-25,-10),(10,10)):
img[int(pt[0]) + 25, int(pt[1]) + 10] = 1
ax.imshow(img)
Simple lines using callbacks
from bresenham.bresenham import trace_line
def mycallback(point):
print(f"Point at {point[0]} x {point[1]}")
trace_line((-25,-10),(10,10),mycallback)
Antialiased lines
import matplotlib.pyplot as plt
import numpy as np
from bresenham.bresenham import trace_line_antialiased_it
fig, ax = plt.subplots()
imgaa = np.zeros((51, 21))
for pt, weight in trace_line_antialiased_it((-25,-10),(10,10)):
imgaa[int(pt[0]) + 25, int(pt[1]) + 10] = weight
ax.imshow(imgaa)
Antialiased lines using callbacks
from bresenham.bresenham import trace_line_antialiased
def mycallback(point, weight):
print(f"Point at {point[0]} x {point[1]} with weight {weight}")
trace_line_antialiased((-25,-10),(10,10),mycallback)
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
File details
Details for the file pybresenham-tspspi-0.0.2.tar.gz
.
File metadata
- Download URL: pybresenham-tspspi-0.0.2.tar.gz
- Upload date:
- Size: 3.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.8.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d3df4a612c21e1883d486800f5e9f1ecccbe53ee22e9c09731fccf64dacc96c |
|
MD5 | 0f4b4e3c7ac629c30b51bc35b78999fd |
|
BLAKE2b-256 | 931de72be66857b78b1a79c7ff1695e3e0603dbec6da1735c4a0dbfa88301291 |
File details
Details for the file pybresenham_tspspi-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: pybresenham_tspspi-0.0.2-py3-none-any.whl
- Upload date:
- Size: 3.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.8.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b927951ce5298006160821066c69355ccafdf83fa6f3d68add985b497f8d13ad |
|
MD5 | cfc0246f564750080dd4852121740a8c |
|
BLAKE2b-256 | 828156c8b872d10c377210b1f83617a47ad958e4b01e5b0f4428cc39bf0838f4 |