Operation Distance distance (GM_Object geometry), in Class GM_Object

Documentation
The operation "distance" shall return the distance between this GM_Object and another GM_Object. This distance is defined to be the greatest lower bound of the set of distances between all pairs of points that include one each from each of the two GM_Objects. A "distance" value shall be a positive number associated to distance units such as meters or standard foot. If necessary, the second geometric object shall be transformed into the same coordinate reference system as the first before the distance is calculated.
GM_Object::distance(geometry : GM_Object) : Distance
If the geometric objects overlap, or touch, then their distance apart shall be zero. Some current implementations use a "negative" distance for such cases, but the approach is neither consistent between implementations, nor theoretically viable.
The type "Distance" is one of the units of measure types included in annexes to ISO 15046-3.
NOTE The role of the reference system in distance calculations is important. Generally, there are at least three types of distances that may be defined between points (and therefore between geometric objects): map distance, geodetic distance, and terrain distance.
Map distance is the distance between the points as defined by their positions in a coordinate projection (such as on a map when scale is taken into account). Map distance is usually accurate for small areas where scale functions have well-behaved derivatives.
Geodesic distance is the length of the shortest curve between those two points along the surface of the earth model being used by the coordinate reference system. Geodesic distance behaves well for wide areas of coverage, and takes the earth's curvature into account. It is especially handy for air and sea navigation, although care should be taken to distinguish between rhumb line (curves of constant bearing) and geodesic curve distance.
Terrain distance will take into account the local vertical displacements (hypsography). Terrain distance can be based either on a geodesic distance or a map distance.


Protocol Qualification 
Exceptions Size 
Time ConcurrencySequential
Export ControlPublicAccess  


Preconditions


Postconditions


Semantics