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

Uploaded Python 2 Python 3

File details

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

File metadata

File hashes

Hashes for NURBS_Python-3.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e1cdfae5392b49d95ec84e88f42b95f6bbd85a548c6795a0168b0908b1a26906
MD5 893ed5a5b0b554480a2198981b81f60b
BLAKE2b-256 0ed121020cf2785bfd559ef6e06efb35c73b5e43dec0937731d86a33f76e3380

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