Changes between Version 2 and Version 3 of UsersWikiCoveragesAndPostgis


Ignore:
Timestamp:
Jul 21, 2011, 2:09:12 PM (13 years ago)
Author:
bnordgren
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • UsersWikiCoveragesAndPostgis

    v2 v3  
    1919Querying a coverage for a set of values given a location is called ''evaluating'' the coverage. Querying for a (set of) location(s) given some criteria on the values is given the name ''evaluateInverse'' by ISO 19123. The specifics of how answers are generated for these queries depends on the type of coverage and how the "supporting data" are stored.
    2020
     21As soon as you provide a way to query for an value based on a location (and optionally a time), you have created a coverage. It does not matter how the supporting data are stored, or even ''if'' supporting data even exist. The notion of a coverage is a way to define a ''theme'' or a ''layer'' which produces information without worrying about the details of how that information is produced. The coverage is the tool we use to treat vector and raster data seamlessly.
     22
    2123== Continuous Coverages ==
    2224
    23 Continuous coverages
     25The easiest way to think of continuous coverages is to think of ''continuously varying coverages''. These are coverages where every location could have a different value than its neighbors. Such a coverage may actually be implemented with an equation. Consider a "!SunElevation" coverage which takes a location and a time and calculates the elevation of the sun above the horizon for that point at that time. Change either the location or the time, even slightly, and a slightly different elevation will result.
     26
     27A second example of a continuous coverage is an interpolated coverage. Consider a "Temperature" coverage which is based on temperature data from a set of weather stations. The simplest way to provide approximate values in between stations is to interpolate between the nearest stations. A common way to interpolate is to use the "inverse distance weighted" (IDW) method, giving close stations more weight than far away stations. Again, if the query location is changed even a little, the answer changes too.
     28
     29In PostGIS, you can implement a continuous coverage simply by writing a function which calculates a value based on location, or which interpolates the values stored in a table. Such a function is the `evaluate` method of a continuous coverage. If you would like your coverage to have an inverse method, you could write another function to calculate the inverse. In the case of the interpolated "Temperature" coverage above, a reasonable "inverse" method would be to allow the user to request the isotherm of a particular temperature.
     30