Changes between Version 11 and Version 12 of WKTRaster/SeamlessArchitecture
- Timestamp:
- Jul 19, 2011, 7:19:08 AM (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
WKTRaster/SeamlessArchitecture
v11 v12 25 25 1. Spatial information with associated numeric value 26 26 27 The fundamental premise of this architecture is that there is a legitimate distinction between these types of information, but that ''both'' types of information may be conveyed using either raster or vector constructs. Operations may specify that they handle one or both types of information, and they are not required to handle the different information types evenhandedly. However, operations theyshould accept or produce ''all representations'' of the information they claim to handle (i.e. raster or vector.)27 The fundamental premise of this architecture is that there is a legitimate distinction between these types of information, but that ''both'' types of information may be conveyed using either raster or vector constructs. Operations may specify that they handle one or both types of information, and they are not required to handle the different information types evenhandedly. However, operations should accept or produce ''all representations'' of the information they claim to handle (i.e. raster or vector.) 28 28 29 29 == A tour of ISO 19123 == … … 42 42 43 43 The "value" field of the `CV_GeometryValuePair` must be constrained to be a list of numeric types (each member of the list may have different types). Alternatively, a data structure type, such as "`struct`" in C, may be used, provided that all the fields are numeric. When applied to a raster, the "value" field represents the information in all the raster's bands (or a subset thereof), in order. 44 45 Within the context of a relational database, there are two ways to represent a `CV_GeometryValuePair`. A special type may be created which has two fields: one a geometry and the other a numeric value. In PostGIS Raster, this type is called `geomval`. More generally, any table (or query) with one or more geometry columns may represent a collection of `CV_GeometryValuePair`s. Each row of such a table is a single association. In this latter case, it is necessary to pick one of the geometry columns to act as the `geometry` field. All other columns are part of the `value` field. 46 47 '''Example:''' A table with a geometry field called `geom` and three numeric fields called `band1`, `band2`, and `band3` could represent a collection of `CV_GeometryValuePair`s. Each row associates a single geometry with three numbers. If the data are to be displayed on a map, the geometry column contains the shapes which are drawn, and the value columns (everything else) may be used to select geometries to display, or may affect the display in some way (e.g., set the rotation, size or color of the symbol.) 48 49 Note that it is possible to have non-numeric values in this generic case where `CV_GeometryValuePair` is represented by a table. One of the value columns may be `text`, or `timestamp`. This is allowed by ISO 19123, and is a fairly commonplace occurrence when making a vector coverage (e.g., a "label" field in a value attribute table). The above limitation, where values are restricted to numeric types, applies when the set of `CV_GeometryValuePair`s is backed by an image format. Image formats do not store dates or strings for every pixel. Therefore, rasters have a limitation on allowable data types of the value fields which vectors do not. 44 50 45 51 === A raster is a CV_Grid ===