MarkLogic 10 Product Documentation
geo:region-clean

geo:region-clean(
   $region as cts:region,
   [$options as xs:string*]
) as cts:region

Summary

This function fixes various problems with the region or raises an error if it is not repairable. The only relevant fix for MarkLogic is to remove duplicate adjacent vertices in polygons (including inner and outer polygons of complex polygons). The only relevant options are options controlling the coordinate system and the tolerance option.

Parameters
region A cts region.
options The tolerance, units, coordinate system.

Options include:

"coordinate-system=value"
Use the given coordinate system. Valid values are wgs84, wgs84/double, etrs89, etrs89/double, raw and raw/double. Defaults to the governing coordinating system.
"precision=value"
Use the coordinate system at the given precision. Allowed values: float and double. Defaults to the precision of the governing coordinate system.
"units=value"
Measure distance, radii of circles, and tolerance in the specified units. Allowed values: miles (default), km, feet, meters.
"tolerance=distance"
Tolerance is the largest allowable variation in geometry calculations. If the distance between two points is less than tolerance, then the two points are considered equal. For the raw coordinate system, use the units of the coordinates. For geographic coordinate systems, use the units specified by the units option.

Usage Notes

The value of the precision option takes precedence over that implied by the governing coordinate system name, including the value of the coordinate-system option. For example, if the governing coordinate system is "wgs84/double" and the precision option is "float", then the operation uses single precision.

See Also

Example

geo:region-clean(
  cts:polygon((
    cts:point(40.1234567890,-120.1234567890),
    cts:point(40.123456543,-120.123456543),
    cts:point(40.12455,-120.123467),
    cts:point(40.13456,-120.1455195))))

=> A cts:region with the following coordinates:
    40.123457,-120.12346 40.12455,-120.12347 40.13456,-120.14552
    40.123457, -120.12346
Powered by MarkLogic Server | Terms of Use | Privacy Policy