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.1.tar.gz (111.3 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.1-cp39-abi3-win_amd64.whl (341.1 kB view details)

Uploaded CPython 3.9+Windows x86-64

miniacd-0.1.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (496.7 kB view details)

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

miniacd-0.1.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (482.1 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

miniacd-0.1.1-cp39-abi3-macosx_10_12_universal2.whl (877.0 kB view details)

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

File details

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

File metadata

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

File hashes

Hashes for miniacd-0.1.1.tar.gz
Algorithm Hash digest
SHA256 b816f3b79fa0b88ad1b1834c3beb21c9ed190ff055c04efb44e54cb7e1eb7fe3
MD5 2b0acc485f16fb4a4ec6a0bae2c5fe34
BLAKE2b-256 d0d889108accefc93318fdb3a4a4261765fedc1c177a4d1f6f7f87f589fd0462

See more details on using hashes here.

File details

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

File metadata

  • Download URL: miniacd-0.1.1-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 341.1 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.1-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 2f72f27ec2594e2718efa211fd106626de85a258f14919f113df1ac3a7ca4cef
MD5 0c849223db15e26b3f42af1a691ea556
BLAKE2b-256 6f2fa3fc8f699b83efa143d9929fb8b0c36f399195c1e12fabafc0d33d443193

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for miniacd-0.1.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6791f9d5ad9fa5b02e1b810750ba3bb4a239d10d6e9eb1d560d526a6d877cce0
MD5 5074aae8591b34c06c8c48c905ba044e
BLAKE2b-256 6c42c75df4bdd3250751e3e68f7f45d9a720845344f2d4bf3c5c38393973cae6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for miniacd-0.1.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 29e007c5f1b1e2539568e0bdda301db9ae7874e2f92d49027a10b05abffe8b48
MD5 26cadace6aa5b3401f6b69ea81d39672
BLAKE2b-256 7ffe1ca7cbf09a1d5998f6cf3416318099029a0811ea89dc00cf6cbf4af83ae9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for miniacd-0.1.1-cp39-abi3-macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 c0f61ca811c8043e501f04b4cd15e93e9f463984132a45f5f96dc3548ad65256
MD5 d998d03527a6460e8691be7a68a6c37a
BLAKE2b-256 6276e3a6f1869a45c637b32268e443d4b8c790c835b5d3c93f37e25f0034fb30

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