Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved.
26
Figure 5 — Discrete coverage types
Because the superclass is not abstract, an instance of the superclass may consist of mixed types of CV_GeometryValuePair.
6.2 CV_DiscretePointCoverage
6.2.1 General
A discrete point coverage is characterized by a finite domain consisting of points. Generally, the domain is a set of irregularly distributed points. However, the principal use of discrete point coverages is to provide a basis
for continuous coverage functions, where the evaluation of the continuous coverage function is accomplished by interpolation between the points of the discrete point coverage. Most interpolation algorithms depend upon
a structured pattern of spatial relationships between the points. This requires either that the points in the spatial domain of the discrete point coverage be arranged in a regular way, or that the spatial domain of the
continuous coverage be partitioned in a regular way in relation to the points of the discrete point coverage. Grid coverages Clauses 8 and 9 employ the first method; Thiessen polygon Clause 7 and TIN Clause 10
coverages employ the second.
EXAMPLE A set of hydrographic soundings is a discrete point coverage.
Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved.
27
Figure 6 — CV_DiscretePointCoverage
6.2.2 Inherited associations and operations
CV_DiscretePointCoverage Figure 6 inherits the association CoverageFunction and the operations locate, find,
and list
from CV_DiscreteCoverage
5.7, with
the restriction
that the
associated CV_GeometryValuePairs and those returned by the operations shall be limited to CV_PointValuePairs.
6.3 CV_PointValuePair
CV_PointValuePair is the subtype of CV_GeometryValuePair that has a GM_Point as the value of its geometry attribute.
6.4 CV_DiscreteGridPointCoverage
6.4.1 General
The domain of a CV_DiscreteGridPointCoverage Figure 7 is a set of CV_GridPoints 8.5 that are associated with records of feature attribute values through a CV_GridValuesMatrix 8.14.
6.4.2 Inherited associations and operations
CV_DiscreteGridPointCoverage Figure 7 inherits the association CoverageFunction and the operations locate, find, and list, from CV_DiscreteCoverage, with the restriction that the associated
CV_GeometryValuePairs and those returned by the operations shall be limited to CV_GridPointValuePairs. The association CoverageFunction is shown as derived in this case because the elements may be generated
from the CV_GridValuesMatrix through the association PointFunction. The inherited operations evaluate and evaluateInverse use CV_GridValuesMatrix to assign values to the CV_GeometryValuePairs.
Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved.
28
Figure 7 — CV_DiscreteGridPointCoverage
6.4.3 point
The operation point g: CV_GridCoordinates: CV_GridPointValuePair shall accept a grid coordinate as input and use data from the associated CV_GridValuesMatrix to construct and return the CV_GridPointValuePair
associated with that grid position.
6.4.4 PointFunction
The association PointFunction shall link the CV_DiscreteGridPointCoverage to the CV_GridValuesMatrix for which it is an evaluator.
6.5 CV_GridPointValuePair
CV_GridPointValuePair is the subtype of CV_GeometryValuePair that has a GM_GridPoint as the value of its geometry attribute.
6.6 CV_DiscreteCurveCoverage
6.6.1 General
A discrete curve coverage is characterized by a finite spatial domain consisting of curves. Often the curves represent features such as roads, railroads or streams. They may be elements of a network.
EXAMPLE A coverage that assigns a route number, a name, a pavement width and a pavement material type to
each segment of a road system.
Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved.
29
6.6.2 Inherited operations and associations
CV_DiscreteCurveCoverage Figure 8 inherits the association CoverageFunction and the operations locate, find, list, evaluate and evaluateInverse from CV_DiscreteCoverage, with the restriction that the associated
CV_GeometryValuePairs and those returned by the operations shall be limited to CV_CurveValuePairs.
Figure 8 — CV_DiscreteCurveCoverage
6.7 CV_CurveValuePair
CV_CurveValuePair is the subtype of CV_GeometryValuePair that has a GM_Curve as the value of its geometry attribute.
6.8 CV_DiscreteSurfaceCoverage
6.8.1 General
A discrete surface coverage is a coverage whose domain consists of a collection of surfaces. In most cases, the surfaces that constitute the domain of a coverage are mutually exclusive and exhaustively partition the
extent of the coverage. Surfaces or their boundaries may be of any shape. The boundaries of component surfaces often correspond to natural phenomena and are highly irregular.
EXAMPLE A coverage that represents soil types typically has a spatial domain composed of surfaces with irregular
boundaries.
Any set of polygons can be used as a spatial domain for a discrete surface coverage. Spatial domains composed of congruent polygons are very common. Often, these domains are composed of congruent
rectangles or regular hexagons. The geometry of such a tessellation may be described in terms of a quadrilateral grid 8.2 or a hexagonal grid 9.1. The spatial domain of a discrete surface coverage may also
consist of the triangles that compose a TIN 10.7, or the polygons of a Thiessen polygon network 7.1.
Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved.
30
Figure 9 — CV_DiscreteSurfaceCoverage
6.8.2 Inherited operations and associations
CV_DiscreteSurfaceCoverage Figure 9 inherits the association CoverageFunction and the operations locate, find, list, evaluate, and evaluateInverse from CV_DiscreteCoverage, with the restriction that the associated
CV_GeometryValuePairs and those returned by the operations shall be limited to CV_SurfaceValuePairs.
6.8.3 TINBase
The association TINBase may be used to link a CV_DiscreteSurfaceCoverage to a CV_TINCoverage 10.2. The constraint
discreteTIN.element.geometry = triangleSource.controlValue.geometry requires that the spatial domain of the CV_DiscreteSurfaceCoverage be composed of the triangles belonging
to the CV_TINCoverage.
6.8.4 ThiessenBase
The association ThiessenBase may be used to link a CV_DiscreteSurfaceCoverage to a CV_ThiessenPolygonCoverage 7.2. The constraint
discreteThiessen.element.geometry = polygonSource.controlValue.geometry requires that the spatial domain of the CV_DiscreteSurfaceCoverage be composed of the polygons belonging
to the CV_ThiessenPolygonCoverage.
Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved.
31
6.9 CV_SurfaceValuePair
CV_SurfaceValuePair is the subtype of CV_GeometryValuePair that has a GM_Surface as the value of its geometry attribute.
6.10 CV_DiscreteSolidCoverage
6.10.1 General
A discrete solid coverage is a coverage whose domain consists of a collection of solids. Solids or their boundaries may be of any shape. Generally, the solids that constitute the domain of a coverage are mutually
exclusive and exhaustively partition the extent of the coverage, but this is not required.
EXAMPLE Buildings in an urban area could be represented as a set of unconnected GM_Solids each with attributes
such as building name, address, floor space and number of occupants.
As in the case of surfaces 5.8, the spatial domain of a discrete solid coverage may be a regular or semiregular tessellation of the extent of the coverage. The tessellation can be defined in terms of a three-
dimensional grid, where the set of grid cells is the spatial domain of the coverage.
Figure 10 — CV_DiscreteSolidCoverage
6.10.2 Inherited operations and associations
CV_DiscreteSolidCoverage Figure 10 inherits the association CoverageFunction and the operations locate, find, list, evaluate and evaluateInverse from CV_DiscreteCoverage, with the restriction that the associated
CV_GeometryValuePairs and those returned by the operations shall be limited to CV_SolidValuePairs.
6.11 CV_SolidValuePair
CV_SolidValuePair is the subtype of CV_GeometryValuePair that has a GM_Solid as the value of its geometry attribute.
Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved.
32
7 Thiessen polygon coverage
7.1 Thiessen polygon networks
A finite collection of points on a plane determines a partition of the plane into a collection of polygons equal in number to the collection of points. A Thiessen polygon is generated from one of a defining set of points by
forming the set of direct positions that are closer to that point than to any other point in the defining set. The specific point is called the centre of the resulting polygon. The boundaries between neighbouring polygons are
the perpendicular bisectors of the lines between their respective centres. Each polygon shares each of its edges with exactly one other polygon. Each polygon contains exactly one point from the defining set.
Thiessen polygons are also known as Voronoi Diagrams or Proximal Sets.
Figure 11 — An example of a Thiessen polygon network with x,y coordinates
A Thiessen polygon network Figure 11 is a tessellation of a two-dimensional space using Thiessen Polygons. A Thiessen polygon network provides a structure that supports interpolation of feature attribute values from
the polygon centres to direct positions within the polygons.
EXAMPLE Figure 11 shows a collection of points with their x,y coordinates, the perpendicular bisectors of the lines
that would be drawn between them, and the resultant polygons.
7.2 CV_ThiessenPolygonCoverage
7.2.1 General
A CV_ThiessenPolygonCoverage Figure 12 evaluates a coverage at direct positions within a Thiessen polygon network constructed from a set of discrete point value pairs. Evaluation is based on interpolation
between the centres of the CV_ThiessenValuePolygons surrounding the input position.
7.2.2 clipArea
The attribute clipArea: GM_Surface shall describe the extent of the CV_ThiessenPolygonNetwork. Its boundary determines the boundaries of the outermost polygons in the network, which would otherwise be
unbounded.