Skip to main content

engeom

Python bindings for engeom, a Rust library of metrology-focused tools for working with 2D and 3D geometry. The primary use case is engineering applications such as GD&T and quality/dimensional inspection, covering every step of the process starting from raw data formats such as meshes and point clouds.

pip install engeom

What is included

  • 3D geometry (engeom.geom3): points, vectors, surface points, lines, planes, circles, spheres, cylinders, cones, triangle meshes, and point clouds, with Levenberg-Marquardt fitting and alignment (engeom.align3).
  • 2D geometry (engeom.geom2): points, vectors, surface points, lines, circles, arcs, and polyline curves, with fitting and alignment.
  • Airfoil analysis (engeom.airfoil2): construction and analysis of airfoil cross-sections, including camber lines, leading/trailing edge detection, inscribed circles, thickness, and orientation.
  • Raster fields (engeom.raster2, engeom.raster3): 2D scalar fields for depth-map style data, with filtering, smoothing, in-painting, and region labeling.
  • Metrology (engeom.metrology): dimension and tolerance types built on the geometry primitives.
  • Sensor models (engeom.sensors): pinhole camera and laser profile sensors.
  • Plotting helpers (engeom.plot): convenience adapters for visualizing engeom types.

Numpy at the boundary

Array-shaped data crosses the Rust/Python boundary as numpy arrays rather than lists of objects. Points and vectors are shaped (n, 2) or (n, 3) with dtype float64, and face/index arrays use unsigned integer dtypes such as uint32. This matters for both the API shape and for performance.

Documentation

Combined documentation for the Rust and Python APIs is built with mdBook from the book/ directory of the repository.

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.

Metadata

Release files for engeom 0.5.0

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

Source distribution (sdist)

Source distribution for engeom 0.5.0
File Size Uploaded Provenance Actions
engeom-0.5.0.tar.gz 3.7 MB Without provenance Details for engeom-0.5.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for engeom 0.5.0
File Actions
engeom-0.5.0-cp38-abi3-win_arm64.whl CPython 3.8 abi3 Windows ARM64 Details for engeom-0.5.0-cp38-abi3-win_arm64.whl
engeom-0.5.0-cp38-abi3-win_amd64.whl CPython 3.8 abi3 Windows x86-64 Details for engeom-0.5.0-cp38-abi3-win_amd64.whl
engeom-0.5.0-cp38-abi3-musllinux_1_2_x86_64.whl CPython 3.8 abi3 Linux musl 1.2+ x86-64 Details for engeom-0.5.0-cp38-abi3-musllinux_1_2_x86_64.whl
engeom-0.5.0-cp38-abi3-musllinux_1_2_aarch64.whl CPython 3.8 abi3 Linux musl 1.2+ ARM64 Details for engeom-0.5.0-cp38-abi3-musllinux_1_2_aarch64.whl
engeom-0.5.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 abi3 Linux glibc 2.17+ x86-64 Details for engeom-0.5.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
engeom-0.5.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.8 abi3 Linux glibc 2.17+ ARM64 Details for engeom-0.5.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
engeom-0.5.0-cp38-abi3-macosx_11_0_arm64.whl CPython 3.8 abi3 macOS 11.0+ ARM64 Details for engeom-0.5.0-cp38-abi3-macosx_11_0_arm64.whl
engeom-0.5.0-cp38-abi3-macosx_10_12_x86_64.whl CPython 3.8 abi3 macOS 10.12+ x86-64 Details for engeom-0.5.0-cp38-abi3-macosx_10_12_x86_64.whl

Total release size: 38.1 MB

Release files / engeom-0.5.0.tar.gz

Download URL engeom-0.5.0.tar.gz
Size 3.7 MB
Tags Source
SHA-256 checksum
How to use checksums
08959b11825346b8d62e9e2b74430ff12263e12a5e770b71d63b04ea353dbd8f
BLAKE2b-256 checksum
How to use checksums
82de56cf1d1be79b2235122c9980bcdcce88a898ba5ad5b8c3ed20b1df31a65d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.8 {"installer":{"name":"uv","version":"0.12.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / engeom-0.5.0-cp38-abi3-win_arm64.whl

Download URL engeom-0.5.0-cp38-abi3-win_arm64.whl
Size 3.5 MB
Tags CPython 3.8 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
5408c06723bc6c5eb778cab064a9fce5807d841bbf7c088d7f2f484c74932876
BLAKE2b-256 checksum
How to use checksums
7618b38ad50b8d2d7b2c0a060393f8871458f4b0a5694f4ea5dc9268139d4a0e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.8 {"installer":{"name":"uv","version":"0.12.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / engeom-0.5.0-cp38-abi3-win_amd64.whl

Download URL engeom-0.5.0-cp38-abi3-win_amd64.whl
Size 4.2 MB
Tags CPython 3.8 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
bbdeaa9d9c49fb5191b8f5c5b28e12e91d59e90fcdd220438eb871b1908375d1
BLAKE2b-256 checksum
How to use checksums
f66e59939f24d2acb72e3883817d18731e7ddad166fcd4b0af003ef9128423bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.8 {"installer":{"name":"uv","version":"0.12.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / engeom-0.5.0-cp38-abi3-musllinux_1_2_x86_64.whl

Download URL engeom-0.5.0-cp38-abi3-musllinux_1_2_x86_64.whl
Size 5.0 MB
Tags CPython 3.8 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
78727a29ba55efe1659fa8c4076f82e26bab15582886d2762a186e78223e28f4
BLAKE2b-256 checksum
How to use checksums
0a5f2048cde8101992c479ca560c2ba6020943658affc8738286c0a585f14e76
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.8 {"installer":{"name":"uv","version":"0.12.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / engeom-0.5.0-cp38-abi3-musllinux_1_2_aarch64.whl

Download URL engeom-0.5.0-cp38-abi3-musllinux_1_2_aarch64.whl
Size 4.5 MB
Tags CPython 3.8 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
4c5a42278520b00b213cad2d27f4c4f8874bc1c8f8618b75121f263a16d0aa7c
BLAKE2b-256 checksum
How to use checksums
5f3f179b9c3571bc2bf714d1be802902007b98190f92effdbb1331e6f92022b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.8 {"installer":{"name":"uv","version":"0.12.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / engeom-0.5.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL engeom-0.5.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 4.7 MB
Tags CPython 3.8 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
e287df2b259c7f5517ef5cfda3dca59e6f2c3fb8953b0f54dee153791ff76856
BLAKE2b-256 checksum
How to use checksums
d0eb7e6f320128cf9da61ae876427b0b95f104b28402e0b231a3f59c055442e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.8 {"installer":{"name":"uv","version":"0.12.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / engeom-0.5.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL engeom-0.5.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 4.3 MB
Tags CPython 3.8 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
8ebce506e4ec067a4871dd638ec225547d8758f2d02a022369b96c676108793d
BLAKE2b-256 checksum
How to use checksums
889adce7dd31747d4ffa41a1bb7034ecff9e364a35fa25ae6a5933de218d6dae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.8 {"installer":{"name":"uv","version":"0.12.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / engeom-0.5.0-cp38-abi3-macosx_11_0_arm64.whl

Download URL engeom-0.5.0-cp38-abi3-macosx_11_0_arm64.whl
Size 3.9 MB
Tags CPython 3.8 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
a66494acab7d393c7175af389a0488d4fe7f1b75272d2b09ee3df809146e50b2
BLAKE2b-256 checksum
How to use checksums
4b492d04f10bc8b060fd0b94115f11fd8493822cfb648dccb6fb837ac5a2434f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.8 {"installer":{"name":"uv","version":"0.12.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / engeom-0.5.0-cp38-abi3-macosx_10_12_x86_64.whl

Download URL engeom-0.5.0-cp38-abi3-macosx_10_12_x86_64.whl
Size 4.3 MB
Tags CPython 3.8 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
58e258bb7c7875ad000f0b1a64a2820bab192277df05569f78afc301cd3acba0
BLAKE2b-256 checksum
How to use checksums
5d1b77fbf45d9047e79790d79c1e141c21e436c9e92f0575f9b5af267029b746
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.8 {"installer":{"name":"uv","version":"0.12.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for engeom 0.5.0

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.5.0 This release

9 release files No provenance

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