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

Uploaded Python 2 Python 3

File details

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

File metadata

File hashes

Hashes for NURBS_Python-3.2.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f131282db9cc4999f61b3cbf4b52207e6747792386a6781c716bb0949b9ca049
MD5 51e779e174c7bc7c9eb2df3dee2df126
BLAKE2b-256 0e671b80fa8c70fe7e5cb0d9a49de446adf693317a3bbb215cfc5b1d0e07686e

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