Skip to main content

NURBS 2D/3D curve and surface evaluation library in native Python

Project description

DOI RTD TRAVISCI APPVEYOR LANDSCAPEIO WAFFLEIO

Description

NURBS-Python provides Non-Uniform Rational B-Spline (NURBS) surface and 2D/3D curve data structures and computation algorithms in native Python. The library is fully object-oriented and does not depend on any external libraries.

Features

The package contains 4 modules:

  • geomdl.BSpline contains Non-Uniform B-Spline (NUBS) evaluation and storage functionality

  • geomdl.NURBS contains Non-Uniform Rational B-Spline (NURBS) evaluation and storage functionality

  • geomdl.CPGen contains simple control points grid generation algorithms

  • geomdl.utilities contains helper functions for generating and manipulating knot vectors and control points

geomdl.BSpline and geomdl.NURBS modules contain 3 classes for geometric evaluation:

  • Curve for evaluating 3D curves

  • Curve2D for evaluating 2D curves

  • Surface for evaluating surfaces

geomdl.CPGen module contains 2 classes for grid generation:

  • Grid for generating inputs for geomdl.BSpline.Surface class

  • GridWeighted for generating inputs for geomdl.NURBS.Surface class

Examples

Please see the Examples repository for more details and example scripts on how to use NURBS-Python.

Visualization

NURBS-Python comes with an experimental visualization module, geomdl.visualization, for plotting the generated 2D/3D curves and surfaces directly.

Shapes

Starting from NURBS-Python v3.1, a new experimental module geomdl.shapes is shipped with the package. The aim of this module is providing an easy way to generate the most common curves and surfaces, such as circles and cylinders.

Further Reading

License

NURBS-Python is licensed under The MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

NURBS_Python-3.1.2-py2.py3-none-any.whl (45.8 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file NURBS_Python-3.1.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for NURBS_Python-3.1.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1dd040c95e699f3d0f616d863fbacca45b5889610ecd25c6f1a1b397bd2a6433
MD5 dd3c56d62d360161f9251805a22544f7
BLAKE2b-256 ca6689d64f1cee3577540ddcca6c271210f09c89a900faed5e34310fe44dd492

See more details on using hashes here.

Supported by

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