mirror of
https://github.com/rastapasta/mapscii.git
synced 2025-03-20 00:46:38 +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",
|
#"poi_label", "water",
|
||||||
drawOrder: [
|
drawOrder: [
|
||||||
"water"
|
|
||||||
"admin"
|
"admin"
|
||||||
"building"
|
"building"
|
||||||
"road"
|
"road"
|
||||||
|
"water"
|
||||||
|
"road:structure=bridge"
|
||||||
|
|
||||||
"place_label"
|
"place_label"
|
||||||
"poi_label"
|
"poi_label"
|
||||||
@ -106,6 +107,12 @@ module.exports = class Renderer
|
|||||||
|
|
||||||
_drawLayers: ->
|
_drawLayers: ->
|
||||||
for layer in @config.drawOrder
|
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]
|
continue unless @features?[layer]
|
||||||
|
|
||||||
scale = Math.pow 2, @zoom
|
scale = Math.pow 2, @zoom
|
||||||
@ -122,7 +129,8 @@ module.exports = class Renderer
|
|||||||
features = @features[layer].tree.search box
|
features = @features[layer].tree.search box
|
||||||
@notify "rendering #{features.length} #{layer} features.."
|
@notify "rendering #{features.length} #{layer} features.."
|
||||||
for feature in 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) ->
|
_drawFeature: (layer, data, scale) ->
|
||||||
feature = data.data
|
feature = data.data
|
||||||
|
Loading…
Reference in New Issue
Block a user