Geoserver. Некорректно подписываются дороги

Mapserver, GeoServer, MapGuide, Google и другое ПО для веб-картографии
Ответить
bulvinkl
Новоприбывший
Сообщения: 1
Зарегистрирован: 25 ноя 2015, 10:09
Репутация: 0

Geoserver. Некорректно подписываются дороги

Сообщение bulvinkl » 19 дек 2015, 00:33

всем привет!
использую данные OSM. как известно, в большинстве случаев улицы (дороги) в осме состоят из нескольких участков. столкнулся с проблемой их подписывания:
есть дорога, состоящая из двух участков разных классов - один highway=residential, второй highway=secondary. подпись дороги по правилу для residential почему-то появляется в том месте, где уже во всю тянется участок secondary, хотя линия residential под линией secondary не продолжается.
street_label.png
street_label.png (52.04 КБ) 2652 просмотра
желтые - secondary, белые - residential. размер подписи улицы Пушкина должен быть как у улицы Карла Маркса.

в правилах sld для обоих классов дорог используется опция группировки.
полные правила привел ниже под спойлерами.

кто-нибудь знает как это можно исправить? может быть я что-то с опциями наворотил?
p.s. как вариант можно соединить участки, но не хотелось бы.
Спойлер
<sld:FeatureTypeStyle>
<sld:Rule>
<ogc:Filter>
<ogc:PropertyIsEqualTo>
<ogc:PropertyName>highway</ogc:PropertyName>
<ogc:Literal>residential</ogc:Literal>
</ogc:PropertyIsEqualTo>
</ogc:Filter>
<sld:MinScaleDenominator>12500</sld:MinScaleDenominator>
<sld:MaxScaleDenominator>25000</sld:MaxScaleDenominator>
<sld:TextSymbolizer>
<sld:Label>
<ogc:PropertyName>name</ogc:PropertyName>
</sld:Label>
<sld:Font>
<sld:CssParameter name="font-family">DejaVu Sans</sld:CssParameter>
<sld:CssParameter name="font-size">9</sld:CssParameter>
<sld:CssParameter name="font-style">normal</sld:CssParameter>
<sld:CssParameter name="font-weight">normal</sld:CssParameter>
</sld:Font>
<sld:LabelPlacement>
<sld:LinePlacement />
</sld:LabelPlacement>
<sld:Halo>
<sld:Radius>1.5</sld:Radius>
<sld:Fill>
<sld:CssParameter name="fill">#ffffff</sld:CssParameter>
</sld:Fill>
</sld:Halo>
<sld:Fill>
<sld:CssParameter name="fill">#000000</sld:CssParameter>
</sld:Fill>
<sld:VendorOption name="followLine">true</sld:VendorOption>
<sld:VendorOption name="group">yes</sld:VendorOption>
<sld:VendorOption name="spaceAround">0</sld:VendorOption>
<sld:VendorOption name="maxDisplacement">300</sld:VendorOption>
<sld:VendorOption name="repeat">750</sld:VendorOption>
</sld:TextSymbolizer>
</sld:Rule>
</sld:FeatureTypeStyle>
Спойлер
<sld:FeatureTypeStyle>
<sld:Rule>
<ogc:Filter>
<ogc:PropertyIsEqualTo>
<ogc:PropertyName>highway</ogc:PropertyName>
<ogc:Literal>secondary</ogc:Literal>
</ogc:PropertyIsEqualTo>
</ogc:Filter>
<sld:MinScaleDenominator>12500</sld:MinScaleDenominator>
<sld:MaxScaleDenominator>25000</sld:MaxScaleDenominator>
<sld:TextSymbolizer>
<sld:Label>
<ogc:PropertyName>name</ogc:PropertyName>
</sld:Label>
<sld:Font>
<sld:CssParameter name="font-family">DejaVu Sans</sld:CssParameter>
<sld:CssParameter name="font-size">15</sld:CssParameter>
<sld:CssParameter name="font-style">normal</sld:CssParameter>
<sld:CssParameter name="font-weight">normal</sld:CssParameter>
</sld:Font>
<sld:LabelPlacement>
<sld:LinePlacement />
</sld:LabelPlacement>
<sld:Halo>
<sld:Radius>1.5</sld:Radius>
<sld:Fill>
<sld:CssParameter name="fill">#ffffff</sld:CssParameter>
</sld:Fill>
</sld:Halo>
<sld:Fill>
<sld:CssParameter name="fill">#000000</sld:CssParameter>
</sld:Fill>
<sld:VendorOption name="followLine">true</sld:VendorOption>
<sld:VendorOption name="group">yes</sld:VendorOption>
<sld:VendorOption name="spaceAround">0</sld:VendorOption>
<sld:VendorOption name="maxDisplacement">400</sld:VendorOption>
<sld:VendorOption name="repeat">500</sld:VendorOption>
</sld:TextSymbolizer>
</sld:Rule>
</sld:FeatureTypeStyle>

Ответить

Вернуться в «Веб-картография»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя