Skip to main content

cadaclysm

CAD file format reading and exact B-rep modelling.

File formats (import cadaclysm): STEP (AP203, AP214, AP242 and the other APs whose schemas it carries), IGES, IFC (2x3, 4, 4.3), Rhino .3dm, ACIS .sat, BREP (.brep) and OpenSCAD (.scad).

  • The assembly tree with names, colours, placements and attributes, and SQL-style filters to find nodes.
  • The exact B-rep geometry of every body, tessellated to the tolerance you ask for and handed back as zero-copy numpy arrays.
  • Export to glTF/GLB, OBJ and STL.

B-rep (from cadaclysm import blacksmith): an exact boundary-representation modelling kernel.

  • Extrude, revolve, sweep and loft; join, cut and common; fillet, chamfer and shell.
  • Open a B-rep body from a STEP, ACIS, Rhino, BREP, IGES or IFC file and keep modelling it.
  • Write STEP, with every schema built in.

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.8 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 are used unless CADACLYSM_LIBRARY or CADACLYSM_BLACKSMITH_LIBRARY 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, Node and Swift wrappers are in the SDK: https://github.com/rdeioris/cadaclysm-sdk

Release files for cadaclysm 0.4.5

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.5
File
cadaclysm-0.4.5-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
cadaclysm-0.4.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
cadaclysm-0.4.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
cadaclysm-0.4.5-py3-none-macosx_11_0_universal2.whl Python 3 none macOS 11.0+ universal2 (ARM64, x86-64) Details

Total release size: 25.1 MB

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

Download URL cadaclysm-0.4.5-py3-none-win_amd64.whl
Size 5.1 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
0dde0893fe26c8f84dbae1f95a6ff0693d402c81e961b44d979d3c391d71eb1b
BLAKE2b-256 checksum
How to use checksums
c7bd1e71557407cb29246c65e319da884e11a4a6f8da9139ed9bd74f259158ac
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 19, 2026.

Transparency log

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

Download URL cadaclysm-0.4.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 5.3 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
acb78bf0488449c74d5e380b6c364630f9c8301a5c6a9a4140c1fa0fe024f965
BLAKE2b-256 checksum
How to use checksums
035c17775f43896f83ffdbd95ce6bdeb1662fbfd5b7f7c2b0106e6e802f60d3f
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 19, 2026.

Transparency log

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

Download URL cadaclysm-0.4.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 4.7 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
3e9173edd58c38fdf2da1a20c8dbbab12c8409f55c5c6a906bac1fc24c04002c
BLAKE2b-256 checksum
How to use checksums
41b644846a4b64d44e5a08a9f585c712895e1df50ded31cdbf102a8a3775b957
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 19, 2026.

Transparency log

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

Download URL cadaclysm-0.4.5-py3-none-macosx_11_0_universal2.whl
Size 10.0 MB
Tags Python 3 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
a17802ecbb3022a61a24dc9e07a1d5ca2c34eef98b7c4d2d25db4f78da3fb3fd
BLAKE2b-256 checksum
How to use checksums
6f233e6f697c0f07a7168428dec91a1cc7e18e0aae8486d22e8b3bdb20d89a7b
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 19, 2026.

Transparency log

Release history Release notifications | RSS feed

0.5.1

4 release files

0.5.0

4 release files

This release

0.4.5 This release

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

0.4.0

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