[OSM-dev] OpenStreetMap Cartographic: A client-side rendered OpenStreetMap Carto
penorman at mac.com
Tue Dec 8 17:46:30 UTC 2020
As Mapbox GL has been un-open sourced, I'm putting this project on hold
until I figure out a suitable rendering engine.
On 2020-05-24 5:34 p.m., Paul Norman via dev wrote:
> I've been working on a new project, OpenStreetMap Cartographic. This is
> a client-side rendering based on OpenStreetMap Carto. This is an
> ambitious project, as OpenStreetMap Carto is an extremely complex style
> which shows a large number of features. The technical choices I'm making
> are designed so the style is capable of handling the load of osm.org
> with minutely updates.
> I've put up a world-wide demo at
> using data from 2020-03-16, and you can view the code at
> Incomplete parts
> Only zoom 0 to 8 has been implemented so far. I started at zoom 0 and am
> working my way down.
> Admin boundaries are not implemented. OpenStreetMap Carto uses
> Mapnik-specific tricks to deduplicate the rendering of these. I know how
> I can do this, but it requires the changes I intend to make with the flex
> Landuse, vegetation, and other natural features are not rendered until
> zoom 7. This is the scale of OpenStreetMap Carto zoom 8, and these
> features first appear at zoom 5. There are numerous problems with
> unprocessed OpenStreetMap data at these scales. OpenStreetMap Carto gets
> a result that looks acceptable but is poor at conveying information by
> tweaking Mapnik image rasterizing options. I'm looking for better options
> here involving preprocessed data, but haven't found any.
> I'm still investigating how to best distribute sprites.
> The technology choices are designed to be suitable for a replacement for
> tile.osm.org. This means minutely updates, high traffic, high
> and multiple servers. Tilekiln, the vector tile generator, supports all
> of these. It's designed to better share the rendering results among
> multiple servers, a significant flaw with renderd + mod_tile and the
> standard filesystem storage. It uses PostGIS' ST_AsMVT, which is very
> fast with PostGIS 3.0. On my home system it generates z0-z8 in under
> 40 minutes.
> Often forgotten is the development requirements. The style needs to
> support multiple developers working on similar areas, git merge conflicts
> while maintaining an easy development workflow. I'm still figuring this
> out. Mapbox GL styles are written in JSON and most of the tools
> overwrite any formatting. This means there's no way to add comments to
> lines of codes. Comments are a requirement for a style like this, so
> I'm investigating minimal pre-processing options. The downside to this
> will make it harder to use with existing GUI editors like Fresco or
> The goal of this project isn't to do big cartography changes yet, but
> client-side rendering opens up new tools. The biggest immediate change
> is zoom is continuous, no longer an integer or fixed value. This means
> parameters like sizes can smoothly change as you zoom in and out,
> specified by their start and end size instead of having to specify each
> Want to help?
> Have a look at https://github.com/pnorman/openstreetmap-cartographic and
> have a go at setting it up and generating your own map. If you have
> issues, open an issue or pull request. Or, because OpenStreetMap
> Cartographic uses Tilekiln have a look at
> dev mailing list
> dev at openstreetmap.org
More information about the dev