geospatial information systems made simple2016.changecon.com/wp-content/uploads/2016/10/... ·...
TRANSCRIPT
Geospatial Information Systems Made SimpleGIS FOR NON GIS DEVELOPERSDarko Boto
AGENDA
• GIS SPECIFICS
• LIBRARIES PORTS AND BINDINGS
• GDAL
• PROJ.4
• GEOS
• WHAT IS G IN GIS?
• GIS ESSENTIAL LIBRARIES
• READ TRANSFORM ANALYZE
• LIBRARY PORTS
• LIBRARY BINDINGS
• GDAL - VECTOR DATA
• GDAL - RASTER DATA
• SPATIAL INDEXES
• PROJ.4 –TRANSFORMATION
• PROJ.4 – CROATIAN SRS
• GEOS - C/C++ port of JTS
• WHAT GEOS PROVIDES?
WHAT IS G IN GIS?
Spatial data driver
Spatialcontext
Spatialoperations IS
GIS ESSENTIAL LIBRARYS
GDAL Geospatial Data Abstraction Library, C/C++ X11/MIT
PROJ4 Cartographic Projections Library, C/C++ MIT
GEOS Geometry Engine, Open Source, C/C++ LGPL
READ TRANSFORM ANALYZE
GDALREAD
SPATIAL DATA
WRITE SPATIAL DATA
PROJ4PUT DATA IN SPATIAL CONTEXT
DO SPATIAL TRANSFOR-
MATION
GEOSDO SOME SPATIAL
OPERATION
ANALYZE SPATIAL
DATA
RENDER VISUALIZE PUBLISH
Spatial data driver
Spatialcontext
Spatialoperations IS
LIBRARYS PORTS
GEOS
PROJ4
NTS
PROJ.NET
JTS
JMapProjLib
JSTS
PROJ4JS
LIBRARY BINDINGS
>>> import gdal>>> import ogr>>> import osr>>> import gdalnumeric>>> import gdalconst
• SWIG (Simplified Wrapper and Interface Generator)
• JNI (Java Native Interfaces)
Supported high-level programming languages:Python, Perl, TCL, Java, Ruby, OCaml, C#, Allegro, Lua, Common Lisp, R, Octave, Go, D, Javascript, Scilab, PHP, Scheme…
GDAL - Geospatial Data Abstraction Library
142RASTER DRIVERS
84VECTOR DRIVERS
30RASTER
UTILITIES
4VECTOR
UTILITIES
Software using GDAL:
• ESRI ArcGIS, FME, ERDAS, GoogleEarth, Mapinfo …
• PostGIS, QGIS, Geoserver, Mapnik, OTB, GRASS …
GDAL - VECTOR DATA (WKB/WKT)
Spatial databases drivers• Oracle Spatial
• SQL Server Spatial
• Postgres/PostGIS
• SQLite/Spatial…
POINT MULTIPOINT LINE MULTILINE POLYGON MULTIPOLYGON
Spatial data format drivers• Shapefile
• MID
• GML
• GeoJSON…
POINT (30 10) LINESTRING (30 10, 10 30, 40 40) POLYGON ((30 10, 40 40, 20 40, 10 20, 30 10))
SPATIAL INDEXES
QuadtreeR Tree R* Tree
GDAL - RASTER DATA
RASTERS EXAMLPES:
• DEM, DSM
• DOF
• Satelite images
• Multispectral images
GRID – dot matrix data structure
RASTER FORMATS:
• GeoTIFF
• ESRI Grid
• NetCDF
• MrSID
OPTIMIZATION:
• Tiling
• Pyramids
• Caching
COORDINATE TRANSFORMATION
• Projections
• Koordinate systems
• Transformations (on the fly)
Geoid World projections examples
CROATIAN SRS – HTRS96/TMHrvatski Terestrički Referentni Sustav / Transverse Mercator Projection
(HTRS96/TM) EPSG:3765
HTRS96/TM EPSG:3765 WGS84 EPSG:4326
GEOS - C/C++ port of JTS
SPATIAL RELATIONS:contains, within, covers,intersects, disjoint, crosses, overlaps, touches, equals
OVERLAY FUNCTIONS:intersection, difference, union, symmetric difference, unary union
Polygon overlays A intersection B A union B A diference B A symDiference B
Software using GEOS:
• GoogleEarth,
• GDAL,
• QGIS,
• PostGIS…
Provides an object model for Euclidean planar linear geometry and implements the geometry model and API
776SPATIAL
FUNCTIONS
SPATIAL ANALYSIS EXAMPLE
Map by Dr. John Snow of London, showing clusters of cholera cases in the 1854 Broad Street cholera outbreak.
WHAT GEOS PROVIDES?
Geometric functions
• Topological validity checking
• Area and Distance functions
• Overlay functions (including intersection, difference, union, symmetric difference, etc.)
• Buffer computation
• Convex hull
• Geometric simplification
• Linear referencing
• Precision reduction
• Delaunay triangulation
• Voronoi diagram generation
Spatial structures and algorithms
• Robust line segment intersection
• Efficient line arrangement intersection or noding
• Efficient point in polygon
• Spatial index structures including quadtree and STR-tree
• Planar graph structures and algorithms
I/O capabilities
• Reading and writing of WKT, WKB and GML formats
Thank you!Questions?