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.2.tar.gz (110.8 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.2-cp39-abi3-win_amd64.whl (341.7 kB view details)

Uploaded CPython 3.9+Windows x86-64

miniacd-0.1.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (497.2 kB view details)

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

miniacd-0.1.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (483.4 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

miniacd-0.1.2-cp39-abi3-macosx_10_12_universal2.whl (881.9 kB view details)

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

File details

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

File metadata

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

File hashes

Hashes for miniacd-0.1.2.tar.gz
Algorithm Hash digest
SHA256 1e25635f45da03fc451dbf19f5f24763fb3d54bd001fb9ca36b5f9ba5bdf2da2
MD5 b0431c1fc90f79bdb9157b08d56da074
BLAKE2b-256 d56ed61d41185293d8b3d648fbe0ba7439980a3f5e4abde58c6f33d1681de265

See more details on using hashes here.

File details

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

File metadata

  • Download URL: miniacd-0.1.2-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 341.7 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.2-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 df8bbd6e13e98642b3982e7e6ad3d09f5f5c0594bec596ed4ad9ec27147ad7b2
MD5 71c3222d2d4fd6cb5edc188be45eca17
BLAKE2b-256 69789630b6b9cd21786834b77ec0fa5d1be16c66fb46cd39551babf81b26a9f4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for miniacd-0.1.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1710194f2f1a9c47be89d1aeeff1968657813915518acceb43fe313f91048927
MD5 34a06471f0d8dfe4c552df2c7c937693
BLAKE2b-256 d678b2a4c7020cd7691ad2bd83007fcf657c4a3a4be484e5ff2da7dbc1790ed1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for miniacd-0.1.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 879da48fc265da87888275299818e21dc944fe29cad4b32ed803420e347102cd
MD5 8bc69bf1f6ec6339a672e07950854d3c
BLAKE2b-256 0acc57509b798a9df8117e6fec65ddf9874f76e88c9d27883168b4e786973ad2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for miniacd-0.1.2-cp39-abi3-macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 6a0fb36a539d28516759d3cbe08284861ded5f22fe01bbdd738a12d66b8a300a
MD5 4e2b2097ad502dec90d73171a21dac39
BLAKE2b-256 d1fe85833f016e4847429945d8229369374b43f3d2fbf16bc86c4f3de9887f0d

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