SlideShare uma empresa Scribd logo
1 de 45
Baixar para ler offline
Advanced cartographic map rendering in
              GeoServer


         Ing. Andrea Aime, GeoSolutions
    Ing. Simone Giannecchini, GeoSolutions




               FOSS4G 2011, Denver
              12th-16th September 2011
Overview

   Who we are
   Example map
   Raster styling
   Scale dependent rules
   Hatches, patterns and dashes
   Point Symbology
   Labeling
   Transformations
   Cross layer filtering
                      FOSS4G 2011, Denver
                     12th-16th September 2011
GeoSolutions
   Founded in Italy in late 2006
   Expertise
    •   Image Processing, GeoSpatial Data Fusion
    •   Java, Java Enterprise, C++, Python
    •   JPEG2000, JPIP, Advanced 2D visualization
   Supporting/Developing FOSS4G projects
       GeoTools, GeoServer
       GeoBatch, GeoNetwork

   Clients
       Public Agencies
       Private Companies

   http://www.geo-solutions.it
                                FOSS4G 2011, Denver
                               12th-16th September 2011
The example map




  FOSS4G 2011, Denver
 12th-16th September 2011
Example map




 FOSS4G 2011, Denver
12th-16th September 2011
Example map




 FOSS4G 2011, Denver
12th-16th September 2011
Example map




 FOSS4G 2011, Denver
12th-16th September 2011
Example map




 FOSS4G 2011, Denver
12th-16th September 2011
Example map




 FOSS4G 2011, Denver
12th-16th September 2011
Raster styling




 FOSS4G 2011, Denver
12th-16th September 2011
A DEM and a color map

   SRTM from USGS
   Standard color map
   Just avoid the nodata values
    with opacity=0
   A bit dull…




                       FOSS4G 2011, Denver
                      12th-16th September 2011
Add hillshade

   GeoServer cannot do
    hillshade
    on its own now
   gdaldem to the rescue:

    gdaldem hillshade -z 5 -s
    111120 srtm_boulder.tiff
    srtm_boulder_hs.tiff -co
    tiled=yes

   Partially transparent




                        FOSS4G 2011, Denver
                       12th-16th September 2011
Overlay the two




  FOSS4G 2011, Denver
 12th-16th September 2011
Scale dependent rules




    FOSS4G 2011, Denver
   12th-16th September 2011
Scale dependent rules

   Too often forgotten or little used, yet very important:
          Hide layers when too zoomed in (raster/vector
           example)
          Progressively show details
          Add more expensive rendering when there are less
           features
   Key to any high performance / good looking map




                         FOSS4G 2011, Denver
                        12th-16th September 2011
Example




 FOSS4G 2011, Denver
12th-16th September 2011
Hide as you zoom in

   Add a MinScaleDenominator to the rule
   This will make the layer disappear at 1:75000
    (towards 1:1)




                  FOSS4G 2011, Denver
                 12th-16th September 2011
Alternative rendering

   Simple rendering at low scale (up to 1:2000)
   More complex rendering when zoomed in (1:1999
    and above)




                  FOSS4G 2011, Denver
                 12th-16th September 2011
Alternative rendering




     FOSS4G 2011, Denver
    12th-16th September 2011
Hatches, patterns and dashes




        FOSS4G 2011, Denver
       12th-16th September 2011
Filling with patterns




    FOSS4G 2011, Denver
   12th-16th September 2011
Filling with TTF fonts




     FOSS4G 2011, Denver
    12th-16th September 2011
Hatches




 FOSS4G 2011, Denver
12th-16th September 2011
Hatches



 vertiline                    horline




   slash                   backslash




    plus                       times

 FOSS4G 2011, Denver
12th-16th September 2011
Dashes




 FOSS4G 2011, Denver
12th-16th September 2011
Dashes




 FOSS4G 2011, Denver
12th-16th September 2011
Point Symbology




  FOSS4G 2011, Denver
 12th-16th September 2011
Point symbols




• 600 loc for 6
  different points types
• Painful…

                        FOSS4G 2011, Denver
                       12th-16th September 2011
Prepare data

   alter table pointlm add column image varchar;

   update pointlm set image = 'shop_supermarket.p.16.png' where MTFCC =
    'C3081' and (FULLNAME like '%Shopping%' or FULLNAME like '%Mall%');
   update pointlm set image = 'peak.png' where MTFCC = 'C3022'

   update pointlm set image = 'amenity_prison.p.20.png' where MTFCC =
    'K1236';
   update pointlm set image = 'museum.p.16.png' where MTFCC = 'K2165';

   update pointlm set image = 'airport.p.16.png' where MTFCC = 'K2451';

   update pointlm set image = 'school.png' where MTFCC = 'K2543';

   update pointlm set image = 'christian3.p.14.png' where MTFCC =
    'K2582';

   update pointlm set image = 'gate2.png' where MTFCC = 'K3066';




                           FOSS4G 2011, Denver
                          12th-16th September 2011
Dynamic symbolizers




    FOSS4G 2011, Denver
   12th-16th September 2011
Labeling




 FOSS4G 2011, Denver
12th-16th September 2011
Line labels




 FOSS4G 2011, Denver
12th-16th September 2011
Point labels




 FOSS4G 2011, Denver
12th-16th September 2011
Polygon labels




  FOSS4G 2011, Denver
 12th-16th September 2011
Label Obstacles




  FOSS4G 2011, Denver
 12th-16th September 2011
Transformations




  FOSS4G 2011, Denver
 12th-16th September 2011
Geometry transformations




       FOSS4G 2011, Denver
      12th-16th September 2011
Geometry transformations




       FOSS4G 2011, Denver
      12th-16th September 2011
Rendering transformations




       FOSS4G 2011, Denver
      12th-16th September 2011
Rendering transformations




       FOSS4G 2011, Denver
      12th-16th September 2011
Cross layer filtering




   FOSS4G 2011, Denver
  12th-16th September 2011
Cross layer filtering




Get all schools close at less than 200m from a main road
                FOSS4G 2011, Denver
               12th-16th September 2011
Cross layer filtering

   Get all the main roads
   Turn then into a single geometry
   Get all the schools within 500 meters from the
    geometry just created

    CQL_FILTER =
     MTFCC='K2543' AND
         DWITHIN(the_geom,
            collectGeometries(
               queryCollection('foss4g:Mainrd',
                                 'the_geom', 'INCLUDE')),
         500, meters)


                     FOSS4G 2011, Denver
                    12th-16th September 2011
Demo and styles

   Demo of most these examples here:
          http://demo1.geo-
           solutions.it/playground/wms/reflect?layers=boulder&
           format=application/openlayers
          http://demo1.geo-
           solutions.it/playground/wms/reflect?layers=boulder_
           dem_tx&format=application/openlayers
   Full data, styles and configuration, ready to use:
          http://demo.geo-
           solutions.it/share/foss4g_data_dir.tar.gz
   Get the slides: http://geo-solutions.blogspot.com/


                         FOSS4G 2011, Denver
                        12th-16th September 2011
The End




        Questions?
   andrea.aime@geo-solutions.it
simone.giannecchini@geo-solutions.it
            FOSS4G 2011, Denver
           12th-16th September 2011

Mais conteúdo relacionado

Mais procurados

Mapserver vs. geoserver
Mapserver vs. geoserverMapserver vs. geoserver
Mapserver vs. geoserver
鸣 饶
 

Mais procurados (11)

GFOSS Day 2012 GeoServer Presentation
GFOSS Day 2012 GeoServer PresentationGFOSS Day 2012 GeoServer Presentation
GFOSS Day 2012 GeoServer Presentation
 
WMS Performance Shootout 2009
WMS Performance Shootout 2009WMS Performance Shootout 2009
WMS Performance Shootout 2009
 
Developing Distributed Semantic Systems
Developing Distributed Semantic SystemsDeveloping Distributed Semantic Systems
Developing Distributed Semantic Systems
 
GeoServer in Production: we do it, here is how!
GeoServer in Production: we do it, here is how!GeoServer in Production: we do it, here is how!
GeoServer in Production: we do it, here is how!
 
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...
 
GeoServer on Steroids
GeoServer on Steroids GeoServer on Steroids
GeoServer on Steroids
 
State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016
 
Mapserver vs. geoserver
Mapserver vs. geoserverMapserver vs. geoserver
Mapserver vs. geoserver
 
Fossgis 2013 GeoServer Presentation
Fossgis 2013 GeoServer PresentationFossgis 2013 GeoServer Presentation
Fossgis 2013 GeoServer Presentation
 
Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...
 
Raster data in GeoServer and GeoTools: Achievements, issues and future devel...
Raster data in GeoServer and GeoTools:  Achievements, issues and future devel...Raster data in GeoServer and GeoTools:  Achievements, issues and future devel...
Raster data in GeoServer and GeoTools: Achievements, issues and future devel...
 

Mais de GeoSolutions

MapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and ReactMapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and React
GeoSolutions
 
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesCreating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
GeoSolutions
 
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
GeoSolutions
 
Advanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServerAdvanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServer
GeoSolutions
 
GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015
GeoSolutions
 

Mais de GeoSolutions (20)

MapStore 2 - The Story
MapStore 2 - The StoryMapStore 2 - The Story
MapStore 2 - The Story
 
One GeoNode, many GeoNodes
One GeoNode, many GeoNodesOne GeoNode, many GeoNodes
One GeoNode, many GeoNodes
 
Introduction to GeoNode
Introduction to GeoNodeIntroduction to GeoNode
Introduction to GeoNode
 
Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...
 
GeoServer Feature FRENZY
GeoServer Feature FRENZYGeoServer Feature FRENZY
GeoServer Feature FRENZY
 
State of GeoServer 2.12
State of GeoServer 2.12State of GeoServer 2.12
State of GeoServer 2.12
 
MapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and ReactMapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and React
 
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesCreating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
 
Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...
 
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
 
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
 
Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015
 
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
 
Mapping the world beyond web mercator - FOSS4G 2015
Mapping the world beyond web mercator - FOSS4G 2015Mapping the world beyond web mercator - FOSS4G 2015
Mapping the world beyond web mercator - FOSS4G 2015
 
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
 
Advanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServerAdvanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServer
 
Spatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote SensingSpatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
 
GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015
 
GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoServer beginners gwf_2015
GeoServer beginners gwf_2015
 
Geosolutions gwf-2015-v01.04
Geosolutions gwf-2015-v01.04Geosolutions gwf-2015-v01.04
Geosolutions gwf-2015-v01.04
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

Advanced cartographic map rendering in GeoServer

  • 1. Advanced cartographic map rendering in GeoServer Ing. Andrea Aime, GeoSolutions Ing. Simone Giannecchini, GeoSolutions FOSS4G 2011, Denver 12th-16th September 2011
  • 2. Overview  Who we are  Example map  Raster styling  Scale dependent rules  Hatches, patterns and dashes  Point Symbology  Labeling  Transformations  Cross layer filtering FOSS4G 2011, Denver 12th-16th September 2011
  • 3. GeoSolutions  Founded in Italy in late 2006  Expertise • Image Processing, GeoSpatial Data Fusion • Java, Java Enterprise, C++, Python • JPEG2000, JPIP, Advanced 2D visualization  Supporting/Developing FOSS4G projects  GeoTools, GeoServer  GeoBatch, GeoNetwork  Clients  Public Agencies  Private Companies  http://www.geo-solutions.it FOSS4G 2011, Denver 12th-16th September 2011
  • 4. The example map FOSS4G 2011, Denver 12th-16th September 2011
  • 5. Example map FOSS4G 2011, Denver 12th-16th September 2011
  • 6. Example map FOSS4G 2011, Denver 12th-16th September 2011
  • 7. Example map FOSS4G 2011, Denver 12th-16th September 2011
  • 8. Example map FOSS4G 2011, Denver 12th-16th September 2011
  • 9. Example map FOSS4G 2011, Denver 12th-16th September 2011
  • 10. Raster styling FOSS4G 2011, Denver 12th-16th September 2011
  • 11. A DEM and a color map  SRTM from USGS  Standard color map  Just avoid the nodata values with opacity=0  A bit dull… FOSS4G 2011, Denver 12th-16th September 2011
  • 12. Add hillshade  GeoServer cannot do hillshade on its own now  gdaldem to the rescue: gdaldem hillshade -z 5 -s 111120 srtm_boulder.tiff srtm_boulder_hs.tiff -co tiled=yes  Partially transparent FOSS4G 2011, Denver 12th-16th September 2011
  • 13. Overlay the two FOSS4G 2011, Denver 12th-16th September 2011
  • 14. Scale dependent rules FOSS4G 2011, Denver 12th-16th September 2011
  • 15. Scale dependent rules  Too often forgotten or little used, yet very important:  Hide layers when too zoomed in (raster/vector example)  Progressively show details  Add more expensive rendering when there are less features  Key to any high performance / good looking map FOSS4G 2011, Denver 12th-16th September 2011
  • 16. Example FOSS4G 2011, Denver 12th-16th September 2011
  • 17. Hide as you zoom in  Add a MinScaleDenominator to the rule  This will make the layer disappear at 1:75000 (towards 1:1) FOSS4G 2011, Denver 12th-16th September 2011
  • 18. Alternative rendering  Simple rendering at low scale (up to 1:2000)  More complex rendering when zoomed in (1:1999 and above) FOSS4G 2011, Denver 12th-16th September 2011
  • 19. Alternative rendering FOSS4G 2011, Denver 12th-16th September 2011
  • 20. Hatches, patterns and dashes FOSS4G 2011, Denver 12th-16th September 2011
  • 21. Filling with patterns FOSS4G 2011, Denver 12th-16th September 2011
  • 22. Filling with TTF fonts FOSS4G 2011, Denver 12th-16th September 2011
  • 23. Hatches FOSS4G 2011, Denver 12th-16th September 2011
  • 24. Hatches vertiline horline slash backslash plus times FOSS4G 2011, Denver 12th-16th September 2011
  • 25. Dashes FOSS4G 2011, Denver 12th-16th September 2011
  • 26. Dashes FOSS4G 2011, Denver 12th-16th September 2011
  • 27. Point Symbology FOSS4G 2011, Denver 12th-16th September 2011
  • 28. Point symbols • 600 loc for 6 different points types • Painful… FOSS4G 2011, Denver 12th-16th September 2011
  • 29. Prepare data  alter table pointlm add column image varchar;  update pointlm set image = 'shop_supermarket.p.16.png' where MTFCC = 'C3081' and (FULLNAME like '%Shopping%' or FULLNAME like '%Mall%');  update pointlm set image = 'peak.png' where MTFCC = 'C3022'  update pointlm set image = 'amenity_prison.p.20.png' where MTFCC = 'K1236';  update pointlm set image = 'museum.p.16.png' where MTFCC = 'K2165';  update pointlm set image = 'airport.p.16.png' where MTFCC = 'K2451';  update pointlm set image = 'school.png' where MTFCC = 'K2543';  update pointlm set image = 'christian3.p.14.png' where MTFCC = 'K2582';  update pointlm set image = 'gate2.png' where MTFCC = 'K3066'; FOSS4G 2011, Denver 12th-16th September 2011
  • 30. Dynamic symbolizers FOSS4G 2011, Denver 12th-16th September 2011
  • 31. Labeling FOSS4G 2011, Denver 12th-16th September 2011
  • 32. Line labels FOSS4G 2011, Denver 12th-16th September 2011
  • 33. Point labels FOSS4G 2011, Denver 12th-16th September 2011
  • 34. Polygon labels FOSS4G 2011, Denver 12th-16th September 2011
  • 35. Label Obstacles FOSS4G 2011, Denver 12th-16th September 2011
  • 36. Transformations FOSS4G 2011, Denver 12th-16th September 2011
  • 37. Geometry transformations FOSS4G 2011, Denver 12th-16th September 2011
  • 38. Geometry transformations FOSS4G 2011, Denver 12th-16th September 2011
  • 39. Rendering transformations FOSS4G 2011, Denver 12th-16th September 2011
  • 40. Rendering transformations FOSS4G 2011, Denver 12th-16th September 2011
  • 41. Cross layer filtering FOSS4G 2011, Denver 12th-16th September 2011
  • 42. Cross layer filtering Get all schools close at less than 200m from a main road FOSS4G 2011, Denver 12th-16th September 2011
  • 43. Cross layer filtering  Get all the main roads  Turn then into a single geometry  Get all the schools within 500 meters from the geometry just created CQL_FILTER = MTFCC='K2543' AND DWITHIN(the_geom, collectGeometries( queryCollection('foss4g:Mainrd', 'the_geom', 'INCLUDE')), 500, meters) FOSS4G 2011, Denver 12th-16th September 2011
  • 44. Demo and styles  Demo of most these examples here:  http://demo1.geo- solutions.it/playground/wms/reflect?layers=boulder& format=application/openlayers  http://demo1.geo- solutions.it/playground/wms/reflect?layers=boulder_ dem_tx&format=application/openlayers  Full data, styles and configuration, ready to use:  http://demo.geo- solutions.it/share/foss4g_data_dir.tar.gz  Get the slides: http://geo-solutions.blogspot.com/ FOSS4G 2011, Denver 12th-16th September 2011
  • 45. The End Questions? andrea.aime@geo-solutions.it simone.giannecchini@geo-solutions.it FOSS4G 2011, Denver 12th-16th September 2011