Mercurial > gemma
changeset 4582:51dc19001808 iso-areas
Added geoserver view and named style to match.
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Tue, 08 Oct 2019 16:13:53 +0200 |
parents | 01ea1e547c28 |
children | 0b01fd83bc3b |
files | schema/geoserver_views.sql style-templates/sounding_results_area.sld-template style-templates/sounding_results_areas_geoserver.sld-template |
diffstat | 3 files changed, 108 insertions(+), 99 deletions(-) [+] |
line wrap: on
line diff
--- a/schema/geoserver_views.sql Tue Oct 08 14:29:33 2019 +0200 +++ b/schema/geoserver_views.sql Tue Oct 08 16:13:53 2019 +0200 @@ -196,3 +196,12 @@ GROUP BY bottleneck_id) sr ON sr.bottleneck_id = bn.bottleneck_id WHERE bn.validity @> current_timestamp ORDER BY objnam; + +CREATE OR REPLACE VIEW waterway.sounding_results_areas_geoserver AS + SELECT + bottleneck_id, + date_info, + height, + CAST(areas AS geometry(multipolygon, 4326)) as areas + FROM waterway.sounding_results_iso_areas ia + JOIN waterway.sounding_results sr ON sr.id = ia.sounding_result_id;
--- a/style-templates/sounding_results_area.sld-template Tue Oct 08 14:29:33 2019 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,99 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<StyledLayerDescriptor - xmlns="http://www.opengis.net/sld" - xmlns:se="http://www.opengis.net/se" - xmlns:ogc="http://www.opengis.net/ogc" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" - version="1.1.0"> - <NamedLayer> - <se:Name>sounding_results_areas</se:Name> - <UserStyle> - <se:Name>sounding_results_areas</se:Name> - <se:FeatureTypeStyle> - <se:Name>area_colours</se:Name> - <se:Description> - <se:Abstract> - FeatureTypeStyle defining colour classes for height attribute - </se:Abstract> - </se:Description> - {{ range . -}} - <se:Rule> - {{- if not .HasLow }} - <se:Name>≤ {{ printf "%g" .High }}</se:Name> - <ogc:Filter> - <ogc:PropertyIsLessThanOrEqualTo> - <ogc:PropertyName>height</ogc:PropertyName> - <ogc:Literal>{{ printf "%f" .High }}</ogc:Literal> - </ogc:PropertyIsLessThanOrEqualTo> - </ogc:Filter> - {{- else if not .HasHigh }} - <se:Name>> {{ printf "%g" .Low }}</se:Name> - <ogc:Filter> - <ogc:PropertyIsGreaterThanOrEqualTo> - <ogc:PropertyName>height</ogc:PropertyName> - <ogc:Literal>{{ printf "%f" .Low }}</ogc:Literal> - </ogc:PropertyIsGreaterThanOrEqualTo> - </ogc:Filter> - {{- else }} - <se:Name>≤ {{ printf "%g" .High }}</se:Name> - <ogc:Filter> - <ogc:And> - <ogc:PropertyIsGreaterThan> - <ogc:PropertyName>height</ogc:PropertyName> - <ogc:Literal>{{ printf "%f" .Low }}</ogc:Literal> - </ogc:PropertyIsGreaterThan> - <ogc:PropertyIsLessThanOrEqualTo> - <ogc:PropertyName>height</ogc:PropertyName> - <ogc:Literal>{{ printf "%f" .High }}</ogc:Literal> - </ogc:PropertyIsLessThanOrEqualTo> - </ogc:And> - </ogc:Filter> - {{- end }} - <se:PolygonSymbolizer> - <se:Fill> - <se:SvgParameter name="fill">{{ .Color }}</se:SvgParameter> - </se:Fill> - <se:Stroke> - <se:SvgParameter name="stroke">#404040</se:SvgParameter> - <se:SvgParameter name="stroke-width">0.5</se:SvgParameter> - </se:Stroke> - </se:PolygonSymbolizer> - </se:Rule> - {{ end }} - </se:FeatureTypeStyle> - <se:FeatureTypeStyle> - <se:Name>area_labels</se:Name> - <se:Description> - <se:Abstract> - FeatureTypeStyle for labels at colour areas - </se:Abstract> - </se:Description> - <se:Rule> - <!-- - <se:MaxScaleDenominator>5e3</se:MaxScaleDenominator> - --> - <se:TextSymbolizer> - <se:Label> - <ogc:PropertyName>height</ogc:PropertyName> - </se:Label> - <se:Font> - <se:SvgParameter name="font-family">Avenir</se:SvgParameter> - <se:SvgParameter name="font-family">Helvetica</se:SvgParameter> - <se:SvgParameter name="font-family">Arial</se:SvgParameter> - <se:SvgParameter name="font-family">sans-serif</se:SvgParameter> - </se:Font> - <se:LabelPlacement> - <se:LinePlacement> - <se:PerpendicularOffset>5</se:PerpendicularOffset> - </se:LinePlacement> - </se:LabelPlacement> - <se:Fill> - <se:SvgParameter name="fill">#070707</se:SvgParameter> - </se:Fill> - </se:TextSymbolizer> - </se:Rule> - </se:FeatureTypeStyle> - </UserStyle> - </NamedLayer> -</StyledLayerDescriptor>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/style-templates/sounding_results_areas_geoserver.sld-template Tue Oct 08 16:13:53 2019 +0200 @@ -0,0 +1,99 @@ +<?xml version="1.0" encoding="UTF-8"?> +<StyledLayerDescriptor + xmlns="http://www.opengis.net/sld" + xmlns:se="http://www.opengis.net/se" + xmlns:ogc="http://www.opengis.net/ogc" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd" + version="1.1.0"> + <NamedLayer> + <se:Name>sounding_results_areas</se:Name> + <UserStyle> + <se:Name>sounding_results_areas</se:Name> + <se:FeatureTypeStyle> + <se:Name>area_colours</se:Name> + <se:Description> + <se:Abstract> + FeatureTypeStyle defining colour classes for height attribute + </se:Abstract> + </se:Description> + {{ range . -}} + <se:Rule> + {{- if not .HasLow }} + <se:Name>≤ {{ printf "%g" .High }}</se:Name> + <ogc:Filter> + <ogc:PropertyIsLessThanOrEqualTo> + <ogc:PropertyName>height</ogc:PropertyName> + <ogc:Literal>{{ printf "%f" .High }}</ogc:Literal> + </ogc:PropertyIsLessThanOrEqualTo> + </ogc:Filter> + {{- else if not .HasHigh }} + <se:Name>> {{ printf "%g" .Low }}</se:Name> + <ogc:Filter> + <ogc:PropertyIsGreaterThanOrEqualTo> + <ogc:PropertyName>height</ogc:PropertyName> + <ogc:Literal>{{ printf "%f" .Low }}</ogc:Literal> + </ogc:PropertyIsGreaterThanOrEqualTo> + </ogc:Filter> + {{- else }} + <se:Name>≤ {{ printf "%g" .High }}</se:Name> + <ogc:Filter> + <ogc:And> + <ogc:PropertyIsGreaterThan> + <ogc:PropertyName>height</ogc:PropertyName> + <ogc:Literal>{{ printf "%f" .Low }}</ogc:Literal> + </ogc:PropertyIsGreaterThan> + <ogc:PropertyIsLessThanOrEqualTo> + <ogc:PropertyName>height</ogc:PropertyName> + <ogc:Literal>{{ printf "%f" .High }}</ogc:Literal> + </ogc:PropertyIsLessThanOrEqualTo> + </ogc:And> + </ogc:Filter> + {{- end }} + <se:PolygonSymbolizer> + <se:Fill> + <se:SvgParameter name="fill">{{ .Color }}</se:SvgParameter> + </se:Fill> + <se:Stroke> + <se:SvgParameter name="stroke">#404040</se:SvgParameter> + <se:SvgParameter name="stroke-width">0.5</se:SvgParameter> + </se:Stroke> + </se:PolygonSymbolizer> + </se:Rule> + {{ end }} + </se:FeatureTypeStyle> + <se:FeatureTypeStyle> + <se:Name>area_labels</se:Name> + <se:Description> + <se:Abstract> + FeatureTypeStyle for labels at colour areas + </se:Abstract> + </se:Description> + <se:Rule> + <!-- + <se:MaxScaleDenominator>5e3</se:MaxScaleDenominator> + --> + <se:TextSymbolizer> + <se:Label> + <ogc:PropertyName>height</ogc:PropertyName> + </se:Label> + <se:Font> + <se:SvgParameter name="font-family">Avenir</se:SvgParameter> + <se:SvgParameter name="font-family">Helvetica</se:SvgParameter> + <se:SvgParameter name="font-family">Arial</se:SvgParameter> + <se:SvgParameter name="font-family">sans-serif</se:SvgParameter> + </se:Font> + <se:LabelPlacement> + <se:LinePlacement> + <se:PerpendicularOffset>5</se:PerpendicularOffset> + </se:LinePlacement> + </se:LabelPlacement> + <se:Fill> + <se:SvgParameter name="fill">#070707</se:SvgParameter> + </se:Fill> + </se:TextSymbolizer> + </se:Rule> + </se:FeatureTypeStyle> + </UserStyle> + </NamedLayer> +</StyledLayerDescriptor>