geomdl v5.0b1
Pre-releaseI am happy to announce the first beta release of NURBS-Python (geomdl) v5. On the user API side, there are minimal changes and you might not even notice them. On the other hand, some modules are refactored and optimized and these changes might affect the developers who use the abstract classes to extend the library.
Moreover, our paper was just accepted from SoftwareX journal and it will be published very soon. I will update the links when it is online.
Changes/improvements for geomdl v5.0b1 release:
B-Spline and NURBS API
- Simplified
abstract
module and moved all abstract classes to their relevant modules (developer API change) - Removed
curvept
andsurfpt
methods. Useevaluate_single
instead. (user API change) - Added an option to enable/disable knot vector normalization. Initialize the class with
normalize_kv=False
to disable knot vector normalization. - Added B-spline and NURBS volume support with visualization,
BSpline.Volume
andNURBS.Volume
- Refactored
convert
module to improve reusability and add support to volumes (no API change)
Importing and exporting data (Exchange module)
- Refactored
exchange
module to improve reusability (no API change) - Rhino file export and import options,
export_3dm
and,import_3dm
inexchange
module - Added
exchange.export_vmesh
for exporting NURBS volumes - Add Jinja2 template support for
exchange.import_txt
(no API change)
Utilities module
- Update the name of
utilities.check_uv
function toutilities.check_params
(user API change) - Refactored
utilities
module and moved some functions tolinalg
module (user API change)
Visualization
VisMPL.VisSurfTriangle
is now an alias forVisMPL.VisSurface
(no API change)
New modules and features
fitting
module for curve and surface global interpolation + approximation (fitting)construct
module for constructing surfaces and volumes + extracting surfaces and curveslinalg
module (generated by splittingutilities
module)VisVoxel
andVisVolume
classes for volume visualizationVisVTK
visualization module
Next steps
- The class and function references are pretty much complete but the documentation in general still needs some improvement.
- Refactor
evaluators
module and complete adding the fundamental algorithms; such as refinement, degree reduction, etc.
I also would like to announce the .3dm importer/exporter module rw3dm. Unfortunately, there are no binary releases for the moment, since I couldn't find time to set up Travis and AppVeyor to generate compiled binaries automatically. However, the module should work fine if you follow the installation steps as described on rw3dm readme file.
Please don't hesitate to open a ticket on the issue tracker if you are having issues with the latest release.
Download & Install
PyPI: https://pypi.org/project/geomdl/5.0b1/
Anaconda Cloud: https://anaconda.org/orbingol/geomdl