Skip to main content

Mesh Reducer

This project provides a Rust implementation for reading and reducing points from various 3D mesh file formats (STL, OBJ, PLY, and STEP) using a fast grid sampling method. The functionality is exposed to Python using PyO3.

Features

  • Read STL, OBJ, PLY, 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
  • PLY
  • STEP (initial implementation with future improvements expected)

Usage

Example usage in Python: click here.

Python

pip install mesh-reducer

Functions

load_mesh(file_path: Path, clusters: int) -> List[Tuple[float, float, float]]

Reduces the number of points in a mesh file using fast grid clustering.

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.

load_meshes(file_paths: List[Path], clusters: int) -> List[List[Tuple[float, float, float]]]

Reduces the number of points in multiple mesh files using fast grid clustering.

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.

Metadata

Release files for mesh-reducer 2.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mesh-reducer 2.0.2
File Size Uploaded
mesh_reducer-2.0.2.tar.gz 7.1 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for mesh-reducer 2.0.2
File
mesh_reducer-2.0.2-cp312-none-win_amd64.whl CPython 3.12 none Windows x86-64 Details
mesh_reducer-2.0.2-cp312-cp312-manylinux_2_34_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.34+ x86-64 Details
mesh_reducer-2.0.2-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
mesh_reducer-2.0.2-cp311-none-win_amd64.whl CPython 3.11 none Windows x86-64 Details
mesh_reducer-2.0.2-cp311-cp311-manylinux_2_34_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ x86-64 Details
mesh_reducer-2.0.2-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
mesh_reducer-2.0.2-cp310-none-win_amd64.whl CPython 3.10 none Windows x86-64 Details
mesh_reducer-2.0.2-cp310-cp310-manylinux_2_34_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.34+ x86-64 Details
mesh_reducer-2.0.2-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
mesh_reducer-2.0.2-cp39-none-win_amd64.whl CPython 3.9 none Windows x86-64 Details
mesh_reducer-2.0.2-cp39-cp39-manylinux_2_34_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.34+ x86-64 Details
mesh_reducer-2.0.2-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details

Total release size: 14.2 MB

Release files / mesh_reducer-2.0.2.tar.gz

Download URL mesh_reducer-2.0.2.tar.gz
Size 7.1 MB
Tags Source
SHA-256 checksum
How to use checksums
ea8f2499ebb7e609e59f42611d1559d4e08f789308d6b844a67f715c127ad331
BLAKE2b-256 checksum
How to use checksums
8af95d1c17672b612a075b897ca146279ded94e4405df53d0a6fba8d775053aa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp312-none-win_amd64.whl

Download URL mesh_reducer-2.0.2-cp312-none-win_amd64.whl
Size 550.6 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
09cfa626dd845af35cf5a86e3899e5ce0b9d798666c62afd08740f49b6e0e516
BLAKE2b-256 checksum
How to use checksums
9644636a342774952378f6ecba68997f89862b1a7e89d4e475efea77ed1e8c5e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp312-cp312-manylinux_2_34_x86_64.whl

Download URL mesh_reducer-2.0.2-cp312-cp312-manylinux_2_34_x86_64.whl
Size 646.0 kB
Tags CPython 3.12 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
2d577e4ee5c07596b475318c2e3acb5ab7d686c0fd4b19409e38a92a709018ff
BLAKE2b-256 checksum
How to use checksums
07ec1a64175e48337841327fde64b83ad2b61ee3810ee3c67c5d31d63cb8cc39
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp312-cp312-macosx_11_0_arm64.whl

Download URL mesh_reducer-2.0.2-cp312-cp312-macosx_11_0_arm64.whl
Size 576.9 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1aa6f258a3541558a8e4f665f93f8b3dbee620945381703bd310e6defcaaf266
BLAKE2b-256 checksum
How to use checksums
790c2d3c7d467e75a1153138e4e806faa0f57cbe2c2f55ae039ebb118fe3a6d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp311-none-win_amd64.whl

Download URL mesh_reducer-2.0.2-cp311-none-win_amd64.whl
Size 551.4 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
f65d48bad96f9f5cc15a00e2c314458e1c904167e059ac13330ee660c116cdd9
BLAKE2b-256 checksum
How to use checksums
07098df5301cd1a064857422411e8add73336456b7b1a21104f1eeedfc3924d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp311-cp311-manylinux_2_34_x86_64.whl

Download URL mesh_reducer-2.0.2-cp311-cp311-manylinux_2_34_x86_64.whl
Size 646.5 kB
Tags CPython 3.11 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
9c7739cd48db2d725f361e653421363df0c42c4bd8f05d1c1ff72006639c9432
BLAKE2b-256 checksum
How to use checksums
76b1845cb7395c6b1b207357c28465c72f82525a65a758c6e2e5a88e29afff19
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp311-cp311-macosx_11_0_arm64.whl

Download URL mesh_reducer-2.0.2-cp311-cp311-macosx_11_0_arm64.whl
Size 578.3 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
552fd3b78556290d90020227634b986cf01ff15b26f91d8e345db121695eb6e4
BLAKE2b-256 checksum
How to use checksums
2fa87a2c98c966bf8992490ae8bb4ead7c2a94bc78bad8702cf074f5c433ee5f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp310-none-win_amd64.whl

Download URL mesh_reducer-2.0.2-cp310-none-win_amd64.whl
Size 551.5 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
291f121bd12f84777dffc7a63aabe94155b7d753cc766b10b1018ec7306d89e1
BLAKE2b-256 checksum
How to use checksums
a424a78737ccad2dbc2c37ba03a851f2f220a2f3178e6bb6ca0f1b0b7dfce6c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp310-cp310-manylinux_2_34_x86_64.whl

Download URL mesh_reducer-2.0.2-cp310-cp310-manylinux_2_34_x86_64.whl
Size 646.7 kB
Tags CPython 3.10 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
6452b7b57d6a0b425ef9c43bb183063bc537f43fec196782faa69be2948563d7
BLAKE2b-256 checksum
How to use checksums
cfb25f13e35a0723e06b5ac685b1ab838c87987c85a6da38932c422457a758eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp310-cp310-macosx_11_0_arm64.whl

Download URL mesh_reducer-2.0.2-cp310-cp310-macosx_11_0_arm64.whl
Size 578.4 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
012ff28a501b3291b3ab2d94e4738d2c32d125bae859b3d22d50a4f5d04b3b06
BLAKE2b-256 checksum
How to use checksums
e58069818fc2bd2891d7ea14e619854a6e50902a8019179c8cfca3fe15f4df3a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp39-none-win_amd64.whl

Download URL mesh_reducer-2.0.2-cp39-none-win_amd64.whl
Size 551.8 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
5a3506eb946c4813d9cc0a82350393c5370b6342791ed370f0b4cb8e100c01b2
BLAKE2b-256 checksum
How to use checksums
05e3a773d7ba937661afbd40cf1e1af6e29f4487b6dac046e33df71ca5b31021
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp39-cp39-manylinux_2_34_x86_64.whl

Download URL mesh_reducer-2.0.2-cp39-cp39-manylinux_2_34_x86_64.whl
Size 646.9 kB
Tags CPython 3.9 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
f6ac1dcbb501639a4fa53de46538b745b1535c4d0af8c02e8dde65795c09aef2
BLAKE2b-256 checksum
How to use checksums
8a309520c6c9894b4f66f8161817e6135318d1a7f9442aeb02bda55419d9a7c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / mesh_reducer-2.0.2-cp39-cp39-macosx_11_0_arm64.whl

Download URL mesh_reducer-2.0.2-cp39-cp39-macosx_11_0_arm64.whl
Size 578.6 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2983ae939439b9484fec664d90dc71ddcdfb57e4822df08ef347f75d4454060b
BLAKE2b-256 checksum
How to use checksums
5d5a2e39315cba1b9ebb22851b228f81d90f5bb32d9d8d93a3aa3553eaacbe05
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release history Release notifications | RSS feed

This release

2.0.2 This release

13 release files

2.0.1

13 release files

2.0.0

13 release files

1.0.5

13 release files

1.0.4

13 release files

1.0.3

13 release files

1.0.2

13 release files

1.0.1

13 release files

1.0.0

13 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page