enum

# enum: enumerations

buffer_side_selector
buffer_side_left
buffer_side_right

Enumerates options for side of buffer (left/right w.r.t. directed segment)

Around a linestring, a buffer can be defined left or right. Around a polygon, assumed clockwise internally, a buffer is either on the left side (inflates the polygon), or on the right side (deflates the polygon)

closure_selector
open
0

Rings are open: first point and last point are different, algorithms close them explicitly on the fly

closed
1

Rings are closed: first point and last point must be the same.

closure_undertermined
-1

(Not yet implemented): algorithms first figure out if ring must be closed on the fly

Enumerates options for defining if polygons are open or closed.

The enumeration closure_selector describes options for if a polygon is open or closed. In a closed polygon the very first point (per ring) should be equal to the very last point. The specific closing property of a polygon type is defined by the closure metafunction. The closure metafunction defines a value, which is one of the values enumerated in the closure_selector

[heading See also] [link geometry.reference.core.closure The closure metafunction]

join_selector
join_convex
join_concave
join_continue
join_spike

Enumerates types of joins.

order_selector
clockwise
1

Points are ordered clockwise.

counterclockwise
2

Points are ordered counter clockwise.

order_undetermined
0

Points might be stored in any order, algorithms will determine it on the fly (not yet supported)

Enumerates options for the order of points within polygons.

The enumeration order_selector describes options for the order of points within a polygon. Polygons can be ordered either clockwise or counterclockwise. The specific order of a polygon type is defined by the point_order metafunction. The point_order metafunction defines a value, which is one of the values enumerated in the order_selector

[heading See also] [link geometry.reference.core.point_order The point_order metafunction]

piece_type
buffered_segment
buffered_join
buffered_round_end
buffered_flat_end
buffered_point
buffered_concave
piece_type_unknown

Enumerates types of pieces (parts of buffer) around geometries.

result_code
result_normal
result_error_numerical
result_no_output

Enumerates types of result codes from buffer strategies.

validity_failure_type
no_failure
0

The geometry is valid

failure_few_points
10

The geometry has a very small number of points, e.g., less than 2 for linestrings, less than 3 for open rings, a closed multi-polygon that contains a polygon with less than 4 points, etc. (applies to linestrings, rings, polygons, multi-linestrings and multi-polygons)

failure_wrong_topological_dimension
11

The topological dimension of the geometry is smaller than its dimension, e.g., a linestring with 3 identical points, an open polygon with an interior ring consisting of 3 collinear points, etc. (applies to linear and areal geometries, including segments and boxes)

failure_spikes
12

The geometry contains spikes (applies to linear and areal geometries)

failure_duplicate_points
13

The geometry has (consecutive) duplicate points (applies to areal geometries only)

failure_not_closed
20

The geometry is defined as closed, the starting/ending points are not equal (applies to areal geometries only)

failure_self_intersections
21

The geometry has invalid self-intersections. (applies to areal geometries only)

failure_wrong_orientation
22

The actual orientation of the geometry is different from the one defined (applies to areal geometries only)

failure_interior_rings_outside
30

The geometry contains interior rings that lie outside the exterior ring (applies to polygons and multi-polygons only)

failure_nested_interior_rings
31

The geometry has nested interior rings (applies to polygons and multi-polygons only)

failure_disconnected_interior
32

The interior of the geometry is disconnected (applies to polygons and multi-polygons only)

failure_intersecting_interiors
40

The multi-polygon contains polygons whose interiors are not disjoint (applies to multi-polygons only)

failure_wrong_corner_order
50

The top-right corner of the box is lexicographically smaller than its bottom-left corner (applies to boxes only)

failure_invalid_coordinate
60

The geometry has at least one point with an invalid coordinate (for example, the coordinate is a NaN)

Enumerates the possible validity failure types for a geometry.

The enumeration validity_failure_type enumerates the possible reasons for which a geometry may be found as invalid by the is_valid algorithm. Besides the values that indicate invalidity, there is an additional value (no_failure) that indicates validity.

[heading See also] [link geometry.reference.algorithms.is_valid The is_valid algorithm taking a reference to validity_failure_type as second argument]