Skip to main content

Exact-arithmetic B-rep CAD kernel

Project description

forge

An exact-arithmetic boundary-representation (B-rep) CAD kernel. Geometric and topological decisions use exact rational arithmetic (ℚ, ℚ[π], ℚ[√d]) or certified intervals; no result depends on a floating-point tolerance.

It ships as two PyPI packages:

  • forgekernel — the kernel, pure Python.
  • forgekernel_rs — a native (Rust) build of the performance-critical routines, installed automatically when a wheel is available and returning the same results.

Capabilities

  • Planar solids: rational linear algebra, plane-based B-rep, booleans, divergence-theorem mass properties.
  • Quadrics (cylinder, cone, sphere, torus) with closed-form intersections.
  • NURBS curves and surfaces; surface–surface intersection with complete branch detection and certified points.
  • Procedural offsets and shells; edge blends (fillets); lofts.
  • Exact volume, centroid, and inertia via the divergence theorem.
  • STEP (AP203/AP214) import and export.

Design

A Python reference implementation defines the exact semantics. A Rust build provides the same operations for production use; each ported routine is cross-checked against the reference. Design notes and decisions are recorded in the gitcad repository (ADR-0018).

Layout

  • src/forgekernel/ — the Python kernel.
  • rust/forge-core/ — the native build (forgekernel_rs).

Install

pip install forgekernel          # pure Python
pip install forgekernel[rust]    # add the native build

License: Apache-2.0. Source: https://github.com/gitcad-xyz/forge

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

forgekernel-0.8.0.tar.gz (93.2 kB view details)

Uploaded Source

Built Distribution

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

forgekernel-0.8.0-py3-none-any.whl (76.8 kB view details)

Uploaded Python 3

File details

Details for the file forgekernel-0.8.0.tar.gz.

File metadata

  • Download URL: forgekernel-0.8.0.tar.gz
  • Upload date:
  • Size: 93.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for forgekernel-0.8.0.tar.gz
Algorithm Hash digest
SHA256 f462fa913d3a7369377f04b38a72ecb800e2d5bc7527159957cda945d62794b3
MD5 dbbbb8279ceabd20eca25636ca406c5a
BLAKE2b-256 b4a13e3f6c21ed72a28f7e75880fdab11a67cf956b2ffcfbfe3efc2b18e8fa80

See more details on using hashes here.

Provenance

The following attestation bundles were made for forgekernel-0.8.0.tar.gz:

Publisher: release.yml on gitcad-xyz/forge

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

File details

Details for the file forgekernel-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: forgekernel-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 76.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for forgekernel-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b8c46fea71d87b371479df11da6451ce18baaac87e7c7102d27f7068b1d2a29a
MD5 f45a48a57f37b6d660dec949da4ede83
BLAKE2b-256 6fa9569284ce56102fef5d0b09be6779ff18ec6fa02ffc24192a96780e0cd93a

See more details on using hashes here.

Provenance

The following attestation bundles were made for forgekernel-0.8.0-py3-none-any.whl:

Publisher: release.yml on gitcad-xyz/forge

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