mirror of
https://github.com/rastapasta/mapscii.git
synced 2025-03-19 08:18:13 +01:00
🎨 allow specific feature selection in render order (road->water->road:bridge)
This commit is contained in:
parent
bc2d050581
commit
3b05be5f14
@ -21,10 +21,11 @@ module.exports = class Renderer
|
||||
|
||||
#"poi_label", "water",
|
||||
drawOrder: [
|
||||
"water"
|
||||
"admin"
|
||||
"building"
|
||||
"road"
|
||||
"water"
|
||||
"road:structure=bridge"
|
||||
|
||||
"place_label"
|
||||
"poi_label"
|
||||
@ -106,6 +107,12 @@ module.exports = class Renderer
|
||||
|
||||
_drawLayers: ->
|
||||
for layer in @config.drawOrder
|
||||
if layer.indexOf(':') isnt -1
|
||||
[layer, filter] = layer.split /:/
|
||||
[filterField, filterValue] = filter.split /=/
|
||||
else
|
||||
filter = false
|
||||
|
||||
continue unless @features?[layer]
|
||||
|
||||
scale = Math.pow 2, @zoom
|
||||
@ -122,7 +129,8 @@ module.exports = class Renderer
|
||||
features = @features[layer].tree.search box
|
||||
@notify "rendering #{features.length} #{layer} features.."
|
||||
for feature in features
|
||||
@_drawFeature layer, feature, scale
|
||||
if not filter or feature.data.properties[filterField] is filterValue
|
||||
@_drawFeature layer, feature, scale
|
||||
|
||||
_drawFeature: (layer, data, scale) ->
|
||||
feature = data.data
|
||||
|
Loading…
Reference in New Issue
Block a user