20#ifndef GEOS_ALGORITHM_MINIMUMDIAMETER_H
21#define GEOS_ALGORITHM_MINIMUMDIAMETER_H
23#include <geos/geom/Coordinate.h>
24#include <geos/geom/LineSegment.h>
27#include <geos/export.h>
34class CoordinateSequence;
68 std::unique_ptr<geom::CoordinateSequence> convexHullPts;
74 void computeMinimumDiameter();
116 const bool newIsConvex);
Computes the minimum diameter of a geom::Geometry.
Definition MinimumDiameter.h:63
const geom::Coordinate & getWidthCoordinate()
Gets the geom::Coordinate forming one end of the minimum diameter.
static std::unique_ptr< geom::Geometry > getMinimumRectangle(geom::Geometry *geom)
Gets the minimum rectangle enclosing a geometry.
std::unique_ptr< geom::LineString > getDiameter()
Gets a LineString which is a minimum diameter.
static std::unique_ptr< geom::Geometry > getMinimumDiameter(geom::Geometry *geom)
Gets the length of the minimum diameter enclosing a geometry.
std::unique_ptr< geom::Geometry > getMinimumRectangle()
Gets the minimum rectangular Polygon which encloses the input geometry.
double getLength()
Gets the length of the minimum diameter of the input Geometry.
MinimumDiameter(const geom::Geometry *newInputGeom)
Compute a minimum diameter for a given Geometry.
MinimumDiameter(const geom::Geometry *newInputGeom, const bool newIsConvex)
Compute a minimum diameter for a given Geometry, with a hint if the Geometry is convex (e....
std::unique_ptr< geom::LineString > getSupportingSegment()
Gets the segment forming the base of the minimum diameter.
The internal representation of a list of coordinates inside a Geometry.
Definition CoordinateSequence.h:58
Coordinate is the lightweight class used to store coordinates.
Definition Coordinate.h:60
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition Geometry.h:188
Definition LineSegment.h:59
Basic namespace for all GEOS functionalities.
Definition IndexedNestedRingTester.h:26