17#include <geos/geom/Envelope.h>
18#include <geos/geom/Geometry.h>
20#include <geos/operation/grid/Side.h>
21#include <geos/operation/grid/Traversal.h>
23namespace geos::operation::grid {
33 Cell(
double xmin,
double ymin,
double xmax,
double ymax)
34 : m_box{ xmin, ymin, xmax, ymax }
45 double getWidth()
const;
47 double getHeight()
const;
49 double getArea()
const;
82 bool take(
const geom::CoordinateXY& c,
const geom::CoordinateXY* prev_original =
nullptr);
85 std::vector<const std::vector<geom::CoordinateXY>*> getCoordLists()
const;
96 std::vector<Traversal> m_traversals;
98 Side side(
const geom::CoordinateXY& c)
const;
100 Location location(
const geom::CoordinateXY& c)
const;
An Envelope defines a rectangulare region of the 2D coordinate plane.
Definition Envelope.h:59
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition GeometryFactory.h:70
The Cell class stores information about the spatial extent of a Grid cell and any cases where a line ...
Definition Cell.h:30
std::unique_ptr< geom::Geometry > getCoveredPolygons(const geom::GeometryFactory &) const
bool take(const geom::CoordinateXY &c, const geom::CoordinateXY *prev_original=nullptr)
Traversal & getLastTraversal()
bool isDetermined() const
double getCoveredFraction() const
Return the fraction of this Cell that is covered by a polygon.
double getTraversalLength() const
Return the total length of a linear geometry within this Cell.
The Traversal class records the coordinates of a line that are within a grid cell,...
Definition Traversal.h:30