Skip to content

Simple Python module for calculating bounding box (bbox) from given GeoJSON object.

License

Notifications You must be signed in to change notification settings

lmikolajczak/geojson-bbox

Repository files navigation

📐 geojson-bbox

Simple Python module for calculating bounding box (bbox) from given GeoJSON object.

Currently following GeoJSON objects are supported (RFC 7946):

  1. Point
  2. MultiPoint
  3. LineString
  4. MultiLineString
  5. Polygon
  6. MultiPolygon
  7. GeometryCollection

Installation

$ pip install gbbox

Usage

>>> from gbbox import LineString
>>>
>>> linestring_geojson = {
>>>     "type": "LineString",
>>>     "coordinates": [
>>>         [1.0, 2.0],
>>>         [3.0, 4.0]
>>>     ]
>>> }
>>>
>>> linestring = LineString(**linestring_geojson)
>>> linestring_bbox = linestring.bbox()

>>> print(linestring_bbox)
>>> [1.0, 2.0, 3.0, 4.0]

>>> print(linestring.min_lon)
>>> 1.0

Development

$ docker compose up -d
# Start bash within container and enter it
$ docker exec -it gbbox bash

Project will be automatically installed within docker container in an editable mode and any code changes will be immediately reflected. Keep in mind that if you have python shell running then you have to restart it.

You can also use make lint and make test as shortcuts to run linters and tests.

Contributing

I am open to, and grateful for, any contributions made by the community.

About

Simple Python module for calculating bounding box (bbox) from given GeoJSON object.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published