Más

Simbología basada en atributos de Geoserver SLD


Tengo un conjunto de datos en el que se deben mostrar varios atributos con el mismo símbolo. Puedo lograr esto usando múltiples operadores 'PropertyIsEqualTo' anidados dentro de los operadores lógicos 'O', vea el ejemplo a continuación;

  CURRENT_ST AB-LOC  CURRENT_ST ABD

Esto parece un poco ineficiente, especialmente considerando que tengo alrededor de 10 tipos de símbolos diferentes, cada uno con alrededor de 10 atributos que contribuyen. Idealmente, simplemente limpiaría los datos de los atributos o agregaría un campo de símbolo que los agrupara, pero esa no es una opción en este caso.

¿Existe una forma más eficiente de hacer esto?

Por ejemplo, sería genial poder enumerar los atributos como los que se muestran a continuación;

 CURRENT_ST 'AB-LOC', 'ABD', 'ABC', 'DEF'

Geoserver proporciona un conjunto de funciones SLD no estándar además de las características SLD estándar. El operador 'IN' es parte de estas funciones no estándar. Algo así debería funcionar:

   CURRENT_ST AB-LOC ABD A B C DEF cierto

Tenga en cuenta que en la funciónin4,4corresponde al número de argumentos que especifique. Cámbielo de acuerdo con la cantidad de valores en su lista. El estándar OGC Filter 1.0 utilizado en SLD 1.0 restringe un número fijo de argumentos, por eso elenLa función se proporciona como una serie deinXdondeXes el número real de argumentos que debe aplicar.

Puede echar un vistazo a esta página de documentación y ejemplo: http://docs.geoserver.org/stable/en/user/styling/sld-tipstricks/mixed-geometries.html#geometrytype-function


Ver el vídeo: ETIQUETADO CON QGIS 2020 ETIQUETADO EN BASE A REGLAS. CAPITULO 3. CAEG (Octubre 2021).