High-performance Python geographic geometry library for the ArcGIS platform, implemented in Rust.
Project description
About arcgis-geometry
arcgis-geometry is a Python package built using Rust to provide speedy geometry operations.
Typical uses include:
- Creating ArcGIS geometries from dictionaries or JSON strings.
- Running geometry operations from Python against Rust-backed implementations.
- Working with spatial references, envelopes, and projection utilities from Python.
Simple usage
from arcgis_geometry import Geometry, Point
point = Point(
{
"x": -117.1956,
"y": 34.0572,
"spatialReference": {"wkid": 4326},
}
)
polygon = Geometry(
{
"rings": [[
[-117.20, 34.05],
[-117.18, 34.05],
[-117.18, 34.07],
[-117.20, 34.07],
[-117.20, 34.05],
]],
"spatialReference": {"wkid": 4326},
}
)
print(point.geometry_type)
print(polygon.geometry_type)
Third-party attributions
This package is distributed under the Esri Master License Agreement. The direct third-party dependencies declared in the Rust and Python manifests keep their own upstream licenses.
| Ecosystem | Package | Version in repo | Contribution here | License | Upstream |
|---|---|---|---|---|---|
| Rust | geo-traits |
>=0.3.0 |
Trait-based geometry interoperability in the Rust core. | MIT or Apache-2.0 | georust/geo |
| Rust | smallvec |
1.15.1 |
Compact storage for per-part coordinate buffers. | MIT or Apache-2.0 | servo/rust-smallvec |
| Rust | thiserror |
2.0.12 |
Typed error definitions for geometry and conversion errors. | MIT or Apache-2.0 | dtolnay/thiserror |
| Rust | pyo3 |
0.27.2 |
Python bindings, module exports, and wrapper types. | MIT or Apache-2.0 | PyO3/pyo3 |
| Rust | string-interner |
0.19.0 |
String interning support declared for the Rust core. | MIT or Apache-2.0 | robbepop/string-interner |
| Rust | compact_str |
0.9.0 |
Compact storage for feature attribute keys and string values. | MIT | ParkMyCar/compact_str |
| Rust | geozero |
0.14.0 |
Geometry processing plus WKT, WKB, GeoJSON, and EsriJSON conversion plumbing. | MIT or Apache-2.0 | georust/geozero |
| Rust | serde |
1.0.228 |
Serialization and deserialization support for Rust geometry metadata. | MIT or Apache-2.0 | serde-rs/serde |
| Rust | serde_json |
1.0.145 |
JSON writer support used by serialized geometry metadata. | MIT or Apache-2.0 | serde-rs/json |
| Rust | slab |
0.4.11 |
Indexed storage for curved segment collections. | MIT | tokio-rs/slab |
| Rust | approx |
0.5.1 |
Approximate floating-point comparisons in Python utility helpers. | Apache-2.0 | brendanzab/approx |
| Rust | cfg-if |
1.0.4 |
Platform-specific compile-time branching in the Python extension crate. | MIT or Apache-2.0 | rust-lang/cfg-if |
| Python | maturin |
>=1.10,<2.0 |
Build backend for compiling and packaging the Rust-powered Python wheel. | MIT or Apache-2.0 | PyO3/maturin |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file arcgis_geometry-1.0.300-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 6.5 MB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b1f44aa9f829bf900dd49ce96bf93d3778445858bd849376084fe60d803bdb4
|
|
| MD5 |
091333ae862b71018894963e05e2ea2c
|
|
| BLAKE2b-256 |
7c58803ee1c8f84f19705a62a9bbfbd75fb87db06b9f13e77de5b4ce0d6b5926
|
File details
Details for the file arcgis_geometry-1.0.300-cp314-cp314-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp314-cp314-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 8.9 MB
- Tags: CPython 3.14, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3600592144cfa7490c53ccdab7d04be7db3ee30a8113bd4784c426d48f57efeb
|
|
| MD5 |
66c8e42ec1c4b28c995200e84bf836f2
|
|
| BLAKE2b-256 |
bd8d85468f686f486e0546634690ed252ec3e03cbe02ea058937377c4d151dba
|
File details
Details for the file arcgis_geometry-1.0.300-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 7.6 MB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
669c0c20d8f653e513c57e7cb46799bf98943f473bd014982ce304244c595d40
|
|
| MD5 |
70753225ce2c5de34a2ec70c86ad7e79
|
|
| BLAKE2b-256 |
4ae213ced86d653cf3aa284b0d33eb1e164be5e4c6dc0964ff65cb2693e1ccb4
|
File details
Details for the file arcgis_geometry-1.0.300-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 6.5 MB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5fdf105459204a0d92e5d508dbd5c253ae669a80203d6937330b43f1e965d31b
|
|
| MD5 |
f4f195740777e309e45c9867d8661aab
|
|
| BLAKE2b-256 |
cbd469e5c3983e04917ea5c0aa21256dec9a623b1b529e91f6dc20c3d900b50e
|
File details
Details for the file arcgis_geometry-1.0.300-cp313-cp313-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp313-cp313-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 9.0 MB
- Tags: CPython 3.13, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f9518a6be40d7d5053f2fc914701bf78373b5d813dc2304f6abfc9cb8f29ccf3
|
|
| MD5 |
08c13055c78d8565df6c042d8abcf340
|
|
| BLAKE2b-256 |
b0fe7383dd98bb095a561d161d2925d4a1b9aef8c751cb0d2eb5413687bba9c9
|
File details
Details for the file arcgis_geometry-1.0.300-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 7.6 MB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0ac0522d375317f4e89c7bcb8b6ec2100805b107345eed578d69363380f3f76f
|
|
| MD5 |
7e58d54d7dd75fae0b9c02b3130dec93
|
|
| BLAKE2b-256 |
ffd8f447b1b3f22e46b388c98ded552492a92a23cdd26e6d9a9ad5cf387b7985
|
File details
Details for the file arcgis_geometry-1.0.300-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 6.5 MB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
16cb10e3294ef145d34e930a8afa309123a55718544f2616e974f9892a9608e6
|
|
| MD5 |
2f919ebb6320cf80769ca78a7277ab62
|
|
| BLAKE2b-256 |
6eb0cb15763bc51217cf3ddd85c6bd50ee478e2d7a3f4827922faa3deb31add2
|
File details
Details for the file arcgis_geometry-1.0.300-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 9.0 MB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9a47b6c47f80ada8e30c4e9c30bfd09fc21c8f16a06071008f0162149eca25aa
|
|
| MD5 |
026aa9d4c2d46c17abbdfda06fa37117
|
|
| BLAKE2b-256 |
656a3401ca865e98bd2ba76e3477aa6ba927db93e1543af624106152958722e7
|
File details
Details for the file arcgis_geometry-1.0.300-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 7.6 MB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db13a56d8ec77d46f66866f2d0e1f39ba6ea6c8152fd2006bd8380ff9fe27fee
|
|
| MD5 |
c3670800494cff46dddefe32697c8532
|
|
| BLAKE2b-256 |
0eafb70b03c7e6ae3633f550bb9edfa02bc943654c2d139a5408b0bc11b09bc9
|
File details
Details for the file arcgis_geometry-1.0.300-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 6.5 MB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e1a3bfbd9d3358d1072ccfc319342ea08437260d5b32b83e5b1a724e5a57a18a
|
|
| MD5 |
62b508366bef494b8c5e726704bddc20
|
|
| BLAKE2b-256 |
bb1c966da9fccedcf3aec3afc324c38502f4abf5555919857975cb0045ce5425
|
File details
Details for the file arcgis_geometry-1.0.300-cp311-cp311-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp311-cp311-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 9.0 MB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6cb093b9159d7e10f9673c64b86b9c5fcad3e8dca81f56ed5aeb39ae11e3ca47
|
|
| MD5 |
b8c2ff9e51044f2a4e89b4f9147e1b32
|
|
| BLAKE2b-256 |
2bdc4660ab9616c2082206458d6406d4fee9872a661e825a77502c62160df5fd
|
File details
Details for the file arcgis_geometry-1.0.300-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: arcgis_geometry-1.0.300-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 7.6 MB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
692b62cb35f4917bb6ab9696c5eb5fd9d23ca9b451759f69c3eda3d97ae047f8
|
|
| MD5 |
17fd4286ecff01d14da7fce8700701bf
|
|
| BLAKE2b-256 |
7e2234633d3d052b5f0ee384eefdcfa4a801f8d53be2b006a159af9d2e21ff0a
|