SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
Open Source GIS

Geographic scripting in uDig - halfway
    between user and developer
  Geoinformation Research Group, Department of Geography
                   University of Potsdam
                        March 2013




                            Data in uDig
                        Tutor: Andrea Antonello




    ydroloGIS             nvironmental                 ngineering
 HydroloGIS S.r.l. - Via Siemens, 19 - 39100 Bolzano   www.hydrologis.com
Which are the main vector geo-objects?
The main spatial data types that are usually dealth with are:




      Point




                                                                  GeometryCollection
              MultiPoint

                            LineString
                                                MultiLineString




      LinearRing
                           Polygon               MultiPolygon
(Multi)Point

A Point models a single Coordinate, a MultiPoint models a collection of

points.
(Multi)LineString

The LineString is what we generally call line. It has a length, but 0 area.
(Multi)Polygon

Polygons have a length (perimeter) and an area. They can also have holes.




An example of MultiPolygons can be seen above. Alaska is part of the USA

but not attached to it, more than one polygon is merged into a single feature.
Vector data: Feature and FeatureType
The Feature represents probably the most central object for GIS

applications. The FeatureType can be seen as the blueprint of the data.

Vector data are composed of a geometry part and an attribute table.



                                SimpleFeatureType:
                                the_geom: LineString
                                id: Integer
                        road1   name: String
                                length: Double




                                           id          name         length
                                           1           road1         56.4
                road2
                                           2           road2        120.0


                 geometry                              attributes
Filters



A Filter defines a constraint that can be checked against an object.


A filter can be seen as the WHERE clause of an SQL statement. It can apply

both to the alphanumeric values of an attribute table as well as to the

geometry.


One example could be: give me all the cities of Canada that count more

than 10000 inhabitants.
Constraint Query Language

The Constraint Query Language is used to define expressions and filters in

several parts of the uDig application.

The uDig user help explains quite well how to use CQL. Online that can be

found here.


Examples:

 • CITY = 'Nelson'

 • ATTR1 < (1 + ((2 / 3) * 4))
 • ATTR1 < abs(ATTR2)

 • ATTR1 < 10 AND ATTR2 < 2 OR ATTR3 > 10
A few examples of CQL in uDig

Select every feature that contains a text rome.
Select all the cities in Italy that have more than 500000 inhabitants.
Style
Style is that part that allows us to make maps look pretty and get the needed

symbolization and coloring of the contained data. The OGC defines the

Styled Layer Descriptor (SLD) as the standard to style maps.


To create SLD styles, the style editor of uDig can be used.
Raster data: GridCoverage
A GridCoverage is what in the real world we usually call Raster or Grid, i.e.

a rectangular regular grid of pixels, each containing a value. The following

schema contains the main definitions we will use:


                          cols
                                               grid space
                                                                          raster values
                                                     north
            rows
                                  0,0                       1200 1800 1800 1800

                                                            1200 1170 1130 1130
                   y (northing)


                                  west   2,1                1200 1170 1130 1100




                                                                                  east
                                                                          x res




                                                                  y res
                                                                                         equator




                                     x (easting)     south

                                                 world space
When we talk about raster data in GIS we usually mean digital

elevation/terrain/surface models (DEM/DTM/DSM). DEMs can be used to

extract various attributes useful for hydrologic, geomorphologic analyses.

From the DEM maps like aspect, flowdirections, curvatures, gradient and

extracted network can be calculated.


Also ortophotos and in general georeferenced imagery is technically

speaking raster data.


The difference between the two, is that imagery contains in each cell the

information of the pixel color, while DEM or similar contain the value of the

scientific entity (ex. the elevation value in a DEM).
CoordinateReferenceSystem
WIKIPEDIA: "A spatial reference system (SRS) or coordinate reference

system (CRS) is a coordinate-based local, regional or global system used

to locate geographical entities. A spatial reference system defines a

specific map projection, as well as transformations between different

spatial reference systems. Spatial reference systems are defined by the

OGC's Simple feature access using well-known text, and support has been

implemented by several standards-based geographic information systems.

Spatial reference systems can be referred to using a SRID integer, including

EPSG codes defined by the International Association of Oil and Gas

Producers."
The Datum

The datum is a reference surface from which measurements are made

(Wikipedia).

Datums can be local, which are locally orientated ellissoid (no deviation on

the vertical, locally tangent), or global, which are used to cover the whole

globe and designed to support satellitar measurements.


                                        global ellipsoid




                                      local ellipsoid




                                              geoid
Example Datums

Roma 40

      local datum based on Hayford ellipsoid, with prime meridian on Monte

      Mario

European Datum 50

      local datum based on Hayford ellipsoid, tangent in Potsdam area,

      with prime meridian in Greenwich. Used for UTM-ED50 CRS.

World Geodetic System WGS84

      global datum with origin on the earth's mass center. Used for

      example in the classic GPS CRS (EPSG:4326)
The Universal Transverse Mercator (UTM)

UTM maps the Earth with a transverse cylinder projection using 60 different

meridians, each of which is a standard "UTM Zone". By rotating the cylinder

in 60 steps (six degrees per step, about 800Km) UTM assures that all spots

on the globe will be within 3 degrees from the center of one of the 60

cylindrical projections.
Coordinate reprojection and transform, the (not so small) difference

Often reproject and transform are used the same way without much care.

There is a big difference though.

reproject

       This is what we would call coordinate transform (CT). A CT can be

       resolved in a well defined mathematical manner that doesn't lead to

       precision loss (even if usually there is some minor due to data

       precision and roundings).

transform

       This is what we could call datum transform. Since datums are local

       approximations of the geoid, transformations between datums are

       based on statistical methods and lead most of the times to precision

       loss.
CoordinateReferenceSystems in uDig

In uDig data that have a projection information are reprojected on the fly. The

data from the Natural Earth dataset are in the geographic Lat/long WGS84.

Is it possible to reproject them in WGS 84 / UTM zone 32N?


Sure, open the CRS dialog and set it to the UTM zone of choice:
CoordinateReferenceSystems mess

Remeber: a CRS has an area of validity. On small portions one can

transform between lat/long and UTM32N without problems.
This work is released under Creative Commons Attribution Share
Alike (CC-BY-SA)

Much of the knowledge needed to create this training material has
been produced by the sparkling knights of the GeoTools, JTS and
uDig community. Another essential source has been the Wikipedia
community effort.

Particular thanks go to those friends that directly or indirectly helped
out in the creation and review of this series of handbooks.

This tutorial is brought to you by HydroloGIS.

Weitere ähnliche Inhalte

Was ist angesagt?

STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...csandit
 
Texture mapping in_opengl
Texture mapping in_openglTexture mapping in_opengl
Texture mapping in_openglManas Nayak
 
Drobics, m. 2001: datamining using synergiesbetween self-organising maps and...
Drobics, m. 2001:  datamining using synergiesbetween self-organising maps and...Drobics, m. 2001:  datamining using synergiesbetween self-organising maps and...
Drobics, m. 2001: datamining using synergiesbetween self-organising maps and...ArchiLab 7
 
2017 RM-URISA Track: Spatial SQL - The Best Kept Secret in the Geospatial World
2017 RM-URISA Track:  Spatial SQL - The Best Kept Secret in the Geospatial World2017 RM-URISA Track:  Spatial SQL - The Best Kept Secret in the Geospatial World
2017 RM-URISA Track: Spatial SQL - The Best Kept Secret in the Geospatial WorldGIS in the Rockies
 
CS 354 Bezier Curves
CS 354 Bezier Curves CS 354 Bezier Curves
CS 354 Bezier Curves Mark Kilgard
 
CS 354 Transformation, Clipping, and Culling
CS 354 Transformation, Clipping, and CullingCS 354 Transformation, Clipping, and Culling
CS 354 Transformation, Clipping, and CullingMark Kilgard
 
Introduction to spatial data analysis in r
Introduction to spatial data analysis in rIntroduction to spatial data analysis in r
Introduction to spatial data analysis in rRichard Wamalwa
 
Regression kriging
Regression krigingRegression kriging
Regression krigingFAO
 
Rendering of Complex 3D Treemaps (GRAPP 2013)
Rendering of Complex 3D Treemaps (GRAPP 2013)Rendering of Complex 3D Treemaps (GRAPP 2013)
Rendering of Complex 3D Treemaps (GRAPP 2013)Matthias Trapp
 
Interactive Rendering and Stylization of Transportation Networks Using Distan...
Interactive Rendering and Stylization of Transportation Networks Using Distan...Interactive Rendering and Stylization of Transportation Networks Using Distan...
Interactive Rendering and Stylization of Transportation Networks Using Distan...Matthias Trapp
 
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...Susang Kim
 
2.5D Clip-Surfaces for Technical Visualization
2.5D Clip-Surfaces for Technical Visualization2.5D Clip-Surfaces for Technical Visualization
2.5D Clip-Surfaces for Technical VisualizationMatthias Trapp
 
Cubist
CubistCubist
CubistFAO
 
2013.10.24 big datavisualization
2013.10.24 big datavisualization2013.10.24 big datavisualization
2013.10.24 big datavisualizationSean Kandel
 
Build Your Own 3D Scanner: 3D Scanning with Swept-Planes
Build Your Own 3D Scanner: 3D Scanning with Swept-PlanesBuild Your Own 3D Scanner: 3D Scanning with Swept-Planes
Build Your Own 3D Scanner: 3D Scanning with Swept-PlanesDouglas Lanman
 

Was ist angesagt? (20)

STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
 
Texture mapping in_opengl
Texture mapping in_openglTexture mapping in_opengl
Texture mapping in_opengl
 
1422798749.2779lecture 5
1422798749.2779lecture 51422798749.2779lecture 5
1422798749.2779lecture 5
 
Drobics, m. 2001: datamining using synergiesbetween self-organising maps and...
Drobics, m. 2001:  datamining using synergiesbetween self-organising maps and...Drobics, m. 2001:  datamining using synergiesbetween self-organising maps and...
Drobics, m. 2001: datamining using synergiesbetween self-organising maps and...
 
2017 RM-URISA Track: Spatial SQL - The Best Kept Secret in the Geospatial World
2017 RM-URISA Track:  Spatial SQL - The Best Kept Secret in the Geospatial World2017 RM-URISA Track:  Spatial SQL - The Best Kept Secret in the Geospatial World
2017 RM-URISA Track: Spatial SQL - The Best Kept Secret in the Geospatial World
 
CS 354 Bezier Curves
CS 354 Bezier Curves CS 354 Bezier Curves
CS 354 Bezier Curves
 
CS 354 Transformation, Clipping, and Culling
CS 354 Transformation, Clipping, and CullingCS 354 Transformation, Clipping, and Culling
CS 354 Transformation, Clipping, and Culling
 
Introduction to spatial data analysis in r
Introduction to spatial data analysis in rIntroduction to spatial data analysis in r
Introduction to spatial data analysis in r
 
Saga.lng
Saga.lngSaga.lng
Saga.lng
 
07object3d
07object3d07object3d
07object3d
 
Regression kriging
Regression krigingRegression kriging
Regression kriging
 
Rendering of Complex 3D Treemaps (GRAPP 2013)
Rendering of Complex 3D Treemaps (GRAPP 2013)Rendering of Complex 3D Treemaps (GRAPP 2013)
Rendering of Complex 3D Treemaps (GRAPP 2013)
 
Interactive Rendering and Stylization of Transportation Networks Using Distan...
Interactive Rendering and Stylization of Transportation Networks Using Distan...Interactive Rendering and Stylization of Transportation Networks Using Distan...
Interactive Rendering and Stylization of Transportation Networks Using Distan...
 
Geospatial Data in R
Geospatial Data in RGeospatial Data in R
Geospatial Data in R
 
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...
[Paper] GIRAFFE: Representing Scenes as Compositional Generative Neural Featu...
 
2.5D Clip-Surfaces for Technical Visualization
2.5D Clip-Surfaces for Technical Visualization2.5D Clip-Surfaces for Technical Visualization
2.5D Clip-Surfaces for Technical Visualization
 
Cubist
CubistCubist
Cubist
 
2013.10.24 big datavisualization
2013.10.24 big datavisualization2013.10.24 big datavisualization
2013.10.24 big datavisualization
 
Twopi.1
Twopi.1Twopi.1
Twopi.1
 
Build Your Own 3D Scanner: 3D Scanning with Swept-Planes
Build Your Own 3D Scanner: 3D Scanning with Swept-PlanesBuild Your Own 3D Scanner: 3D Scanning with Swept-Planes
Build Your Own 3D Scanner: 3D Scanning with Swept-Planes
 

Ähnlich wie 02 Geographic scripting in uDig - halfway between user and developer

Opensource gis development - part 2
Opensource gis development - part 2Opensource gis development - part 2
Opensource gis development - part 2Andrea Antonello
 
Scattered gis handbook
Scattered gis handbookScattered gis handbook
Scattered gis handbookWaleed Liaqat
 
UG6thSem_major_GIS Data Structures.pptx DR P DAS.1.pptx
UG6thSem_major_GIS Data Structures.pptx DR P DAS.1.pptxUG6thSem_major_GIS Data Structures.pptx DR P DAS.1.pptx
UG6thSem_major_GIS Data Structures.pptx DR P DAS.1.pptxNancyVerma72
 
Review on Digital Elevation Model
Review on Digital Elevation ModelReview on Digital Elevation Model
Review on Digital Elevation ModelIJMER
 
Remote Sensing2.ppt
Remote Sensing2.pptRemote Sensing2.ppt
Remote Sensing2.pptAbidHayat9
 
Data models in geographical information system(GIS)
Data models in geographical information system(GIS)Data models in geographical information system(GIS)
Data models in geographical information system(GIS)Pramoda Raj
 
Important Topics
Important TopicsImportant Topics
Important TopicsAtiqa khan
 
VLSI Implementation of CORDIC Based Robot Navigation Processor
VLSI Implementation of CORDIC Based Robot Navigation ProcessorVLSI Implementation of CORDIC Based Robot Navigation Processor
VLSI Implementation of CORDIC Based Robot Navigation ProcessorIRJET Journal
 
Geographic Information System unit 1
Geographic Information System   unit 1Geographic Information System   unit 1
Geographic Information System unit 1sridevi5983
 
The GRASS GIS software (with QGIS) - GIS Seminar
The GRASS GIS software (with QGIS) - GIS SeminarThe GRASS GIS software (with QGIS) - GIS Seminar
The GRASS GIS software (with QGIS) - GIS SeminarMarkus Neteler
 
Inductive Triple Graphs: A purely functional approach to represent RDF
Inductive Triple Graphs: A purely functional approach to represent RDFInductive Triple Graphs: A purely functional approach to represent RDF
Inductive Triple Graphs: A purely functional approach to represent RDFJose Emilio Labra Gayo
 
rworldmap: A New R package for Mapping Global Data
rworldmap: A New R package for Mapping Global Datarworldmap: A New R package for Mapping Global Data
rworldmap: A New R package for Mapping Global DataDr. Volkan OBAN
 
Graceful labelings
Graceful labelingsGraceful labelings
Graceful labelingsradhikamathy
 
geographic information system pdf
geographic information system pdfgeographic information system pdf
geographic information system pdfRolan Ben Lorono
 
Digital Elevation Models
Digital Elevation ModelsDigital Elevation Models
Digital Elevation ModelsBernd Flmla
 

Ähnlich wie 02 Geographic scripting in uDig - halfway between user and developer (20)

Opensource gis development - part 2
Opensource gis development - part 2Opensource gis development - part 2
Opensource gis development - part 2
 
Scattered gis handbook
Scattered gis handbookScattered gis handbook
Scattered gis handbook
 
GIS Data Types
GIS Data TypesGIS Data Types
GIS Data Types
 
UG6thSem_major_GIS Data Structures.pptx DR P DAS.1.pptx
UG6thSem_major_GIS Data Structures.pptx DR P DAS.1.pptxUG6thSem_major_GIS Data Structures.pptx DR P DAS.1.pptx
UG6thSem_major_GIS Data Structures.pptx DR P DAS.1.pptx
 
Review on Digital Elevation Model
Review on Digital Elevation ModelReview on Digital Elevation Model
Review on Digital Elevation Model
 
Remote Sensing2.ppt
Remote Sensing2.pptRemote Sensing2.ppt
Remote Sensing2.ppt
 
Data models in geographical information system(GIS)
Data models in geographical information system(GIS)Data models in geographical information system(GIS)
Data models in geographical information system(GIS)
 
Important Topics
Important TopicsImportant Topics
Important Topics
 
Gdistance vignette
Gdistance vignetteGdistance vignette
Gdistance vignette
 
VLSI Implementation of CORDIC Based Robot Navigation Processor
VLSI Implementation of CORDIC Based Robot Navigation ProcessorVLSI Implementation of CORDIC Based Robot Navigation Processor
VLSI Implementation of CORDIC Based Robot Navigation Processor
 
Geographic Information System unit 1
Geographic Information System   unit 1Geographic Information System   unit 1
Geographic Information System unit 1
 
Fundamentals of GIS
Fundamentals of GISFundamentals of GIS
Fundamentals of GIS
 
The GRASS GIS software (with QGIS) - GIS Seminar
The GRASS GIS software (with QGIS) - GIS SeminarThe GRASS GIS software (with QGIS) - GIS Seminar
The GRASS GIS software (with QGIS) - GIS Seminar
 
Digital elevation model in GIS
Digital elevation model in GISDigital elevation model in GIS
Digital elevation model in GIS
 
Inductive Triple Graphs: A purely functional approach to represent RDF
Inductive Triple Graphs: A purely functional approach to represent RDFInductive Triple Graphs: A purely functional approach to represent RDF
Inductive Triple Graphs: A purely functional approach to represent RDF
 
rworldmap: A New R package for Mapping Global Data
rworldmap: A New R package for Mapping Global Datarworldmap: A New R package for Mapping Global Data
rworldmap: A New R package for Mapping Global Data
 
Graceful labelings
Graceful labelingsGraceful labelings
Graceful labelings
 
geographic information system pdf
geographic information system pdfgeographic information system pdf
geographic information system pdf
 
Digital Elevation Models
Digital Elevation ModelsDigital Elevation Models
Digital Elevation Models
 
Understanding raster
Understanding rasterUnderstanding raster
Understanding raster
 

Mehr von Andrea Antonello

Smash & Geopaparazzi - State of the art 2021
Smash & Geopaparazzi - State of the art 2021Smash & Geopaparazzi - State of the art 2021
Smash & Geopaparazzi - State of the art 2021Andrea Antonello
 
GEOPAPARAZZI: STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATION
GEOPAPARAZZI: STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATIONGEOPAPARAZZI: STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATION
GEOPAPARAZZI: STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATIONAndrea Antonello
 
GEOPAPARAZZI STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATION
GEOPAPARAZZI STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATIONGEOPAPARAZZI STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATION
GEOPAPARAZZI STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATIONAndrea Antonello
 
Geopaparazzi Survey Server workshop
Geopaparazzi Survey Server workshopGeopaparazzi Survey Server workshop
Geopaparazzi Survey Server workshopAndrea Antonello
 
Geopaparazzi Survey Server Installation
Geopaparazzi Survey Server InstallationGeopaparazzi Survey Server Installation
Geopaparazzi Survey Server InstallationAndrea Antonello
 
Modelling natural hazards in gvSIG with the HortonMachine plugins
Modelling natural hazards in gvSIG with the HortonMachine pluginsModelling natural hazards in gvSIG with the HortonMachine plugins
Modelling natural hazards in gvSIG with the HortonMachine pluginsAndrea Antonello
 
GEOPAPARAZZI: STATE OF THE ART
GEOPAPARAZZI: STATE OF THE ARTGEOPAPARAZZI: STATE OF THE ART
GEOPAPARAZZI: STATE OF THE ARTAndrea Antonello
 
Geopaparazzi - NEVER OUT OF DATA IN THE FIELD
Geopaparazzi - NEVER OUT OF DATA IN THE FIELDGeopaparazzi - NEVER OUT OF DATA IN THE FIELD
Geopaparazzi - NEVER OUT OF DATA IN THE FIELDAndrea Antonello
 
The HortonMachine, for data analysis to help scientists... and not only
The HortonMachine, for data analysis to help scientists... and not onlyThe HortonMachine, for data analysis to help scientists... and not only
The HortonMachine, for data analysis to help scientists... and not onlyAndrea Antonello
 
Geopaparazzi & gvSIG Mobile - state of the art
Geopaparazzi & gvSIG Mobile - state of the artGeopaparazzi & gvSIG Mobile - state of the art
Geopaparazzi & gvSIG Mobile - state of the artAndrea Antonello
 
PART 6: FROM GEO INTO YOUR REPORT
PART 6: FROM GEO INTO YOUR REPORTPART 6: FROM GEO INTO YOUR REPORT
PART 6: FROM GEO INTO YOUR REPORTAndrea Antonello
 
PART 4: GEOGRAPHIC SCRIPTING
PART 4: GEOGRAPHIC SCRIPTINGPART 4: GEOGRAPHIC SCRIPTING
PART 4: GEOGRAPHIC SCRIPTINGAndrea Antonello
 
PART 3: THE SCRIPTING COMPOSER AND PYTHON
PART 3: THE SCRIPTING COMPOSER AND PYTHONPART 3: THE SCRIPTING COMPOSER AND PYTHON
PART 3: THE SCRIPTING COMPOSER AND PYTHONAndrea Antonello
 
Foss4g2016 Geopaparazzi Workshop
Foss4g2016 Geopaparazzi WorkshopFoss4g2016 Geopaparazzi Workshop
Foss4g2016 Geopaparazzi WorkshopAndrea Antonello
 
New tools for LiDAR, forestry, river management and hydro-geomorphology in gvSIG
New tools for LiDAR, forestry, river management and hydro-geomorphology in gvSIGNew tools for LiDAR, forestry, river management and hydro-geomorphology in gvSIG
New tools for LiDAR, forestry, river management and hydro-geomorphology in gvSIGAndrea Antonello
 
Digital field mapping with Geopaparazzi and gvSIG
Digital field mapping with Geopaparazzi and gvSIGDigital field mapping with Geopaparazzi and gvSIG
Digital field mapping with Geopaparazzi and gvSIGAndrea Antonello
 
Geopaparazzi, history of a digital mapping kid
Geopaparazzi, history of a digital mapping kidGeopaparazzi, history of a digital mapping kid
Geopaparazzi, history of a digital mapping kidAndrea Antonello
 
Geopaparazzi, state of the art
Geopaparazzi, state of the artGeopaparazzi, state of the art
Geopaparazzi, state of the artAndrea Antonello
 
Geographic scripting in uDig
Geographic scripting in uDigGeographic scripting in uDig
Geographic scripting in uDigAndrea Antonello
 

Mehr von Andrea Antonello (20)

Smash & Geopaparazzi - State of the art 2021
Smash & Geopaparazzi - State of the art 2021Smash & Geopaparazzi - State of the art 2021
Smash & Geopaparazzi - State of the art 2021
 
GEOPAPARAZZI: STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATION
GEOPAPARAZZI: STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATIONGEOPAPARAZZI: STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATION
GEOPAPARAZZI: STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATION
 
GEOPAPARAZZI STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATION
GEOPAPARAZZI STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATIONGEOPAPARAZZI STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATION
GEOPAPARAZZI STATE OF THE ART OF THE DIGITAL FIELD MAPPING APPLICATION
 
Geopaparazzi Survey Server workshop
Geopaparazzi Survey Server workshopGeopaparazzi Survey Server workshop
Geopaparazzi Survey Server workshop
 
Geopaparazzi Survey Server Installation
Geopaparazzi Survey Server InstallationGeopaparazzi Survey Server Installation
Geopaparazzi Survey Server Installation
 
Modelling natural hazards in gvSIG with the HortonMachine plugins
Modelling natural hazards in gvSIG with the HortonMachine pluginsModelling natural hazards in gvSIG with the HortonMachine plugins
Modelling natural hazards in gvSIG with the HortonMachine plugins
 
GEOPAPARAZZI: STATE OF THE ART
GEOPAPARAZZI: STATE OF THE ARTGEOPAPARAZZI: STATE OF THE ART
GEOPAPARAZZI: STATE OF THE ART
 
Geopaparazzi - NEVER OUT OF DATA IN THE FIELD
Geopaparazzi - NEVER OUT OF DATA IN THE FIELDGeopaparazzi - NEVER OUT OF DATA IN THE FIELD
Geopaparazzi - NEVER OUT OF DATA IN THE FIELD
 
The HortonMachine, for data analysis to help scientists... and not only
The HortonMachine, for data analysis to help scientists... and not onlyThe HortonMachine, for data analysis to help scientists... and not only
The HortonMachine, for data analysis to help scientists... and not only
 
Geopaparazzi & gvSIG Mobile - state of the art
Geopaparazzi & gvSIG Mobile - state of the artGeopaparazzi & gvSIG Mobile - state of the art
Geopaparazzi & gvSIG Mobile - state of the art
 
PART 6: FROM GEO INTO YOUR REPORT
PART 6: FROM GEO INTO YOUR REPORTPART 6: FROM GEO INTO YOUR REPORT
PART 6: FROM GEO INTO YOUR REPORT
 
PART 5: RASTER DATA
PART 5: RASTER DATAPART 5: RASTER DATA
PART 5: RASTER DATA
 
PART 4: GEOGRAPHIC SCRIPTING
PART 4: GEOGRAPHIC SCRIPTINGPART 4: GEOGRAPHIC SCRIPTING
PART 4: GEOGRAPHIC SCRIPTING
 
PART 3: THE SCRIPTING COMPOSER AND PYTHON
PART 3: THE SCRIPTING COMPOSER AND PYTHONPART 3: THE SCRIPTING COMPOSER AND PYTHON
PART 3: THE SCRIPTING COMPOSER AND PYTHON
 
Foss4g2016 Geopaparazzi Workshop
Foss4g2016 Geopaparazzi WorkshopFoss4g2016 Geopaparazzi Workshop
Foss4g2016 Geopaparazzi Workshop
 
New tools for LiDAR, forestry, river management and hydro-geomorphology in gvSIG
New tools for LiDAR, forestry, river management and hydro-geomorphology in gvSIGNew tools for LiDAR, forestry, river management and hydro-geomorphology in gvSIG
New tools for LiDAR, forestry, river management and hydro-geomorphology in gvSIG
 
Digital field mapping with Geopaparazzi and gvSIG
Digital field mapping with Geopaparazzi and gvSIGDigital field mapping with Geopaparazzi and gvSIG
Digital field mapping with Geopaparazzi and gvSIG
 
Geopaparazzi, history of a digital mapping kid
Geopaparazzi, history of a digital mapping kidGeopaparazzi, history of a digital mapping kid
Geopaparazzi, history of a digital mapping kid
 
Geopaparazzi, state of the art
Geopaparazzi, state of the artGeopaparazzi, state of the art
Geopaparazzi, state of the art
 
Geographic scripting in uDig
Geographic scripting in uDigGeographic scripting in uDig
Geographic scripting in uDig
 

Kürzlich hochgeladen

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 

Kürzlich hochgeladen (20)

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 

02 Geographic scripting in uDig - halfway between user and developer

  • 1. Open Source GIS Geographic scripting in uDig - halfway between user and developer Geoinformation Research Group, Department of Geography University of Potsdam March 2013 Data in uDig Tutor: Andrea Antonello ydroloGIS nvironmental ngineering HydroloGIS S.r.l. - Via Siemens, 19 - 39100 Bolzano www.hydrologis.com
  • 2. Which are the main vector geo-objects? The main spatial data types that are usually dealth with are: Point GeometryCollection MultiPoint LineString MultiLineString LinearRing Polygon MultiPolygon
  • 3. (Multi)Point A Point models a single Coordinate, a MultiPoint models a collection of points.
  • 4. (Multi)LineString The LineString is what we generally call line. It has a length, but 0 area.
  • 5. (Multi)Polygon Polygons have a length (perimeter) and an area. They can also have holes. An example of MultiPolygons can be seen above. Alaska is part of the USA but not attached to it, more than one polygon is merged into a single feature.
  • 6. Vector data: Feature and FeatureType The Feature represents probably the most central object for GIS applications. The FeatureType can be seen as the blueprint of the data. Vector data are composed of a geometry part and an attribute table. SimpleFeatureType: the_geom: LineString id: Integer road1 name: String length: Double id name length 1 road1 56.4 road2 2 road2 120.0 geometry attributes
  • 7. Filters A Filter defines a constraint that can be checked against an object. A filter can be seen as the WHERE clause of an SQL statement. It can apply both to the alphanumeric values of an attribute table as well as to the geometry. One example could be: give me all the cities of Canada that count more than 10000 inhabitants.
  • 8. Constraint Query Language The Constraint Query Language is used to define expressions and filters in several parts of the uDig application. The uDig user help explains quite well how to use CQL. Online that can be found here. Examples: • CITY = 'Nelson' • ATTR1 < (1 + ((2 / 3) * 4)) • ATTR1 < abs(ATTR2) • ATTR1 < 10 AND ATTR2 < 2 OR ATTR3 > 10
  • 9. A few examples of CQL in uDig Select every feature that contains a text rome.
  • 10. Select all the cities in Italy that have more than 500000 inhabitants.
  • 11. Style Style is that part that allows us to make maps look pretty and get the needed symbolization and coloring of the contained data. The OGC defines the Styled Layer Descriptor (SLD) as the standard to style maps. To create SLD styles, the style editor of uDig can be used.
  • 12. Raster data: GridCoverage A GridCoverage is what in the real world we usually call Raster or Grid, i.e. a rectangular regular grid of pixels, each containing a value. The following schema contains the main definitions we will use: cols grid space raster values north rows 0,0 1200 1800 1800 1800 1200 1170 1130 1130 y (northing) west 2,1 1200 1170 1130 1100 east x res y res equator x (easting) south world space
  • 13. When we talk about raster data in GIS we usually mean digital elevation/terrain/surface models (DEM/DTM/DSM). DEMs can be used to extract various attributes useful for hydrologic, geomorphologic analyses. From the DEM maps like aspect, flowdirections, curvatures, gradient and extracted network can be calculated. Also ortophotos and in general georeferenced imagery is technically speaking raster data. The difference between the two, is that imagery contains in each cell the information of the pixel color, while DEM or similar contain the value of the scientific entity (ex. the elevation value in a DEM).
  • 14. CoordinateReferenceSystem WIKIPEDIA: "A spatial reference system (SRS) or coordinate reference system (CRS) is a coordinate-based local, regional or global system used to locate geographical entities. A spatial reference system defines a specific map projection, as well as transformations between different spatial reference systems. Spatial reference systems are defined by the OGC's Simple feature access using well-known text, and support has been implemented by several standards-based geographic information systems. Spatial reference systems can be referred to using a SRID integer, including EPSG codes defined by the International Association of Oil and Gas Producers."
  • 15. The Datum The datum is a reference surface from which measurements are made (Wikipedia). Datums can be local, which are locally orientated ellissoid (no deviation on the vertical, locally tangent), or global, which are used to cover the whole globe and designed to support satellitar measurements. global ellipsoid local ellipsoid geoid
  • 16. Example Datums Roma 40 local datum based on Hayford ellipsoid, with prime meridian on Monte Mario European Datum 50 local datum based on Hayford ellipsoid, tangent in Potsdam area, with prime meridian in Greenwich. Used for UTM-ED50 CRS. World Geodetic System WGS84 global datum with origin on the earth's mass center. Used for example in the classic GPS CRS (EPSG:4326)
  • 17. The Universal Transverse Mercator (UTM) UTM maps the Earth with a transverse cylinder projection using 60 different meridians, each of which is a standard "UTM Zone". By rotating the cylinder in 60 steps (six degrees per step, about 800Km) UTM assures that all spots on the globe will be within 3 degrees from the center of one of the 60 cylindrical projections.
  • 18. Coordinate reprojection and transform, the (not so small) difference Often reproject and transform are used the same way without much care. There is a big difference though. reproject This is what we would call coordinate transform (CT). A CT can be resolved in a well defined mathematical manner that doesn't lead to precision loss (even if usually there is some minor due to data precision and roundings). transform This is what we could call datum transform. Since datums are local approximations of the geoid, transformations between datums are based on statistical methods and lead most of the times to precision loss.
  • 19. CoordinateReferenceSystems in uDig In uDig data that have a projection information are reprojected on the fly. The data from the Natural Earth dataset are in the geographic Lat/long WGS84. Is it possible to reproject them in WGS 84 / UTM zone 32N? Sure, open the CRS dialog and set it to the UTM zone of choice:
  • 20. CoordinateReferenceSystems mess Remeber: a CRS has an area of validity. On small portions one can transform between lat/long and UTM32N without problems.
  • 21. This work is released under Creative Commons Attribution Share Alike (CC-BY-SA) Much of the knowledge needed to create this training material has been produced by the sparkling knights of the GeoTools, JTS and uDig community. Another essential source has been the Wikipedia community effort. Particular thanks go to those friends that directly or indirectly helped out in the creation and review of this series of handbooks. This tutorial is brought to you by HydroloGIS.