{ "info": { "author": "", "author_email": "", "bugtrack_url": null, "classifiers": [], "description": "# OpenMapTiles Tools [![Build Status](https://api.travis-ci.org/openmaptiles/openmaptiles-tools.svg?branch=master)](https://travis-ci.org/openmaptiles/openmaptiles-tools) [![Docker Automated build](https://img.shields.io/docker/automated/openmaptiles/openmaptiles-tools.svg)](https://hub.docker.com/r/openmaptiles/openmaptiles-tools) [![](https://images.microbadger.com/badges/image/openmaptiles/openmaptiles-tools.svg)](https://microbadger.com/images/openmaptiles/openmaptiles-tools)\n\nThe OpenMapTiles tools for generating TM2Source projects, imposm3 mappings and SQL instructions\nfrom OpenMapTiles layers. We encourage other people to use this for their vector tile projects as well since this approach works well for us.\n\nCheck out the [OpenMapTiles project](https://github.com/openmaptiles/openmaptiles/) for a real world example.\n\n## Install\n\nYou need Python 2 or Python 3 installed on your system.\nExternal dependency: graphviz, sqlite3 \n\n```bash\npip install openmaptiles-tools\n# You can also install the package directly from git\npip install git+https://github.com/openmaptiles/openmaptiles-tools\n\n# Some tool call external command, you can install them on debian / ubuntu :\napt-get install graphviz sqlite3 \n\n```\n\n## Concepts\n\nYou define a self contained **Layer** together with SQL files and layer and data source definitions (like an imposm3 mapping file) that you can then reference in a **Tileset** where you mix and match with other layers.\n\n\n### Define your own Layer\n\nTake a look or copy a standard layer like [building](https://github.com/openmaptiles/openmaptiles/tree/master/layers/building) to get started with your own layer.\nA layer consists out of a **Layer** definition written in YAML format.\n\nThere you specify the `layer` properties like `id`, `buffer_size` and possible Markdown documentation (`description` and `fields`).\nYou can also reference SQL files in `schema` for writing the necessary queries for your layer or create generalized tables.\nWe encourage you to have a function per layer which takes the bounding box and zoom level. This makes it easy\nto test and reuse.\n\nIf your data is based of OSM you can also directly\nreference a [imposm3 mapping file](https://imposm.org/docs/imposm3/latest/mapping.html) to choose the OSM data you need.\n\n```yaml\nlayer:\n id: \"building\"\n description: Buildings from OpenStreetMap\n buffer_size: 4\n datasource:\n query: (SELECT geometry FROM layer_building(!bbox!, z(!scale_denominator!))) AS t\n fields:\n render_height: An approximated height from levels and height of building.\nschema:\n - ./building.sql\ndatasources:\n - type: imposm3\n mapping_file: ./mapping.yaml\n```\n\n### Define your own Tileset\n\nA **Tileset** defines which layer will be in your vector tile set (`layers`)\nand metadata used for generating a TM2Source project to actually generate the vector tiles.\n\n```yaml\ntileset:\n layers:\n - layers/building/building.yaml\n - layers/housenumber/housenumber.yaml\n - layers/poi/poi.yaml\n name: Street Level\n description: A tileset showing street level info like building, housenumbers and POIs.\n attribution: \"OpenStreetMap contributors\"\n maxzoom: 14\n minzoom: 13\n center: [-12.2168, 28.6135, 4]\n```\n\n## Usage\n\n### Generate TM2Source Projects for Mapbox Studio Classic\n\nTakes a tileset definition an generates a TM2Source YAML project file.\nYou need to provide PostgreSQL database connection settings before generating the project.\n\n```\ngenerate-tm2source --host=\"localhost\" --port=5432 --database=\"osm\" --user=\"osm\" --password=\"osm\"\n```\n\n### Generate Imposm3 Mapping File\n\nTakes a tileset definition an generates an imposm3 mapping file for importing OSM data.\n\n```\ngenerate-imposm3 \n```\n\n### Collect SQL schemas\n\nTakes a tileset definition and collects all SQL referenced in the layer definitions.\n\n```\ngenerate-sql \n```\n\n### Generate Markdown Documentation\n\nTakes a tileset definition and generates Markdown documentation.\n\n```\ngenerate-doc \n```\n\n### Generate ETL (Extract-Transform-Load ) graph \n\ndependency: graphviz\n\nTakes a source code from the imposm3 mapping file and the SQL postprocessing code , \nnad parsing for the `etldoc:` graphviz based comments, and generate an svg file.\nThe `.dot` and the `.svg` filename prefix is `etl_`\n\n```\ngenerate-etlgraph \ngenerate-etlgraph layers/landcover/landcover.yaml ./build/devdoc\ngenerate-etlgraph layers/railway/railway.yaml ./build/etlgraph \n```\n\nexample:\n\ninput command: ` generate-etlgraph layers/landcover/landcover.yaml `\noutput fies:\n- `layers/landcover/etl_landcover.dot`\n- `layers/landcover/etl_landcover.svg`\n\n\n\n### Generate SQL query for a given layer and zoom level\n\nexample:\n```\ngenerate-sqlquery layers/landcover/landcover.yaml 14\n```\n\n### Add simple metadata to mbtiles file \n\ndependency: sqlite3 \n\nexample:\n```\ngenerate_metadata ./data/tiles.mbtiles\n```\n\n\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/openmaptiles/openmaptiles-tools", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "openmaptiles-tools", "package_url": "https://pypi.org/project/openmaptiles-tools/", "platform": "", "project_url": "https://pypi.org/project/openmaptiles-tools/", "project_urls": { "Homepage": "https://github.com/openmaptiles/openmaptiles-tools" }, "release_url": "https://pypi.org/project/openmaptiles-tools/0.9.2/", "requires_dist": [ "docopt", "pyyaml", "graphviz" ], "requires_python": "", "summary": "The OpenMapTiles tools for generating TM2Source projects, imposm3 mappings and SQL instructions from OpenMapTiles layers. We encourage other people to use this for their vector tile projects as well since this approach works well for us.", "version": "0.9.2" }, "last_serial": 4108868, "releases": { "0.1": [], "0.2": [ { "comment_text": "", "digests": { "md5": "d9fdbc05233633de231ca39d3da9fbe7", "sha256": "2167f0377a6a7eee0396e143d96268876fac3781b42e5705bb02734dc72174d5" }, "downloads": -1, "filename": "openmaptiles-tools-0.2.tar.gz", "has_sig": false, "md5_digest": "d9fdbc05233633de231ca39d3da9fbe7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5783, "upload_time": "2017-01-09T09:16:59", "url": "https://files.pythonhosted.org/packages/68/06/2791d9d712582cc7bb1ef3640dcc02dcef22b2527a9edd986c8571e0fa62/openmaptiles-tools-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "f3196b262fa24ccbc9226a9ab52e9797", "sha256": "89b21bbbc7d6d14e5a0acf452d759c4b4c7af5eb84ff72ea48b898cd7c259dde" }, "downloads": -1, "filename": "openmaptiles-tools-0.2.1.tar.gz", "has_sig": false, "md5_digest": "f3196b262fa24ccbc9226a9ab52e9797", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7863, "upload_time": "2017-01-14T10:39:56", "url": "https://files.pythonhosted.org/packages/c4/4c/42da270d6e3f4638195971c87f4e78104be69186c943116fd5c6bc952793/openmaptiles-tools-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "df0a8dadd8bc3d81eaf8d3ab15f87883", "sha256": "84b0559ab0f738c7ec9ee3e34576b2412a1ac4765a38c43675a6d4b23a9ea80b" }, "downloads": -1, "filename": "openmaptiles-tools-0.2.2.tar.gz", "has_sig": false, "md5_digest": "df0a8dadd8bc3d81eaf8d3ab15f87883", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6020, "upload_time": "2017-01-14T10:41:39", "url": "https://files.pythonhosted.org/packages/82/9d/8db76007abe4199c3d938f1ee096e3d0d22aca6014d726daefd80df7a04f/openmaptiles-tools-0.2.2.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "34e08e6098b2ea832886f25c7ab81840", "sha256": "74297f696ca78b9384921827b06f033eb586a608e7e17b04bfe8e39608a2d1f7" }, "downloads": -1, "filename": "openmaptiles-tools-0.4.0.tar.gz", "has_sig": false, "md5_digest": "34e08e6098b2ea832886f25c7ab81840", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6691, "upload_time": "2017-05-23T11:16:09", "url": "https://files.pythonhosted.org/packages/63/c4/af858dc33ad282de7c5fb80913c0110d51ff43cbc91d9776637b96ebb3a8/openmaptiles-tools-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "1bc7d315bf40c92efc7273a1b4ccfaba", "sha256": "242ee20c0efca3008e6b2d6d1108ea2c00479244c399c50f3a5d7b0330bae3c3" }, "downloads": -1, "filename": "openmaptiles-tools-0.5.0.tar.gz", "has_sig": false, "md5_digest": "1bc7d315bf40c92efc7273a1b4ccfaba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6993, "upload_time": "2017-05-26T12:00:06", "url": "https://files.pythonhosted.org/packages/3b/b0/91a934d1af4031585ea52b964e8182cc76001c0cd705ebdc82455f339a09/openmaptiles-tools-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "a99e49099499b6ff5cf397e86641daaa", "sha256": "65f0c242b615d737103b062ef3d3e70df64510076018faf51e234f73bfde59df" }, "downloads": -1, "filename": "openmaptiles-tools-0.6.0.tar.gz", "has_sig": false, "md5_digest": "a99e49099499b6ff5cf397e86641daaa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7019, "upload_time": "2017-06-07T16:03:21", "url": "https://files.pythonhosted.org/packages/03/3e/a9f9cb76466b326a659f83b29187b989ed70a1f2cd58884a0981779d72c7/openmaptiles-tools-0.6.0.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "aad9e62d6d1e0dc65e3e160157ff20b7", "sha256": "96e8434ae6e917351af2d7be151930f9340be5fe3dc2802bcb48d16025ba0e68" }, "downloads": -1, "filename": "openmaptiles_tools-0.9.0-py3-none-any.whl", "has_sig": false, "md5_digest": "aad9e62d6d1e0dc65e3e160157ff20b7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 14434, "upload_time": "2018-07-27T10:04:36", "url": "https://files.pythonhosted.org/packages/b1/5b/203e52eda92820b9c92431fd12d8f3ba49cf49a21eb904ad17c69e221a60/openmaptiles_tools-0.9.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "15281aab3ca0ca46b803ae043a495e37", "sha256": "08add58251d56636aa1bfd4ad0886c52d557878aee7c61cc45c40601a3980ae3" }, "downloads": -1, "filename": "openmaptiles-tools-0.9.0.tar.gz", "has_sig": false, "md5_digest": "15281aab3ca0ca46b803ae043a495e37", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9885, "upload_time": "2018-07-27T10:04:38", "url": "https://files.pythonhosted.org/packages/12/35/e04465b186ff51a641b1198d43c335ce5b2b41fb34f9bbc7651e85ec38d0/openmaptiles-tools-0.9.0.tar.gz" } ], "0.9.2": [ { "comment_text": "", "digests": { "md5": "439ae1e78c78f79117a4bcec160deb84", "sha256": "c10809e7df7025773960f0f9c6a35710069fdfe476991af8a95cde645bce0080" }, "downloads": -1, "filename": "openmaptiles_tools-0.9.2-py3-none-any.whl", "has_sig": false, "md5_digest": "439ae1e78c78f79117a4bcec160deb84", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16645, "upload_time": "2018-07-27T14:05:14", "url": "https://files.pythonhosted.org/packages/b5/48/2d5ff0fbaa59d967ad2a9eb7e697100abb5fa48688e4a51d0e1ff6797c45/openmaptiles_tools-0.9.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "be6c27afc35272976611b2b9add73ab6", "sha256": "faa153e811ddb730af7980d4f884f11185935ae6926b87aa199c1b5380bfd15a" }, "downloads": -1, "filename": "openmaptiles-tools-0.9.2.tar.gz", "has_sig": false, "md5_digest": "be6c27afc35272976611b2b9add73ab6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12265, "upload_time": "2018-07-27T14:05:16", "url": "https://files.pythonhosted.org/packages/58/e0/e4c3776ca5c57012bbe7567f7e767a11dad5b7a5d6ed8a0f091b4c49544e/openmaptiles-tools-0.9.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "439ae1e78c78f79117a4bcec160deb84", "sha256": "c10809e7df7025773960f0f9c6a35710069fdfe476991af8a95cde645bce0080" }, "downloads": -1, "filename": "openmaptiles_tools-0.9.2-py3-none-any.whl", "has_sig": false, "md5_digest": "439ae1e78c78f79117a4bcec160deb84", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16645, "upload_time": "2018-07-27T14:05:14", "url": "https://files.pythonhosted.org/packages/b5/48/2d5ff0fbaa59d967ad2a9eb7e697100abb5fa48688e4a51d0e1ff6797c45/openmaptiles_tools-0.9.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "be6c27afc35272976611b2b9add73ab6", "sha256": "faa153e811ddb730af7980d4f884f11185935ae6926b87aa199c1b5380bfd15a" }, "downloads": -1, "filename": "openmaptiles-tools-0.9.2.tar.gz", "has_sig": false, "md5_digest": "be6c27afc35272976611b2b9add73ab6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12265, "upload_time": "2018-07-27T14:05:16", "url": "https://files.pythonhosted.org/packages/58/e0/e4c3776ca5c57012bbe7567f7e767a11dad5b7a5d6ed8a0f091b4c49544e/openmaptiles-tools-0.9.2.tar.gz" } ] }