A Python package for reading STL, OBJ files and extracting points
Project description
Mesh Reducer
This project provides a Rust implementation for reading and reducing points from various 3D mesh file formats (STL, OBJ, and STEP) using a fast grid sampling method. The functionality is exposed to Python using PyO3.
Features
- Read STL, OBJ, and STEP files and extract points.
- Reduce the number of points using a fast grid sampling method.
- Python bindings for seamless integration with Python projects.
Supported Formats
- STL
- OBJ
- STEP (initial implementation with future improvements expected)
Usage
Example usage in Python: click here.
Python
pip install mesh-reducer
Functions
reduce_mesh_points(file_path: Path, clusters: int) -> List[Tuple[float, float, float]]
Reads a mesh file (STL, OBJ, STEP) and reduces the number of points.
Args:
- file_path (Path): Path to the mesh file.
- clusters (int): Number of clusters to reduce the points to.
Returns:
List[Tuple[float, float, float]]: A list of tuples containing the reduced points.
reduce_mesh_points_multi(file_paths: List[Path], clusters: int) -> List[List[Tuple[float, float, float]]]
Reads multiple mesh files (STL, OBJ, STEP) and reduces the number of points in each file.
Args:
- file_paths (List[Path]): List of paths to the mesh files.
- clusters (int): Number of clusters to reduce the points to.
Returns:
List[List[Tuple[float, float, float]]]: A list of lists of tuples containing the reduced points for each file.
License
This project 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 Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mesh_reducer-1.0.2.tar.gz.
File metadata
- Download URL: mesh_reducer-1.0.2.tar.gz
- Upload date:
- Size: 7.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
604c5030f61d60f053fef7df42bcac8c1314e53ae822d75cb5ae06a70f523ce9
|
|
| MD5 |
a8e3e80d6a99014b55710e78accd1e3f
|
|
| BLAKE2b-256 |
f1e06ae8e76e889340f446c829ba9afe38a9305a9788b1fa28a75b6032782753
|
File details
Details for the file mesh_reducer-1.0.2-cp312-none-win_amd64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp312-none-win_amd64.whl
- Upload date:
- Size: 484.1 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9f979689e79d9bf9efab6f0f71f92d10fce71338826c4b3acb723fb56db9403
|
|
| MD5 |
44bb583f44dc88c1e9f63af391ba985a
|
|
| BLAKE2b-256 |
48c9461d6540287c96f1d942974e0a962b206067e79a47c87182c4766b170d4e
|
File details
Details for the file mesh_reducer-1.0.2-cp312-cp312-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp312-cp312-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 580.7 kB
- Tags: CPython 3.12, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6dbde3160fbe9aa06526e129872a9508ddf1e7b6b813c189744123cf2aba2125
|
|
| MD5 |
fdeb80291b8a3826ab11e869e3380377
|
|
| BLAKE2b-256 |
4d7126e162edcd02db28fe846589724e348b185ae5d91ee1756828ae538c99ed
|
File details
Details for the file mesh_reducer-1.0.2-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 517.7 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2747d1768bc8cae802500c81492b7e2b5c23b4435ece2118f0dae520f7cfae33
|
|
| MD5 |
64c87c05157e2994298e012b6a9c29eb
|
|
| BLAKE2b-256 |
3f5f31a5252f35d9f665b2bacb93320da449ba0ca814481f214355a8a0221e10
|
File details
Details for the file mesh_reducer-1.0.2-cp311-none-win_amd64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp311-none-win_amd64.whl
- Upload date:
- Size: 484.8 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ec797409dbcbc293d04aa8cf5bf25f6d59a8e361e7f836078a32525fb2d561f2
|
|
| MD5 |
089d00cd9bbf791d6771537c0fbf51e3
|
|
| BLAKE2b-256 |
a4aa5eece1ffac3709f8bf2d3f02256c25be9f1070bdafaf7dc136d715e097d6
|
File details
Details for the file mesh_reducer-1.0.2-cp311-cp311-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp311-cp311-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 581.4 kB
- Tags: CPython 3.11, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2c8e312fc7aef9bde2fb9b9cd01e191442ec127f4ebad8f3cafc7805b36de954
|
|
| MD5 |
a15b7e5132c69bddbe55148b2abfb8d7
|
|
| BLAKE2b-256 |
c5afb7cf28784828d4c7072a3731c1dd88d25efa708436f5714705e59e2b58dc
|
File details
Details for the file mesh_reducer-1.0.2-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 518.2 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
94f71578d8fe9f2279ea35d8cd98c4548747ff566af3285de563bfae0c216060
|
|
| MD5 |
c17796f6ab57ad16900485ce79873fdd
|
|
| BLAKE2b-256 |
d8ef009c5f63e9979019e9a8a6de8137c816c4cc69f54a221d49c72d5ff3e6b5
|
File details
Details for the file mesh_reducer-1.0.2-cp310-none-win_amd64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp310-none-win_amd64.whl
- Upload date:
- Size: 484.8 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
97865f13542ef93c1bc3231f11b32efe5c37dbb3dd067ead9491279fae90bcf3
|
|
| MD5 |
bb66e5c91ea9283ba1217a6ae67c8fa5
|
|
| BLAKE2b-256 |
8524265a708482b0e54821f2d5eb4d2bfd69e174c28217079aa9a65cd9b3a5ec
|
File details
Details for the file mesh_reducer-1.0.2-cp310-cp310-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp310-cp310-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 581.5 kB
- Tags: CPython 3.10, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0b74f54290184be4c2996bfea0f22a5d79b0efc0d6b3603d9cf4eab44ee74350
|
|
| MD5 |
6891b7959062be331e61bb0b39ddc256
|
|
| BLAKE2b-256 |
8ba1ab8dbed90e4db688bbbedcaa2472236367427b26d320aead0bdd18cd07b4
|
File details
Details for the file mesh_reducer-1.0.2-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 518.2 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
66c58a88fff9ea6a459270f020a1b577459286924b5a5f82368f64d002f25ac0
|
|
| MD5 |
a68d6c85bfb0a7f65db01fe5965a8160
|
|
| BLAKE2b-256 |
efb9c0ffe1ab4843e51120f55378fb45f31e60551751ca5c0a7a78b9eb87a9c3
|
File details
Details for the file mesh_reducer-1.0.2-cp39-none-win_amd64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp39-none-win_amd64.whl
- Upload date:
- Size: 484.8 kB
- Tags: CPython 3.9, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3f206809c96d2345ac9d528e1f03d33a7ebf93f1b90d66ab85c18a929408cd8f
|
|
| MD5 |
a92a6f5dd30311f6c82d2b7614faf576
|
|
| BLAKE2b-256 |
8be50c0918f95d7146beff5c633d750c1c93c68b1cb338f892d221e59ebfe59e
|
File details
Details for the file mesh_reducer-1.0.2-cp39-cp39-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp39-cp39-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 581.5 kB
- Tags: CPython 3.9, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e6b2159476911705460fa70709d4b3b43ee90797c93f8779766a7ff45b9dddf9
|
|
| MD5 |
da7baaaa5bb0fafbdf1348317fff0880
|
|
| BLAKE2b-256 |
9856db55449ba21c2542d47661c86ce2c95f6a4045486e9c178121fa7ec5e019
|
File details
Details for the file mesh_reducer-1.0.2-cp39-cp39-macosx_11_0_arm64.whl.
File metadata
- Download URL: mesh_reducer-1.0.2-cp39-cp39-macosx_11_0_arm64.whl
- Upload date:
- Size: 518.3 kB
- Tags: CPython 3.9, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d4cd4e1e9b457aedffb82d691b853f99c8cb2850ff1c15b3599449afe3daa325
|
|
| MD5 |
a8500530e74970ba6585314239dce6f2
|
|
| BLAKE2b-256 |
9d9e3ba91491e87131f35bcdef6aff440cb1bbab45bf2b1d7e7080d9113b9b1e
|