Skip to main content

Volume-based mesh proxy generator. Voxelize, marching-cubes, smooth, remesh. Fast, watertight, hands-off.

Project description

anvil-reduce

Watertight mesh proxy generator: exact narrow-band distance field, marching cubes, smooth, remesh, exact surface projection. Fast, verifiable, hands-off. Native Rust core, Python bindings via PyO3.

Install

pip install anvil-reduce

Inside DCCs:

mayapy -m pip install anvil-reduce          # Maya
hython -m pip install anvil-reduce          # Houdini
# Blender: install into the addon's bundled Python or vendor the wheel

Quick start

One-shot file pipeline (the path most pipeline TDs want):

from anvil_reduce import proxy_from_path

result = proxy_from_path(
    "hero.obj",
    "hero_proxy.obj",
    quality="balanced",          # "fast" | "balanced" | "high"
    transfer_normals=True,
)
print(f"{result['input_faces']} -> {result['output_faces']} in "
      f"{result['wall_seconds']:.2f}s")

NumPy-driven workflow:

import numpy as np
from anvil_reduce import Mesh, generate_proxy

mesh = Mesh.from_numpy(positions, indices)   # (N,3) f64, (M,3) u32
proxy = generate_proxy(mesh, quality="balanced", target_faces=20_000)
positions, indices = proxy.positions(), proxy.indices()

Quality presets

Preset voxel_res smooth remesh
fast 64 3 0
balanced 128 5 3
high 256 5 5

Override individual knobs by passing them explicitly. target_faces hits an output face budget (resolution and remesh edge length are derived from it). offset is the standoff from the input surface in voxel cells (0 = surface-exact, default 0.1, larger = looser hull); close seals gaps in open meshes; project caps the final exact projection onto the offset surface.

The output is closed, outward-wound, and free of degenerate triangles; verify with the CLI's check command.

See https://github.com/voidreamer/anvil-reduce for the full project.

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

anvil_reduce-0.2.0.tar.gz (90.6 kB view details)

Uploaded Source

Built Distributions

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

anvil_reduce-0.2.0-cp39-abi3-win_amd64.whl (935.0 kB view details)

Uploaded CPython 3.9+Windows x86-64

anvil_reduce-0.2.0-cp39-abi3-manylinux_2_28_x86_64.whl (1.1 MB view details)

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

anvil_reduce-0.2.0-cp39-abi3-manylinux_2_28_aarch64.whl (958.3 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.28+ ARM64

anvil_reduce-0.2.0-cp39-abi3-macosx_11_0_arm64.whl (921.0 kB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

File details

Details for the file anvil_reduce-0.2.0.tar.gz.

File metadata

  • Download URL: anvil_reduce-0.2.0.tar.gz
  • Upload date:
  • Size: 90.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for anvil_reduce-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7ef1764e61d94cfd2637477cbf7c11791cb7af300ce6146f8edf1f11041cdc44
MD5 ed774cf6ae98bc1a7b70637bf5a21daf
BLAKE2b-256 c76bcbeadfc092dc628ceabd11399805e608b634855195540c84db2cadd9ae98

See more details on using hashes here.

Provenance

The following attestation bundles were made for anvil_reduce-0.2.0.tar.gz:

Publisher: wheels.yml on voidreamer/anvil-reduce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file anvil_reduce-0.2.0-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: anvil_reduce-0.2.0-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 935.0 kB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for anvil_reduce-0.2.0-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 fc24b676f8656b7e10d9f17a8ce305efe73f6f1b9f34bfa1b4b7567d9a6875c8
MD5 7cd80b2745ae9344611d8a21b06a8f8b
BLAKE2b-256 530cd6c7ed75b53ac8c468d118838c57b7d65528bb2b22a8ff8eeaa9e2d1dde1

See more details on using hashes here.

Provenance

The following attestation bundles were made for anvil_reduce-0.2.0-cp39-abi3-win_amd64.whl:

Publisher: wheels.yml on voidreamer/anvil-reduce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file anvil_reduce-0.2.0-cp39-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for anvil_reduce-0.2.0-cp39-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e723cc5c9d8f30702f83f1d7a1e118573d59849616e4d158485987aad3740e7f
MD5 f4946728d24a296142ecabd25ec33d7b
BLAKE2b-256 b1d2fc8189087914243e102d3ff56cc0e1cc7672f893292b9970cdc6d682b6f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for anvil_reduce-0.2.0-cp39-abi3-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on voidreamer/anvil-reduce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file anvil_reduce-0.2.0-cp39-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for anvil_reduce-0.2.0-cp39-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f0936b5628fcebee78446f5c9096ff6a00f4cf15a4440e706cde13a499dfea9b
MD5 490ca541e6a057b3f3db81750de48e78
BLAKE2b-256 a2b3e3f2c95ed8a7bae9ff3c797b04aacb45ae385f430698aa83a7c4781ca777

See more details on using hashes here.

Provenance

The following attestation bundles were made for anvil_reduce-0.2.0-cp39-abi3-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on voidreamer/anvil-reduce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file anvil_reduce-0.2.0-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for anvil_reduce-0.2.0-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8b34fabb3d805016cfa58f084da0e142b14d0f77111789642175c6e0b266fa08
MD5 72da73e6aac6962232e4fc20e4f77d78
BLAKE2b-256 298a39c1225b3cc50316ce61fb49df463159b542ba576639610f615ab6960862

See more details on using hashes here.

Provenance

The following attestation bundles were made for anvil_reduce-0.2.0-cp39-abi3-macosx_11_0_arm64.whl:

Publisher: wheels.yml on voidreamer/anvil-reduce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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