Skip to main content

pyvcad_metamaterials

pyvcad_metamaterials is OpenVCAD's map-first TPMS and graph-lattice package for the version 3 attribute model. Builders return ordinary pyvcad nodes and keep coordinate layout in an immutable CellMap.

import pyvcad as pv
import pyvcad_metamaterials as mm

cell_map = mm.rectangular_cell_map(
    (pv.Vec3(-15.0, -15.0, -15.0), pv.Vec3(15.0, 15.0, 15.0)),
    cells=(3, 3, 3),
)

gyroid = mm.gyroid(cell_map, wall_thickness=1.2)
octet = mm.octet(cell_map, beam_radius=0.7)

Solver-free geometric characterization is available for any final node and for ideal graph unit cells:

geometry = mm.properties.characterize(
    gyroid,
    voxel_size=0.4,
    periodic_axes="xyz",
)
graph = mm.properties.characterize_graph_cell(
    "octet",
    cell_size=10.0,
    beam_radius=0.7,
)

The reports include relative density, porosity, interface area, hydraulic diameter, directional cross-sections, connectivity, mesh topology, coordination, strut length, and slenderness metrics.

Different topology bodies can share the same conformal coordinates and be clipped into sharp regions with ordinary OpenVCAD Boolean intersections and unions.

CAD-face authoring uses the optional extra:

pip install "pyvcad-metamaterials[cad]"

CadQuery shapes cross into OpenVCAD through pyvcad.CADModel.from_cadquery(...), while raw OCP objects use the optional pyvcad_metamaterials.occ adapter. Both routes use in-memory ASCII BREP data.

See the OpenVCAD guides for rectangular maps, heterogeneous regions, conformal CAD-face maps, paired faces, field-driven warps, explicit world/cell fields, diagnostics, and cell-coordinate attributes.

Release files for pyvcad-metamaterials 3.0.2

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

Built distribution (wheel)

Table of built distributions (wheels) for pyvcad-metamaterials 3.0.2
File Interpreter ABI Platform
pyvcad_metamaterials-3.0.2-py3-none-any.whl Python 3 none any Details

Release files / pyvcad_metamaterials-3.0.2-py3-none-any.whl

Download URL pyvcad_metamaterials-3.0.2-py3-none-any.whl
Size 39.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
670b8f699c7647364e1ae0092c6576932fd3bc57daf50ebaeec4ba9c41a2d529
BLAKE2b-256 checksum
How to use checksums
887181fe4f0e2074a059004cdbffddc4a9e35af83f019fc829acbb0334c4946c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.2

Release history Release notifications | RSS feed

3.1.0

1 release file

This release

3.0.2 This release

1 release file

3.0.1

1 release file

3.0.0

1 release file

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