Announcing TileMill 0.10.0
We just released TileMill 0.10.0, the latest version of our open source map design studio. This release redefines the creative possibilities for web cartography with its new support for compositing layers and features, achieving photoshop-like clipping, masking, blurring, or highlighting. This powerful set of compositing operations can be used seamlessly across vector and raster layers all using pure CartoCSS. The compositing now possible in TileMill, in combination with image patterns or raster hillshades, can enable effects of uniqueness and beauty that go beyond what has previously been possible.
This new release allows operations (also known as modes) like
soft-light that are behind the remarkably vivid look of our new terrain layers.
For full documentation on the supported methods and how to use them see the TileMill Compositing docs.
The general design for this support comes from the SVG Compositing Spec, which all modern web browsers are working towards. The implementation in Mapnik was tackled by the infinitely talented Artem and battle tested by AJ and many other Mapnik community members while in development. We are thankful for the early innovation in compositing by Lars Ahlzen of TopOSM and our friends at Stamen, and are very excited to see re-implementions of previously complicated visualizations in just a few lines of Carto.
Advances in dynamic styling, performance, and remote data
There is more however than just compositing in this release.
A select set of styling properties are now newly data driven. For example, if you need variably sized marker sizes (“scale points”) to represent different data values you can now achieve this with one line of CartoCSS rather than needing multiple conditional rules
If your attribute values do not map directly to reasonable marker sizes, you can also apply math operators like
division and/or combine multiple fields together to properly size the markers:
marker-width:[FIELD1] * [FIELD2] / 10;
Like compositing, the possibilities are now only limited by the uniqueness of your data. For example (and just for fun), with nothing more than Natural Earth 10m populated places, which has Longitude and Latitudes as attributes and few lines of CartoCSS, I can create a scaled marker vortex around Null Island.
Thanks to work by Ansis, TileMill now supports fetching svg and image symbols like those you might reference from
background-image from anywhere on the web. For instance, if you would like to use styled MapBox markers directly in TileMill it is now as easy as:
And they can now be resized on the fly (both svg and png), have their opacity set (both svg and png) or recolored (just svg). Recoloring SVG icons is as simple as setting a property like
marker-line-color. Resizing can be done by using a scaling transform
marker-transform:scale(2,2); (to double the size of the symbol) or by setting a width
marker-width:20; (this internally generates the proper scaling transform).
This release brings major performance increases for Windows users. Previously TileMill on Windows needed to copy data upon import, which did not scale for large files. Now in TileMill 0.10.0, thanks to advances in Node.js and a lot of hard work by Ansis, symlinking is now used to reference data on Windows Vista/7/8 like on OS X and Linux. On platforms like Windows XP that do not support symlinks, node.js streams are now used to safely copy massive files.
TileMill 0.10.0 also newly supports using an HTTP proxy for web access thanks to an expansive sprint by Ansis (again, I know the guy is amazing). See the Proxy settings docs for details.