Skip to main content

A volume modeler computation-oriented. Include rendering bindings.

Project description


Volmdlr

A computations-oriented python VOLume MoDeLeR with STEP support for import and export

Description

Volmdlr is a python volume modeler used as a CAD platform. With it, you can easily create 3D models from python code. Check the examples to see what you can do with this library.

A casing is defined by a 2D contour formed with the primitive RoundedLineSegment2D. This contour is offset by the casing width.


A Sweep is pipes, created with Circle2D/Arc2D which is contained in a Contour2D. You have to create the neutral fiber, i.e., the pipe’s road, with the primitive RoundedLineSegment3D.


A polygon is defined out of points. Random points are sampled and the tested whether they are inside or outside the polygon. They are plotted with the Matplotlib binding MPLPlot with custom styles: - red if they are outside, - blue if they are inside


A 3D B-spline surface split by a 3D B-spline curve.


Features

  • Generate 2D and 3D geometries from python
  • Handles complexe geometries : B-spline curves and surfaces
  • Primitives provide computational tasks : distances, belonging, union, intersections, etc.
  • STEP/STL imports and exports
  • Geometries display in your web browser with babylon.js

User Installation

pip install volmdlr
# or
pip3 install volmdlr

Dev Installation

Before using Volmdlr, be sure to have a C/C++ compiler (not necessary on Linux).
N.B : With Windows you have to download one and allow it to read Python’s code.

First, clone the package. Then, enter the newly created volmdlr repository. Finally, develop the setup.py file, and you are good to go !

git clone https://github.com/Dessia-tech/volmdlr.git

cd volmdlr

python3 setup.py develop --user
# or whatever version you are using :
python3.x setup.py develop --user

Usage

See the script folder for examples

Documentation

https://documentation.dessia.tech/volmdlr/

License

100% opensource on LGPL license. See LICENSE for more details.

Team and contributors

The project leader is Wirajan Da Silva. Volmdlr is mainly developed by the dessia company as a part of its opensource SDK, but contributions are welcomed. See CONTRIBUTING.md for details

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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

volmdlr-0.15.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

volmdlr-0.15.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.8 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

volmdlr-0.15.2-pp310-pypy310_pp73-macosx_10_9_x86_64.whl (2.7 MB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

volmdlr-0.15.2-pp39-pypy39_pp73-win_amd64.whl (3.1 MB view hashes)

Uploaded PyPy Windows x86-64

volmdlr-0.15.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

volmdlr-0.15.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.8 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

volmdlr-0.15.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl (2.7 MB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

volmdlr-0.15.2-cp311-cp311-win_amd64.whl (3.2 MB view hashes)

Uploaded CPython 3.11 Windows x86-64

volmdlr-0.15.2-cp311-cp311-win32.whl (3.1 MB view hashes)

Uploaded CPython 3.11 Windows x86

volmdlr-0.15.2-cp311-cp311-musllinux_1_1_x86_64.whl (9.2 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

volmdlr-0.15.2-cp311-cp311-musllinux_1_1_i686.whl (8.9 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

volmdlr-0.15.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.7 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

volmdlr-0.15.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (8.4 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

volmdlr-0.15.2-cp311-cp311-macosx_10_9_x86_64.whl (2.9 MB view hashes)

Uploaded CPython 3.11 macOS 10.9+ x86-64

volmdlr-0.15.2-cp310-cp310-win_amd64.whl (3.2 MB view hashes)

Uploaded CPython 3.10 Windows x86-64

volmdlr-0.15.2-cp310-cp310-win32.whl (3.1 MB view hashes)

Uploaded CPython 3.10 Windows x86

volmdlr-0.15.2-cp310-cp310-musllinux_1_1_x86_64.whl (8.7 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

volmdlr-0.15.2-cp310-cp310-musllinux_1_1_i686.whl (8.4 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

volmdlr-0.15.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.2 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

volmdlr-0.15.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (7.9 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

volmdlr-0.15.2-cp310-cp310-macosx_10_9_x86_64.whl (2.9 MB view hashes)

Uploaded CPython 3.10 macOS 10.9+ x86-64

volmdlr-0.15.2-cp39-cp39-win_amd64.whl (3.2 MB view hashes)

Uploaded CPython 3.9 Windows x86-64

volmdlr-0.15.2-cp39-cp39-win32.whl (3.1 MB view hashes)

Uploaded CPython 3.9 Windows x86

volmdlr-0.15.2-cp39-cp39-musllinux_1_1_x86_64.whl (8.7 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

volmdlr-0.15.2-cp39-cp39-musllinux_1_1_i686.whl (8.5 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

volmdlr-0.15.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.3 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

volmdlr-0.15.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (7.9 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

volmdlr-0.15.2-cp39-cp39-macosx_10_9_x86_64.whl (2.9 MB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

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