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.2.0-py2.py3-none-any.whl (46.7 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

File hashes

Hashes for NURBS_Python-3.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 738db56893d4bdabdd793c1c18bc0db9bf9f81a1d3ae0e32d9bcbf4a59518adf
MD5 d4e792bd1b235654e47d5e5abfb9a5a6
BLAKE2b-256 24a59a1d7db49e2f12ead1ba5d0e86d57a28908bc75b1bcd1a3074e19df464f6

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