Free and Open Source Web Mapping
Free and Open Source Web Mapping
Free and Open Source Web Mapping
Web Mapping
Prof. Maria Antonia Brovelli, Dr. Eng. Giorgio Zamboni
Politecnico di Milano Como Campus Italy
2
Geospatial Web
Users
Catalogues
Data
Processes
INTERNET
3
Web Mapping
Web Map and Geodata
Servers
Web Map and Geodata Clients
INTERNET
4
Map mashing-up
S
e
r
v
e
r
s
Clients
INTERNET
5
Interoperability / Standardization
Open and interoperable components
Interchangeable data
De jure standard: technical instruction set by
national and/or international standardization
organizations (ISO/OGC/National standards)
De facto standard: technical instruction used
by a noteworthy number of people and/or
organizations.
6
OGC Web Service (OWS)
XML (eXtensible Markup Language) is used for the
definition and the description of applications. The
communication is based (in the majority of cases) on the
HTTP protocol. Because of using XML, Web Services are
platform and OS-independent.
The functioning of OWS (OGC Web Services) can be
described in four steps:
the client contacts the server and queries it about its
functionalities
the server sends back to the client an XML document
containing the functionalities of the supported service
the client asks the server for data
the server provides the data as requested
7
WMS Example
Client Server
getCapabilities
XML Service Metadata
getMap
Map
Map A
Map B
Map C
Map A
Map B
Map C
A
B
C
Map B
8
OGC Web Map and Geodata Services
Data Delivery:
WMS: service that generates maps and
makes them available as images or as a
series of graphical elements
WFS: service that generates geographic
entities or features. If the service is
transaction (WFS-T), data manipulation is
allowed
WCS: service that generates geospatial
coverages, that are geospatial information
representing space-varying phenomena
(fields)
9
Data formats:
SFS: Simple Feature Standard
GML: Geography Markup Language
KML: Keyhole Markup Language
Data search:
CSW: Catalogue Service
WFS-G: Gazetteer Service
Other:
WPS: Web Processing Service
CTS: Coordinate Transformation Service
WTS: Web Terrain Service
SLD: Styled Layer Descriptor
WMC: Web Map Context
OGC Web Map and Geodata Services
10
FOSS Web Map - Geodata Servers (1)
Platform
independent
Windows, Linux,
Mac-OSX
Operating
System:
J ava C Language:
WMS, WFS(-T), WCS,
GML, KML, SLD
WMS, WFS(-T), WCS,
GML, SLD, WMC
OGC:
www.geoserver.org www.mapserver.org Web:
GPL MIT License:
2001 mid 90 Birth:
11
FOSS Web Map - Geodata Servers (2)
Platform
independent
Windows, Linux Operating
System:
J ava C++ Language:
WMS, WFS(-T), WCS,
GML, CSW, WFS-G,
WPS, WTS, SLD, WMC
WMS, WFS OGC:
wiki.deegree.org
www.mapguide.osgeo.org
Web:
LGPL LGPL License:
2005 2004 Birth:
12
They are interactive viewers in the most of cases simply
running in a web browser (Mozilla Firefox, Opera, Internet
Explorer, etc.). Sometimes, depending on the technology
adopted, plug-ins, i.e. pieces of software providing specific
functionalities not available in the simple browser
interaction, are requested.
New generation web map and geodata clients are
completely independent from the server application that
lies behind them: they communicate indifferently by means
of OGC open protocols with MapServer, GeoServer,
MapGuide, deegree, etc.
By means of this kind of applications, which renders maps
from Web Map and Geodata Services, users can navigate
maps, zoom in, zoom out, pan, click and query, turn layers
on and off or add more maps. They can additionally edit
map features (if data are served by a Transactional Web
Feature Service), build their own maps, contacting
different services on different machines and save them to
be used at any time or to be shared.
Web Map and Geodata Clients (1)
13
13
An example
Different languages
Scalebar
Reference map
Legenda
Main map
Scale
14
14
Zoom full extent
An example
Back
Zoom in/out
Forward Zoom to Selected
Zoom in Zoom out Pan
Identify Select Tool
Tip
Measure
Add Point of
Interest
Refresh Map
15
15
An example
WMS Services WFS Services
Data stored in the local server
(e.g.: shapefiles, rasters, MapInfo tables and
all the other formats supported by MapServer)
16
16
An example
Searching tools:
Searchitem
Identify
Select
Tool Tip
:
17
Web mapping
client
comparison
(German Carrillo, 2010)
Web Map and Geodata Clients (2)
18
Previous products are nicely presented for comparison in
Web mapping client comparison v.4 by German Carrillo
(may 2010)
(*)
The comparison is divided in three parts:
general description: license, origin country, origin
company or entity, documentation (languages, formats,
level [users, developers]), OSGeo support, comments;
technical features: source code language, API language,
OGC services supported, support of tile-based maps,
need of proprietary plug-ins, inclusion of metadata
component, mailing lists;
links of interest: screenshot, current version, official
website, documentation, features/roadmap, gallery/demo.
(*) http://geotux.tuxfamily.org/index.php?option=com_myblog&task=view&id=257&Itemid=59&lang=en
Web Map and Geodata Clients (3)
19
Desktop Map and Geodata Clients (1)
Windows, Linux,
Mac-OSX
Windows, Linux,
Mac-OSX
Operating
System:
C C Language:
WMS, WFS(-T), SFS,
GML, KML
WMS, WFS, GML,
WPS
OGC:
www.qgis.org grass.osgeo.org Web:
GPL GPL License:
2002 1982 Birth:
Quantum GIS GRASS
20
Desktop Map and Geodata Clients (2)
Platform
independent
Platform
independent
Operating
System:
J ava J ava Language:
WMS, WFS(-T), SFS,
GML, WPS, SLD
WMS, WFS(-G),
WCS, GML, KML,
CSW, SLD
OGC:
www.openjump.org www.gvsig.org Web:
GPL GPL License:
2002 2003 Birth:
OpenJump gvSIG
21
Desktop Map and Geodata Clients (3)
Platform
independent
MS Windows Operating
System:
J ava C#, C++, Visual Basic,
.NET
Language:
WMS, WFS(-T), SFS,
GML, WPS, SLD
WMS, WFS OGC:
udig.refractions.net www.mapwindow.org Web:
LGPL Mozilla License:
2004 2004 Birth:
uDig
MapWindow
22
Currently the most of the Internet viewers
are bi-dimensional (horizontal).
Virtual globe: a 3D representation of the
Earth
Advantages:
more immersive effects
intuitive interactions
ability to freely move around in the virtual
environment by changing the viewing angle and
location
capability of representing many different views on
the surface of the Earth
Multi-D Map and Geodata Clients (1)
23
Comparison of Open Source Virtual Globes presented at FOSS4G-2010
Barcelona by Mathias Walker, Pirmin Kalberer
(http://2010.foss4g.org/presentations/3690.pdf)
OssimPlanet
OssimPlanet
NASA World
Wind Java SDK
NASA World
Wind Java SDK
gvSIG 3D
gvSIG 3D
osgEarth
osgEarth
Norkart Virtual
Globe
Norkart Virtual
Globe
Earth3D
Earth3D
Marble
Marble
QGIS 3D
QGIS 3D
deegree 3D
deegree 3D
Multi-D Map and Geodata Clients (2)
24
SDK (Software Development Kit)
Virtual Globe
NASA Open Source Agreement License
Multi-Platform (J ava: Write Once, Run AnyWhere)
J OGL (J ava OpenGL 3D - Engine)
Client WMS Server (v0.6 nightly builds)
Web: worldwind.arc.nasa.gov/java
NASA World Wind (Java SDK)
25
Main interfaces:
Globe: represents the planet's shape and
terrain (ellipsoid and terrain)
Layer: overlaps geospatial information to the
Globe (images, icons, markers, 3D objects, )
Model: combines the Globe and Layers
SceneController: controls the rendering of the
Model
View: controls the user's view of the Model
(location camera settings, )
WWJ SDK Architecture (1)
26
WorldWindow
Model
Configuration
(Global)
Globe
Tessellator
Notifier (Global)
Frame Controller View
Layer
Cache
Web
Scene Controller
Application
Canvas
Window Environment
(Swing, AWT, etc.)
WWJ SDK Architecture (2)
27
Servers NASA USGS (U.S. Geological Survey):
DTM:
SRTM30Plus (30 arc-sec ~900m), SRTM3
v2 v4.1 (3 arc-sec, ~90m), ASTER (~30m),
USGS NED (~30m, ~10m US only)
IMAGERY:
BlueMarble (BMNG 1Km), i3-Landsat (15m),
USGS Ortho-Topo (1m US only), Urban
Area Ortho (0.5 0.25m selected US city)
WWJ SDK Architecture (3)
28
Microsoft has allowed World Wind to
incorporate Virtual Earth high resolution data for non-
commercial use.
It is possible to take from a whichever OGC compliant
WMS server the geo-referenced images (and maps)
we want to project on the globe.
It is possible to take from specific WMSs, whose code
is made available by NASA, the digital elevation
models we want to superimpose to the geoid model
implemented within the platform.
Construction of the scenario
WWJ SDK Architecture (4)
29
time
WWJ-CLIENT
Remote
Database
THEMATIC
MAPS (2D)
Remote
Database
IMAGERY
Remote
Database
DTM
WMS
SERVER
(WWJ0.6)
WMS
SERVER
WMS
SERVER
2D
Map
t=t
0
Map
t=t
1
Map
t=t
2
Projection on the Earth surface (2D) of time varying
thematic maps
3D Model (1)
Scenario
WWJ SDK
3D
Model
30
Original dataset (Landsati7 + SRTM) Custom orthophoto Custom orthophoto + thematical map Custom orthophoto + DTM + thematical map Custom orthophoto + DTM + thematical map
3D Model (2)
31
Thematical map: t = t
0
Thematical map: t = t
1
Thematical map: t = t
2
Thematical map: t = t
3
Thematical map: t = t
4
3D Model (3)
32
3D Thematical Maps
SHP FILE
A
C
D
B
E DB
Attributes
(mdb, xml, )
Natural domain (lake)
SHP FILE
A
B
C
D
E
DB
Attributes
(mdb, xml, )
Artificial domain
(building)
4D Model Irregular shapes (1)
WWJ-CLIENT
SHP
Loader
Geometry
Builder
33
4D Model Irregular shapes (2)
A(t0) A(t1) A(t3) A(tN) A(t2) A()
3D Thematical Maps
t
A
t1 t2 t3 tN t0
Feature attributes
34
time
WWJ-CLIENT
WMS
SERVER
Remote
Database
IMAGERY
WMS
SERVER
Remote
Database
3D MODEL
(SHP)
ATTRIBUTES
(DB)
Remote
Database
DTM
3D
WEB
SERVER
Attribute
t=t
0
Attribute
t=t
1
Attribute
t=t
2
4D Model Irregular shapes (3)
Scenario
WWJ SDK
4D
Model
35
4D Model Irregular shapes (4)
Olbia Buildings Mean Energy Classification by Color Attribute: Incentive Thematized by Color Attribute: Incentive Thematized by Color and Height
36
Doxel Model (1)
VOXEL (3D)
v
WWJ-CLIENT
+
time
(1D)
4D Thematic Map
NetCDF
Loader
Geometry
Builder
NetCDF FILE
3D VARIABLES
DIMENSIONS
ATTRIBUTES
units
sources
COORDINATES
DOXEL (4D)
(Dynamic voxel)
=
v(t0) v(t1) v(t2) v(t3)
37
time
WWJ-CLIENT
WMS
SERVER
Remote
Database
IMAGERY
WMS
SERVER
Remote
Database
3D MODEL
+
ATTRIBUTES
(NetCDF)
Remote
Database
DTM
3D
WEB
SERVER
Attribute
t=t
0
Attribute
t=t
1
Attribute
t=t
2
Doxel Model (2)
Scenario
WWJ SDK
4D
Model
38
Doxel Model (3)
v(t)
0 1 2 3 N
v(t0) v(t1) v(t3) v(tN) v(t2)
no
data
t
v
t1 t2 t3 tN t0
39
LONGITUDE SECTION
GET ATTRIBUTE INFO
INFO
t
Attribute Value
Doxel Model (4)
HORIZONTAL SECTION
LATITUDE SECTION
Interactions with the 3D model
40
EST-WA (1)
(Environment Space and Time Web Analyzer)
Metadata Viewer
2D Viewer
Data Filter
EST-WA2D
3D
Geometry
Builder
Local
cache
4D Viewer
(WWJ engine)
2D Profile viewer
EST-WA3D
EST-WA
NetCDF
data
NetCDF
data
Remote
Server
http
DTM Texture
41
EST-WA (2)
EST-WA3D
EST-WA2D: METADATA VIEWER EST-WA2D: DATA FILTER