Skip to main content

cadaclysm

Read CAD files and model exact solids from Python.

  • The reader, import cadaclysm, opens STEP (AP203/214/242), IGES, ACIS .sat, Rhino .3dm, OCCT .brep, IFC, JT and OpenSCAD files. It walks their assembly tree, meshes what they draw and writes glTF and OBJ.
  • The kernel, from cadaclysm import blacksmith (or import cadaclysm_blacksmith), builds exact B-rep solids (extrude, revolve, sweep, loft, join, cut, fillet, chamfer, shell) and writes them as STEP.

Install

pip install cadaclysm            # the reader and the kernel, with their libraries
pip install "cadaclysm[numpy]"   # plus numpy, for meshes as arrays

Wheels for Windows x64, macOS 11+ (Apple silicon and Intel), and Linux x64 and arm64 (glibc 2.17+); Python 3.9 or later. The wheel carries the libraries and the wrappers of one release, so the two always match.

Build a part, then read it back

from cadaclysm.blacksmith import Axis, Profile, Selector, Workplane

plate = Workplane.xy().extrude(Profile.rect(120, 80), 14).solid()
boss = (Workplane.from_solid(plate)
        .faces(Selector.max(Axis.Z)).workplane()
        .extrude(Profile.circle(22), 26).solid())
part = plate.join(boss).cut(Workplane.xy().extrude(Profile.circle(11), 60).solid().translate(0, 0, -10))
part.step("plate.stp")
import cadaclysm

with cadaclysm.open("plate.stp") as scene:
    for node in scene.walk():
        print("  " * node.depth + node.label, f"[{node.kind}]")
    for placement in scene.placements:           # meshes need numpy
        print(placement.geometry.label, placement.geometry.mesh.triangle_count, "triangles")
    scene.save("plate.glb")

Licence

Everything works without a licence; a notice is printed to stderr on every open and every export. A licence file removes it: set CADACLYSM_LICENSE (a path or the text), put cadaclysm.lic in the working directory, or load it from code:

import cadaclysm
from cadaclysm import blacksmith

cadaclysm.license("cadaclysm.lic")
blacksmith.license("cadaclysm.lic")

The libraries are proprietary; the EULA ships in this package's licence file. Licences: https://cadaclysm.blitter.studio/license

The wheel's own libraries and schema are used unless CADACLYSM_LIBRARY, CADACLYSM_BLACKSMITH_LIBRARY or CADACLYSM_SCHEMAS is set in the environment -- unset those when moving from the SDK, since they override the wheel's own files.

Documentation: https://cadaclysm.blitter.studio/docs/python.html. The C API and the C#, Go, Java and Node wrappers are in the SDK: https://github.com/rdeioris/cadaclysm-sdk

Release files for cadaclysm 0.4.0

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

Built distributions (wheels)

Table of built distributions (wheels) for cadaclysm 0.4.0
File
cadaclysm-0.4.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
cadaclysm-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
cadaclysm-0.4.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
cadaclysm-0.4.0-py3-none-macosx_11_0_universal2.whl Python 3 none macOS 11.0+ universal2 (ARM64, x86-64) Details

Total release size: 21.8 MB

Release files / cadaclysm-0.4.0-py3-none-win_amd64.whl

Download URL cadaclysm-0.4.0-py3-none-win_amd64.whl
Size 4.4 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
5d69d9f30705b1623217480778d585d1e2a64e2167f5624aa43dca3e2ae2a854
BLAKE2b-256 checksum
How to use checksums
26ebcbb768b865396d32f5ffd6ee2b236f39acb8428fda930b9fcafe455f7dc1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 18, 2026.

Transparency log

Release files / cadaclysm-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL cadaclysm-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 4.6 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
7413cfb74142377376cc13b297828663ba9d9deb31891de9221c98dc654cd7f2
BLAKE2b-256 checksum
How to use checksums
5b890debc407a6ee706749ce4f7678f3ae9928d30d5bbff61191f632c2b76cfc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 18, 2026.

Transparency log

Release files / cadaclysm-0.4.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL cadaclysm-0.4.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 4.1 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
0d0c86c448c62312f37d5b936b356b1ae45441587821f32a2b845c5340477258
BLAKE2b-256 checksum
How to use checksums
e4251435c53686f862f105ec1d8b35defad8535acbdc4bef66e6988021847879
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 18, 2026.

Transparency log

Release files / cadaclysm-0.4.0-py3-none-macosx_11_0_universal2.whl

Download URL cadaclysm-0.4.0-py3-none-macosx_11_0_universal2.whl
Size 8.7 MB
Tags Python 3 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
f074936026b26a3698abbdc3bf6be5dd74970b39b0caa7c0623198850884e6ee
BLAKE2b-256 checksum
How to use checksums
8ad45dc2c7e894d9270ef1d4d48f208084e19abc3db9e293dc9e7717178f0822
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 18, 2026.

Transparency log

Release history Release notifications | RSS feed

0.5.1

4 release files

0.5.0

4 release files

0.4.5

4 release files

0.4.4

4 release files

0.4.3

4 release files

0.4.2

4 release files

0.4.1

4 release files

This release

0.4.0 This release

4 release files

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