Module geo

Public package module for geo-d.

geo-d provides small, robust, coordinate-system-independent primitives and algorithms for two-dimensional Euclidean geometry.

Import this module to access the supported public API:

import geo;

The public API includes:

- points, vectors, segments, and bounds; - non-owning polyline, linear-ring, and polygon views; - scalar conversion and explicit floating-point quantization; - axis-aligned geometry bounds; - distance and nearest-point operations; - robust orientation and segment-intersection predicates; - signed and polygon area; - point-in-polygon classification; - ring and polygon topology validation; - Douglas-Peucker polyline simplification.

Numerical topology is deliberately separated from rounded geometric construction. Robust predicates do not use a global epsilon.

geo-d does not provide coordinate reference systems, projections, ellipsoidal or geodesic calculations, raster processing, spatial indexes, or geospatial file-format support.

Variable-size geometry is represented by non-owning views. Low-level numerical operations avoid hidden allocation; algorithms requiring variable temporary storage document that requirement explicitly.

Date

September 12, 2026

Aliases

NameTypeDescription
LinearRingView LinearRing2View Deprecated v1 spelling of LinearRing2View.
Orientation Orientation2 Deprecated v1 spelling of Orientation2.
PolygonView Polygon2View Deprecated v1 spelling of Polygon2View.
PolylineView Polyline2View Deprecated v1 spelling of Polyline2View.