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)
| 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)
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.