{ "info": { "author": "chris48s", "author_email": "", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "# geojson-rewind\n\n[![Build Status](https://travis-ci.org/chris48s/geojson-rewind.svg?branch=master)](https://travis-ci.org/chris48s/geojson-rewind)\n[![Coverage Status](https://coveralls.io/repos/github/chris48s/geojson-rewind/badge.svg?branch=master)](https://coveralls.io/github/chris48s/geojson-rewind?branch=master)\n![PyPI Version](https://img.shields.io/pypi/v/geojson-rewind.svg)\n![License](https://img.shields.io/pypi/l/geojson-rewind.svg)\n![Python Support](https://img.shields.io/pypi/pyversions/geojson-rewind.svg)\n\nA Python library for enforcing polygon ring winding order in GeoJSON\n\nThe [GeoJSON](https://tools.ietf.org/html/rfc7946) spec mandates the [right hand rule](https://tools.ietf.org/html/rfc7946#section-3.1.6):\n\n> A linear ring MUST follow the right-hand rule with respect to the area it bounds, i.e., exterior rings are counterclockwise, and holes are clockwise.\n\nThis helps you generate compliant Polygon and MultiPolygon geometries.\n\n## Installation\n\n```\npip install geojson-rewind\n```\n\n## Usage\n\n```py\n>>> input = {\n... 'geometry': { 'coordinates': [ [ [100, 0],\n... [100, 1],\n... [101, 1],\n... [101, 0],\n... [100, 0]]],\n... 'type': 'Polygon'},\n... 'properties': {'foo': 'bar'},\n... 'type': 'Feature'}\n>>> from geojson_rewind import rewind\n>>> output = rewind(input)\n>>> import pprint\n>>> pp = pprint.PrettyPrinter(indent=4)\n>>> pp.pprint(output)\n{ 'geometry': { 'coordinates': [ [ [100, 0],\n [101, 0],\n [101, 1],\n [100, 1],\n [100, 0]]],\n 'type': 'Polygon'},\n 'properties': {'foo': 'bar'},\n 'type': 'Feature'}\n```\n\n## Acknowledgements\n\n`geojson-rewind` is a python port of Mapbox's javascript [geojson-rewind](https://github.com/mapbox/geojson-rewind) package. Credit to [Tom MacWright](https://github.com/tmcw) and [contributors](https://github.com/mapbox/geojson-rewind/graphs/contributors).\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/chris48s/geojson-rewind", "keywords": "", "license": "MIT", "maintainer": "chris48s", "maintainer_email": "", "name": "geojson-rewind", "package_url": "https://pypi.org/project/geojson-rewind/", "platform": "", "project_url": "https://pypi.org/project/geojson-rewind/", "project_urls": { "Homepage": "https://github.com/chris48s/geojson-rewind", "Repository": "https://github.com/chris48s/geojson-rewind" }, "release_url": "https://pypi.org/project/geojson-rewind/0.2.0/", "requires_dist": null, "requires_python": ">=3.5,<4.0", "summary": "A Python library for enforcing polygon ring winding order in GeoJSON", "version": "0.2.0" }, "last_serial": 5986082, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "f3ec10860346f740ba44398e12c52ae1", "sha256": "1a2d20e730a2b033c1fc10ede046404e378788fade2a12c9670b7577ada87322" }, "downloads": -1, "filename": "geojson-rewind-0.1.0.tar.gz", "has_sig": false, "md5_digest": "f3ec10860346f740ba44398e12c52ae1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2882, "upload_time": "2018-10-20T11:20:37", "url": "https://files.pythonhosted.org/packages/86/10/a7e55f21cd917eb26a2a363fbd4de639b2dbcf026e500de07c77ff751b6f/geojson-rewind-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "ced0c2bf75686e8927da124e1f23e093", "sha256": "fd3d97ba487bc39ebaba3d1e9a601e2e3c7d7ddbf3cd1f5cc85915f305887c82" }, "downloads": -1, "filename": "geojson-rewind-0.1.1.tar.gz", "has_sig": false, "md5_digest": "ced0c2bf75686e8927da124e1f23e093", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2891, "upload_time": "2018-12-09T11:26:53", "url": "https://files.pythonhosted.org/packages/ce/f2/7adbb1f4e0568749219108efde5180a88788ca59d8d71315a8449120f614/geojson-rewind-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "953d9be0fe415b63de286312783ad31f", "sha256": "8d802b07dc211df0f826c18dfcbcdc4303ad02fbc98a5216ee7330d22aba0888" }, "downloads": -1, "filename": "geojson_rewind-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "953d9be0fe415b63de286312783ad31f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5,<4.0", "size": 3721, "upload_time": "2019-10-16T19:49:34", "url": "https://files.pythonhosted.org/packages/f7/5b/55fb64433477ebc983546e2d84ce04473b8750525dab67b2b18c6959a1ae/geojson_rewind-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9b8fbe5f0ac24fecc4aff3b03b28dfc6", "sha256": "212c10e8b675dd09749d837eef3d1fc958063f039836476d5266497302166ca9" }, "downloads": -1, "filename": "geojson-rewind-0.2.0.tar.gz", "has_sig": false, "md5_digest": "9b8fbe5f0ac24fecc4aff3b03b28dfc6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5,<4.0", "size": 3460, "upload_time": "2019-10-16T19:49:33", "url": "https://files.pythonhosted.org/packages/5a/99/44ff477ae93490adcbf3cef96b863367db941f5c80eb7d673c9de930c269/geojson-rewind-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "953d9be0fe415b63de286312783ad31f", "sha256": "8d802b07dc211df0f826c18dfcbcdc4303ad02fbc98a5216ee7330d22aba0888" }, "downloads": -1, "filename": "geojson_rewind-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "953d9be0fe415b63de286312783ad31f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5,<4.0", "size": 3721, "upload_time": "2019-10-16T19:49:34", "url": "https://files.pythonhosted.org/packages/f7/5b/55fb64433477ebc983546e2d84ce04473b8750525dab67b2b18c6959a1ae/geojson_rewind-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9b8fbe5f0ac24fecc4aff3b03b28dfc6", "sha256": "212c10e8b675dd09749d837eef3d1fc958063f039836476d5266497302166ca9" }, "downloads": -1, "filename": "geojson-rewind-0.2.0.tar.gz", "has_sig": false, "md5_digest": "9b8fbe5f0ac24fecc4aff3b03b28dfc6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5,<4.0", "size": 3460, "upload_time": "2019-10-16T19:49:33", "url": "https://files.pythonhosted.org/packages/5a/99/44ff477ae93490adcbf3cef96b863367db941f5c80eb7d673c9de930c269/geojson-rewind-0.2.0.tar.gz" } ] }