Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

arcgis_geometry-1.0.300-cp314-cp314-win_amd64.whl (6.5 MB view details)

Uploaded CPython 3.14Windows x86-64

arcgis_geometry-1.0.300-cp314-cp314-manylinux_2_28_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

arcgis_geometry-1.0.300-cp314-cp314-macosx_11_0_arm64.whl (7.6 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

arcgis_geometry-1.0.300-cp313-cp313-win_amd64.whl (6.5 MB view details)

Uploaded CPython 3.13Windows x86-64

arcgis_geometry-1.0.300-cp313-cp313-manylinux_2_28_x86_64.whl (9.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

arcgis_geometry-1.0.300-cp313-cp313-macosx_11_0_arm64.whl (7.6 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

arcgis_geometry-1.0.300-cp312-cp312-win_amd64.whl (6.5 MB view details)

Uploaded CPython 3.12Windows x86-64

arcgis_geometry-1.0.300-cp312-cp312-manylinux_2_28_x86_64.whl (9.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

arcgis_geometry-1.0.300-cp312-cp312-macosx_11_0_arm64.whl (7.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

arcgis_geometry-1.0.300-cp311-cp311-win_amd64.whl (6.5 MB view details)

Uploaded CPython 3.11Windows x86-64

arcgis_geometry-1.0.300-cp311-cp311-manylinux_2_28_x86_64.whl (9.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

arcgis_geometry-1.0.300-cp311-cp311-macosx_11_0_arm64.whl (7.6 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file arcgis_geometry-1.0.300-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 8b1f44aa9f829bf900dd49ce96bf93d3778445858bd849376084fe60d803bdb4
MD5 091333ae862b71018894963e05e2ea2c
BLAKE2b-256 7c58803ee1c8f84f19705a62a9bbfbd75fb87db06b9f13e77de5b4ce0d6b5926

See more details on using hashes here.

File details

Details for the file arcgis_geometry-1.0.300-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3600592144cfa7490c53ccdab7d04be7db3ee30a8113bd4784c426d48f57efeb
MD5 66c8e42ec1c4b28c995200e84bf836f2
BLAKE2b-256 bd8d85468f686f486e0546634690ed252ec3e03cbe02ea058937377c4d151dba

See more details on using hashes here.

File details

Details for the file arcgis_geometry-1.0.300-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 669c0c20d8f653e513c57e7cb46799bf98943f473bd014982ce304244c595d40
MD5 70753225ce2c5de34a2ec70c86ad7e79
BLAKE2b-256 4ae213ced86d653cf3aa284b0d33eb1e164be5e4c6dc0964ff65cb2693e1ccb4

See more details on using hashes here.

File details

Details for the file arcgis_geometry-1.0.300-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 5fdf105459204a0d92e5d508dbd5c253ae669a80203d6937330b43f1e965d31b
MD5 f4f195740777e309e45c9867d8661aab
BLAKE2b-256 cbd469e5c3983e04917ea5c0aa21256dec9a623b1b529e91f6dc20c3d900b50e

See more details on using hashes here.

File details

Details for the file arcgis_geometry-1.0.300-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f9518a6be40d7d5053f2fc914701bf78373b5d813dc2304f6abfc9cb8f29ccf3
MD5 08c13055c78d8565df6c042d8abcf340
BLAKE2b-256 b0fe7383dd98bb095a561d161d2925d4a1b9aef8c751cb0d2eb5413687bba9c9

See more details on using hashes here.

File details

Details for the file arcgis_geometry-1.0.300-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0ac0522d375317f4e89c7bcb8b6ec2100805b107345eed578d69363380f3f76f
MD5 7e58d54d7dd75fae0b9c02b3130dec93
BLAKE2b-256 ffd8f447b1b3f22e46b388c98ded552492a92a23cdd26e6d9a9ad5cf387b7985

See more details on using hashes here.

File details

Details for the file arcgis_geometry-1.0.300-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 16cb10e3294ef145d34e930a8afa309123a55718544f2616e974f9892a9608e6
MD5 2f919ebb6320cf80769ca78a7277ab62
BLAKE2b-256 6eb0cb15763bc51217cf3ddd85c6bd50ee478e2d7a3f4827922faa3deb31add2

See more details on using hashes here.

File details

Details for the file arcgis_geometry-1.0.300-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9a47b6c47f80ada8e30c4e9c30bfd09fc21c8f16a06071008f0162149eca25aa
MD5 026aa9d4c2d46c17abbdfda06fa37117
BLAKE2b-256 656a3401ca865e98bd2ba76e3477aa6ba927db93e1543af624106152958722e7

See more details on using hashes here.

File details

Details for the file arcgis_geometry-1.0.300-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 db13a56d8ec77d46f66866f2d0e1f39ba6ea6c8152fd2006bd8380ff9fe27fee
MD5 c3670800494cff46dddefe32697c8532
BLAKE2b-256 0eafb70b03c7e6ae3633f550bb9edfa02bc943654c2d139a5408b0bc11b09bc9

See more details on using hashes here.

File details

Details for the file arcgis_geometry-1.0.300-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e1a3bfbd9d3358d1072ccfc319342ea08437260d5b32b83e5b1a724e5a57a18a
MD5 62b508366bef494b8c5e726704bddc20
BLAKE2b-256 bb1c966da9fccedcf3aec3afc324c38502f4abf5555919857975cb0045ce5425

See more details on using hashes here.

File details

Details for the file arcgis_geometry-1.0.300-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6cb093b9159d7e10f9673c64b86b9c5fcad3e8dca81f56ed5aeb39ae11e3ca47
MD5 b8c2ff9e51044f2a4e89b4f9147e1b32
BLAKE2b-256 2bdc4660ab9616c2082206458d6406d4fee9872a661e825a77502c62160df5fd

See more details on using hashes here.

File details

Details for the file arcgis_geometry-1.0.300-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for arcgis_geometry-1.0.300-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 692b62cb35f4917bb6ab9696c5eb5fd9d23ca9b451759f69c3eda3d97ae047f8
MD5 17fd4286ecff01d14da7fce8700701bf
BLAKE2b-256 7e2234633d3d052b5f0ee384eefdcfa4a801f8d53be2b006a159af9d2e21ff0a

See more details on using hashes here.

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