MarkLogic Server 11.0 Product Documentation
geo:ellipse-polygon

geo:ellipse-polygon(
   $center as cts:point,
   $semi-major-axis as xs:double,
   $semi-minor-axis as xs:double,
   $azimuth as xs:double,
   $arc-tolerance as xs:double,
   [$options as xs:string*]
) as cts:region

Summary

Construct a polygon approximating an ellipse.

Parameters
center Center of the ellipse.
semi-major-axis The semi major axis of the ellipse. The units are governed by the units option.
semi-minor-axis The semi minor axis of the ellipse. The units are governed by the units option.
azimuth The azimuth.
arc-tolerance How far the approximation can be from the actual ellipse, specified in the same units as the units option. Arc-tolerance should be greater than the value of the tolerance option, which defaults to 0.05km (0.3106856 miles).
options

Options with which to configure the behavior. 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, the axes of the ellipse, 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

When approximating the polygon, if the distance between two points is less than tolerance, then they are considered to be the same point. The arc-tolerance parameter specifies the allowable error in the polygon approximation. That is, the resulting polygon will differ from the provided ellipse by at most arc-tolerance.

The arc-tolerance parameter value should be greater than the tolerance, and both arc-tolerance and tolerance should be expressed in the same units. For example, if the units option is set to "km" and you're using a geodetic coordinate system, then arc-tolerance and tolerance (if specified) should also be in kilometers. The default tolerance is 0.05km (or the equivalent in other units). Use the tolerance option to override the default.

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:ellipse-polygon(cts:point(1,1),4,2,math:pi() div 2.0,1,("tolerance=0.1"))

=> A cts:region with the following coordinates:
   1,1.0582174 0.97955137,1.0411657 0.97108173,0.99999946
   0.97955191,0.95883381 1,0.94178247 1.0204481,0.95883381
   1.0289183,0.99999946 1.0204486,1.0411657 1,1.0582174
Powered by MarkLogic Server | Terms of Use | Privacy Policy