私はmapnik0.7.1とopenlayersを備えたtileliteを使用しています。シェープファイルレイヤー(layers-shapefiles.xml.inc内)のスタイルで2つのルールを規定したいのですが、これを行うとliteserv.pyが起動しません。このレイヤーにも2つのスタイル(スタイルごとに1つのルール)を試しましたが、同じ結果になりました。スタイルブロックは次のとおりです。
<Style name="wilderness_boundaries">
<Rule>
&maxscale_zoom0;
&minscale_zoom9;
<PolygonSymbolizer>
<CssParameter name="fill">#72B656</CssParameter>
</PolygonSymbolizer>
<LineSymbolizer>
<CssParameter name="stroke">grey</CssParameter>
<CssParameter name="stroke-width">1.0</CssParameter>
<CssParameter name="stroke-dasharray">4,2</CssParameter>
</LineSymbolizer>
</Rule>
<Rule>
&maxscale_zoom10;
&minscale_zoom20;
<PolygonSymbolizer>
<CssParameter name="fill">#72B656</CssParameter>
</PolygonSymbolizer>
<LineSymbolizer>
<CssParameter name="stroke">grey</CssParameter>
<CssParameter name="stroke-width">1.0</CssParameter>
<CssParameter name="stroke-dasharray">4,2</CssParameter>
</LineSymbolizer>
<TextSymbolizer name="NAME" fontset_name="book-fonts" size="8" dy="2" fill="grey" halo_radius="1" />
</Rule>
</Style>
および対応するレイヤー定義:
<Layer name="wilderness_boundaries" status="on" srs="&srs4326;">
<StyleName>wilderness_boundaries</StyleName>
<Datasource>
<Parameter name="type">shape</Parameter>
<Parameter name="file">&world_boundaries;/wilderness_EPSG4326.shp</Parameter>
<Parameter name="encoding">latin1</Parameter>
</Datasource>
</Layer>
この構成でgenerate_image.pyを実行すると、セグメンテーション違反が発生します。
ご覧のとおり、すべてのズームレベルで荒野エリアのポリゴンを表示しようとしていますが、10を超えるズームレベルでのみラベルを付けています。osm.xmlの特定のスタイルには複数のルールが許可されていますが、何が欠けていますか?
ありがとう、ジョン