[Portugal] filtrar layer com varios atributos
Giovanni Manghi
giovanni.manghi faunalia.pt
Terça-Feira, 14 de Fevereiro de 2012 - 11:12:44 EST
> Pelo que percebi tenho de colocar sempre o classitem e que o atributo
> não precisa de ser necessariamente os utilizados na expression.
Olá Pedro,
podes dar uma vista de olhos ao exercicio 17 do curso da semana passada.
Aqui em baixo um exemplo modificado.
A palavra chave "FILTER" serve para fazer uma query no vector, ou seja
para limitar quais geometrias o mapserver irá "considerar" (ou
descarregar, no caso se trate de uma camada PostGIS). Neste caso
FILTER ( "[CONCELHO]" IN "BEJA,ÉVORA" AND [AREA_T_HA] > 6800 )
quer dizer algo do genero:
SELECT * FROM "caop" WHERE ("CONCELHO" = 'BEJA' OR "CONCELHO" = ÉVORA')
AND (AREA_T_HA > 6800)
As palavras chave
CLASSITEM
e
FILTERITEM
servem para especificar qual é o atributo que deve ser usado na query
(filter) e na criação da simbologia (expression). Obviamente em "filter"
e "expression" podes especificar outros atributos, quando for
necessario.
#######################
LAYER
NAME "caop"
GROUP "Limites_Administrativos"
DATA "caop"
STATUS DEFAULT
TYPE POLYGON
FILTERITEM "CONCELHO"
FILTER ( "[CONCELHO]" IN "BEJA,ÉVORA" AND [AREA_T_HA] > 6800 )
CLASSITEM "NOME"
CLASS
NAME "Beja"
EXPRESSION "BALEIZÃO"
STYLE
COLOR 250 174 118
END
END
CLASS
NAME "Évora"
EXPRESSION (("[NOME]" eq "NOSSA SENHORA DE MACHEDE") OR ("[DICOFRE]"
eq "070504"))
STYLE
COLOR 220 255 255
END
END
CLASS
NAME "Outras Freguesias"
STYLE
COLOR 220 220 220
OUTLINECOLOR 176 176 176
END
END
END
#######################
Esta é a pagina chave do manual de Mapserver
http://mapserver.org/mapfile/expressions.html#expressions
abraços
-- Giovanni --
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mapserv.png
Type: image/png
Size: 41674 bytes
Desc: not available
Url : http://lists.osgeo.org/pipermail/portugal/attachments/20120214/d54122cd/mapserv-0001.png
Mais informações acerca da lista Portugal