A python library to compute the planar cross-section of a 3D mesh.
Given a 3D mesh and a cut plane, this computes a (set of) polyline(s) that results from cutting the mesh with the plane.
Requires python and numpy. Mayavi is used for visualisation in the examples.
Usage
Run the examples with
python3 examples/0_cross_section.py
Given
In [17]: verts
Out[17]:
array([[ 1.6315 , -0.1505 , 0. ],
[ 1.6376 , -0.1516 , 0. ],
[ 1.6493 , -0.1518 , 0. ],
...,
[ 1.62088 , -0.0263264, -0.0716966],
[ 1.63381 , -0.0500889, 0.0726852],
[ 1.63381 , -0.0500889, -0.0726852]])
In [20]: faces
Out[20]:
array([[1530, 1337, 1338],
[4549, 4725, 4548],
[2940, 2950, 3787],
...,
[3107, 3438, 3439],
[2263, 2281, 2262],
[3116, 3119, 4171]])
In [21]: meshcut.cross_section(verts, faces, plane_orig=(1.2, -0.125, 0),
....: plane_normal=(1, 0, 0))
Out[21]:
[array([[ 1.20000000e+00, -1.28957692e-01, -1.02180769e-01],
[ 1.20000000e+00, -1.37182869e-01, -8.06541833e-02],
[ 1.20000000e+00, -1.36863816e-01, -6.95125000e-02],
Thanks
Thanks to @superzanti for the STL use case and the sphere model.
Metadata
Release files for meshcut 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| meshcut-0.3.0.tar.gz | 6.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| meshcut-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.9 kB
Release files / meshcut-0.3.0.tar.gz
| Download URL | meshcut-0.3.0.tar.gz |
|---|---|
| Size | 6.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c07b5ceac38ecd13987cf20aadc099dcfcf7103856ddff7cfd87fa9f05057f21
|
|
BLAKE2b-256 checksum How to use checksums |
1d315e38fa16d2f305fbcaff40dac1cd1f6a218b550488ba1abae438bbbb7522
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10
|
Release files / meshcut-0.3.0-py3-none-any.whl
| Download URL | meshcut-0.3.0-py3-none-any.whl |
|---|---|
| Size | 7.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c9134fdffb6e635cfbfd6bc9f59c8b456f4492f68b6b1431dfc37f9a5ca986dc
|
|
BLAKE2b-256 checksum How to use checksums |
783099713e13e6b0fc69e82ff546ea67028224083ed66410ca026f54919262b2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10
|