# MarkLogic 10 Product Documentationgeo: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.

```geo:ellipse-polygon(cts:point(1,1),4,2,math:pi() div 2.0,1,("tolerance=0.1"))