NURBS curve and surface evaluation library in pure python
Project description
Introduction
NURBS-Python (geomdl) provides fully object-oriented Non-Uniform Rational B-Spline (NURBS) surface and curve data structures and extensible advanced computation algorithms in pure python. It allows users to directly visualize the computed curves and surfaces using various visualization libraries. Additionally, it comes with a surface generator.
Features
NURBS-Python consists of the following modules and components:
Core library
Exchange module
Visualization component
Shapes component
Core Library
The core library is responsible for data storage and evaluation. It is capable of handling B-Spline (NUBS) and NURBS curves and surfaces (single via geomdl.BSpline and geomdl.NURBS, multiple via geomdl.Multi modules). It provides an abstraction layer for easy extensibility (geomdl.Abstract), allows a variety of customizations and helper functionality, such as surface (geomdl.CPGen module) and uniform knot vector (geomdl.utilities.generate_knot_vector) generators.
Exchange Module
geomdl.exchange module can export control points and evaluated points of the Curve and Surface objects in common formats such as CSV, VTK, OBJ, OFF and STL.
Visualization Component
geomdl.visualization component contains customizable classes for plotting curves and surfaces directly.
Shapes Component
geomdl.shapes component provides an easy way to generate the most common curves and surfaces, such as circles and cylinders.
Further Reading
Github repository: https://github.com/orbingol/NURBS-Python
Documentation: http://nurbs-python.readthedocs.io/
License
NURBS-Python is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for geomdl-4.0b8-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1644bd16e37fda3bc61eb2d2386ccef54ed1747a7418812ade32c101c62017af |
|
MD5 | 092dbc209eb8246df30cf8130af8183f |
|
BLAKE2b-256 | 69da3df97a4be1b980f4d0c5c72ca23e8962672e6214f537fc7c011376a105a0 |