如何在TileMill CartoCSS </elsefilter>中执行Mapnik <elsefilter>

时间:2014-04-11 09:51:28

标签: mapbox mapnik tilemill

我正试图在TileMill CartoCSS中实现mapnik-XML块这样的规则(规则中的!!!符号化不重叠!!!):

<Rule>
    <Filter>[attr_1]=value_1 and [attr_2]=value_2</Filter>
    <LineSymbolizer ... />
</Rule>
.
.
<Rule>
    <Filter>[attr_1]=value_3 and [attr_2]=value_4</Filter>
    <PolygonSymbolizer .../>    
</Rule>

<Rule>
    <ElseFilter/>
    <TextSymbolizer .../>
</Rule>  

我在文档中没有找到如何制作else-filter。

[attr_1 = value_1] [attr_2 = value_2] {
    ::line-symb {
        line-color: @color;
    }
}
.
.
[attr_1 = value_3] [attr_2 = value_4] {
    ::polygon-symb {
        polygon-fill: @color;
    }
}

// <ElseFilter/> ...

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

没有等同于else:将CartoCSS视为CSS,它也没有&#39;否则&#39;:您只需编写适用于的规则一般情况。因此,如果您按照其属性设置图层样式,则else通过制作仅适用于图层的规则来表示,而不使用属性过滤器。