This is a cheat sheet summarizing the v1.0 Mapzen Vector Tiles CHANGLELOG's major breaking changes that we used to update Mapzen house styles.
- Topic
- example Tangram scene file YAML
old>new
- example Tangram scene file YAML
===
-
new tile url sources:
https://vector.mapzen.com/osm/all/{z}/{x}/{y}.mvt>https://tile.mapzen.com/mapzen/vector/v1/all/{z}/{x}/{y}.mvt
-
every layer:
sort_keyproperty renamed tosort_rankfeature.sort_key>feature.sort_rank
-
every layer: boolean values
yes>true(for everything exceptoneway)- water layer:
boundary: yes>boundary: true
- roads layer:
is_tunnel: yes>is_tunnel: true
- roads layer:
is_bridge: yes>is_bridge: true
- roads layer:
is_link: yes>is_link: true
- boundaries layer:
maritime_boundary: yes>maritime_boundary: true
- building, earth, landuse, and water layers:
label_position: yes>label_position: true
- water layer:
-
roads layer:
highwayproperty renamed tokind_detailhighway: [trunk, primary]>kind_detail: [trunk, primary]highway: secondary>kind_detail: secondaryhighway: [tertiary, tertiary_link]>kind_detail: [tertiary, tertiary_link]highway: service>kind_detail: servicehighway: [steps, track]>kind_detail: [steps, track]highway: pedestrian>kind_detail: pedestrianhighway: track>kind_detail: trackhighway: steps>kind_detail: steps
-
roads layer
-
Natural Earth
natural_earth_roads: * filter: * * - $zoom: { min: 5, max: 8 } * major_road: * * filter: { kind: major_road } * minor_road: * * filter: { kind: minor_road } -
for OSM roads in mid and high zooms, optionally:
osm_roads: filter: - $zoom: { min: 8 }
-
-
roads layer:
man_made>kind_detailman_made: [pier]>kind_detail: [pier]
-
roads layer:
aeroway>kind_detailaeroway: taxiway>kind_detail: taxiway
-
roads layer:
aerialway>kind_detailaerialway: [gondola, cable_car]>kind_detail: [gondola, cable_car]
-
boundaries layer:
admin_level>kind_detailadmin_level: 2>kind_detail: 2
-
pois layer:
sport>kind_detailfeature.sport>feature.kind_detailsport: basketball>kind_detail: basketball
-
places layer:
type>kindtype: country>kind: country
-
buildings layer: building area are funky at mid-zooms now because of merging
-
use new
scale_rankto filter instead of area at zoom 13 and 14 -
zoom 13
- { $zoom: [13], area: { min: 50000 } } - { $zoom: [13], height: { min: 250 } } - { $zoom: [13], volume: { min: 200000 } }to
- { $zoom: [13], scale_rank: [1,2] } -
zoom 14
- { $zoom: [14], area: { min: 5000 } } - { $zoom: [14], height: { min: 190 } } - { $zoom: [14], volume: { min: 150000 } }to
- { $zoom: [14], scale_rank: [1,2,3] } -
Where scale_rank is defined in this table:
area,height,volume,landuse_kind,scale_rank >=100000,*,*,*,1 *,>=250,*,*,1 *,*,>=300000,*,1 >=20000,*,*,*,2 >=5000,*,*,+,2 *,>=150,*,*,2 *,*,>=150000,*,2 >=5000,*,*,*,3 >=3000,*,*,+,3 *,>=100,*,*,3 *,*,>=100000,*,3 >=1000,*,*,*,4 >=500,*,*,+,4 *,*,>=50000,*,4 +,*,*,*,5
-
-
buildings layer:
kindproperties are nowkind_detailkind: [university, college, school, kindergarten]>kind_detail: [university, college, school, kindergarten]kindvalues in buildings are nowbuildingorbuilding_part(in addition to address & etc)
-
places layer:
scalerank>min_zoom- you can generally remove the scalerank filters completely from low zooms, as well as source filters.
- at mid zooms you can still mix and match Natural Earth and OpenStreetMap features to "backfill" low or no pop places.
scalerank: [0]>min_zoom: [2]scalerank: [1]>min_zoom: [3]scalerank: [2]>min_zoom: [4]scalerank: [3]>min_zoom: [5]scalerank: [4]>min_zoom: [5]scalerank: [5]>min_zoom: [6]scalerank: [6]>min_zoom: [6]scalerank: [7]>min_zoom: [7]scalerank: [8]>min_zoom: [9]scalerank: [9]>min_zoom: [9]scalerank: [10]>min_zoom: [10]
-
boundaries layer:
scalerank>min_zoomscalerank: [0]>min_zoom: [7](yeah, right! this was to fix bad data, see Hungry)scalerank: [1]>min_zoom: [2]scalerank: [2]>min_zoom: [2]scalerank: [3]>min_zoom: [3]scalerank: [4]>min_zoom: [5]scalerank: [5]>min_zoom: [5.5]scalerank: [6]>min_zoom: [6]scalerank: [7]>min_zoom: [6.7]scalerank: [8]>min_zoom: [6.8]scalerank: [9]>min_zoom: [7]filter: { scalerank: [0,3,4,5,6,7,8,9,10], $zoom: { max: 8 } }>filter: { not: { min_zoom: [1,2] }, $zoom: { max: 8 } }
-
landuse layer (and pois that have areas from landuse polygons:
- remove all the area filters
- except:
kind: [garden, allotments]kind: [police, fire_station, substation, plant, wastewater_plant, water_works]kind: [cafe, restaurant, nursing_home]kind: [parking, pedestrian, common, pitch, place_of_worship, playground, school, nursing_home]
-
place layer: kind values
kind: [city, town]>kind: localitykind: [village]>kind_detail: [village]kind: [hamlet]>kind_detail: [hamlet]
-
place layer:
capital(andyes)capital: yes>country_capital: truestate_capital: yes> `region_capital: true
-
place and boundaries layers: region
kind: [state]>kind: [region]
-
landuse layer:
forest- some values are now
natural_forest - but many values are still forest
- some values are now
-
landuse layer:
park- some values are now
natural_park - but many values are still park
- some values are now
-
landuse layer:
wood- some values are now
natural_wood - but many values are still work
- some values are now
-
earth layer:
continentlabels- If you haven't updated for several versions, continent labels moved to the earth layer (from places layer)
-
water layer:
oceanandsealabels- If you haven't updated for several versions, ocean and sea labels moved to the water layer (from places layer)