Skip to main content

Approximate convex decomposition of 3D meshes

Project description

miniacd

MIT Apache ci python PyPI

miniacd decomposes watertight 3D meshes into convex components which aim to be a good approximation of the input shape. It is a compact and high performance implementation of the CoACD algorithm described by Wei et al. and implemented in the CoACD repository.

image

Setup

Run directly with uv:

uvx miniacd --help

Or, use pip to install into your local environment:

pip install miniacd
miniacd --help

Or, install a prerelease version:

  1. Download a recent .whl from GitHub Releases
  2. Run pip install miniacd<...>.whl (replace <...> with the actual filename)
  3. Test it: miniacd --help

Building Locally

git clone git@github.com:kylc/miniacd.git
cd miniacd

# Build the Rust library
cargo build --release

# OR build a Python wheel
pip wheel .

Usage

You can use the miniacd command to process your mesh files. It has wide support for input and output formats, provided by trimesh. A typical invocation looks like this:

miniacd input_mesh.obj --output-dir output/ --threshold 0.1

If you have more specific needs, you can use miniacd as a Python library. See cli.py for an example. You can also access the internals by using miniacd as a Rust library.

References

Xinyue Wei, Minghua Liu, Zhan Ling, and Hao Su. 2022. Approximate convex decomposition for 3D meshes with collision-aware concavity and tree search. ACM Trans. Graph. 41, 4, Article 42 (July 2022), 18 pages. https://doi.org/10.1145/3528223.3530103

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

miniacd-0.1.3.tar.gz (111.2 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

miniacd-0.1.3-cp39-abi3-win_amd64.whl (346.5 kB view details)

Uploaded CPython 3.9+Windows x86-64

miniacd-0.1.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (502.5 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

miniacd-0.1.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (487.9 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

miniacd-0.1.3-cp39-abi3-macosx_10_12_universal2.whl (891.2 kB view details)

Uploaded CPython 3.9+macOS 10.12+ universal2 (ARM64, x86-64)

File details

Details for the file miniacd-0.1.3.tar.gz.

File metadata

  • Download URL: miniacd-0.1.3.tar.gz
  • Upload date:
  • Size: 111.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.6

File hashes

Hashes for miniacd-0.1.3.tar.gz
Algorithm Hash digest
SHA256 1de790c387a1a9a8070f13f67d2527fe53833d6ae762c92cfb824446449f1b39
MD5 56e5de80860cef44e9813c5c6bc6760d
BLAKE2b-256 d32078aaaf578c3a7bfb5803c6f6e3e1cc9b40ced3f01b8ad4c847b13e056750

See more details on using hashes here.

File details

Details for the file miniacd-0.1.3-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: miniacd-0.1.3-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 346.5 kB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.6

File hashes

Hashes for miniacd-0.1.3-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 ffc3ef92e591ef429d5761243ce241c4ee40e2aaf1d740ac0f19fa42865985f0
MD5 423f6fe12c54d4bcb84b5d037ae492fe
BLAKE2b-256 cffc040dec2df124acd1aa22f70f893d73f04a8a3269959407e9fc4c9135fec9

See more details on using hashes here.

File details

Details for the file miniacd-0.1.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for miniacd-0.1.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1f1e84e70662fc1a0e436fc0ba6dd8da84f93f1bcfd8f59fef80441081d182a4
MD5 306b67dffc4572a0bd29e3789803b5f5
BLAKE2b-256 f11ca802cd2869e20bb368c1ddee247367112bfca36205917d60599510dab7b5

See more details on using hashes here.

File details

Details for the file miniacd-0.1.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for miniacd-0.1.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 718cbe9f7d2ef17d15ba10f83976dfd98b0ebc5ff4dd997675278d77f7a37604
MD5 d56fa5cf7f0f3ad1e388892ab4aa83d3
BLAKE2b-256 3721ee32c5760737d70dc650de152b985d195df3d37ea73b72fff7d52654c0bf

See more details on using hashes here.

File details

Details for the file miniacd-0.1.3-cp39-abi3-macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for miniacd-0.1.3-cp39-abi3-macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 ae11f4f7c10a1ea6fdf8bdcedb332ca6e7ea54c0306622f039b9c4b39c2b30bf
MD5 e288bedeff65f6c34ae234cbdb0fb19a
BLAKE2b-256 404cf785583cf7cc9554f64e3371878b84060bad90199cd63ad4f3e238169b25

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page