meos::GeomPoint class

A point in space.

Mostly a wrapper on top of GEOSGeometry* Additionally, we allow specifying SRID, similar to how PostGIS EWKT does.

Main reason we have this is that pybind11 can't work with GEOSGeometry* directly, as it is exposed as an opaque type from the GEOS C API.

Constructors, destructors, conversion operators

GeomPoint()
GeomPoint(std::string serialized)
GeomPoint(double x, double y)
GeomPoint(std::string serialized, int srid)
GeomPoint(double x, double y, int srid)
GeomPoint(GeomPoint const& g)
~GeomPoint()

Public functions

void operator=(GeomPoint const& g)
void fromEWKB(std::istream& is)
void toEWKB(std::ostream& os) const
void fromEWKT(std::string wkt)
auto toEWKT() const -> std::string
void fromWKB(std::istream& is)
void toWKB(std::ostream& os, bool extended = true) const
void fromWKT(std::string wkt)
auto toWKT(bool extended = true) const -> std::string
void fromHEX(std::istream& is)
void toHEX(std::ostream& os, bool extended = true) const
auto x() const -> double
auto y() const -> double
auto srid() const -> int
auto operator+(GeomPoint const& g) const -> GeomPoint
auto operator-(GeomPoint const& g) const -> GeomPoint
auto compare(GeomPoint const& other) const -> int

Public variables

GEOSGeometry* geom

Friends

auto operator==(GeomPoint const& lhs, GeomPoint const& rhs) -> bool
auto operator!=(GeomPoint const& lhs, GeomPoint const& rhs) -> bool
auto operator<(GeomPoint const& lhs, GeomPoint const& rhs) -> bool
auto operator<=(GeomPoint const& lhs, GeomPoint const& rhs) -> bool
auto operator>(GeomPoint const& lhs, GeomPoint const& rhs) -> bool
auto operator>=(GeomPoint const& lhs, GeomPoint const& rhs) -> bool
auto operator>>(std::istream& in, GeomPoint& g) -> std::istream&
auto operator<<(std::ostream& os, GeomPoint const& g) -> std::ostream&