~torresjrjr/Bezier.py

➰ Create Bezier curves in Python
Update README.md
056b6cd7 — Byron Torres 2 years ago
Update README.md

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~torresjrjr/Bezier.py
read/write
git@git.sr.ht:~torresjrjr/Bezier.py

You can also use your local clone with git send-email.

#Bezier.py

Create Bezier curves in Python

#Preview plots with matplotlib

An assortment of Bezier curves plotted with matplotlib.pyplot

14-point 3D Bezier curve:

14-point 3D Bezier curve

#Usage

Save the main file Bezier.py into your local directory to import into your python code. Import Bezier and numpy and use. Bezier only has 1 class for now, so you can use this snippet:

from Bezier import Bezier
import numpy as np

Create a Bezier curve with parameter t and a numpy array of inital points points1 of any dimension. Here's a 2D example:

t_points = np.arange(0, 1, 0.01) #................................. Creates an iterable list from 0 to 1.
points1 = np.array([[0, 0], [0, 8], [5, 10], [9, 7], [4, 3]]) #.... Creates an array of coordinates.
curve1 = Bezier.Curve(t_points, points1) #......................... Returns an array of coordinates.

You can plot your creations with matplotlib.

import matplotlib.pyplot as plt

plt.figure()
plt.plot(
	curve1[:, 0],   # x-coordinates.
	curve1[:, 1]    # y-coordinates.
)
plt.plot(
	points1[:, 0],  # x-coordinates.
	points1[:, 1],  # y-coordinates.
	'ro:'           # Styling (red, circles, dotted).
)
plt.grid()
plt.show()

The result:

The resulting plot

See examples.py for more.