Struct Cell

Inheritance Relationships

Base Type

Struct Documentation

struct Cell : public f2c::types::Geometries<Cell, OGRPolygon, wkbPolygon, LinearRing>

Public Functions

Cell()
explicit Cell(const OGRGeometry *geom)
explicit Cell(const f2c::types::LinearRing &ring)
~Cell() = default
void getGeometry(size_t i, LinearRing &ring)
void getGeometry(size_t i, LinearRing &ring) const
LinearRing getGeometry(size_t i)
const LinearRing getGeometry(size_t i) const
void setGeometry(size_t i, const LinearRing &ring)
size_t size() const
void operator*=(double b)

Scale this Cell by a scale factor.

Cell convexHull() const
void addRing(const LinearRing &ring)
void addGeometry(const LinearRing &ring)
const LinearRing getExteriorRing() const
const LinearRing getInteriorRing(size_t i_ring) const
bool isConvex() const

Check if the Cell is convex.

LineString createSemiLongLine(const Point &point, double angle) const

Get a line that starts from a custom point with a custom angle. If the point is in this geometry, the line crosses the border.

LineString createStraightLongLine(const Point &point, double angle) const

Get a line that goes through a custom point with a custom angle. If the point is in this geometry, the line also crosses it.

MultiLineString getLinesInside(const LineString &line) const

Compute the sections of a LineString that is inside this cell.

MultiLineString getLinesInside(const MultiLineString &lines) const

Compute the sections of a MultiLineString that is inside this cell.

bool isPointInBorder(const Point &p) const

Check if a point is in the border of this cell.

bool isPointIn(const Point &p) const

Check if a point is inside this cell.

LineString createLineUntilBorder(const Point &p, double ang) const

Generate a line from a point to the border of this cell.

Point closestPointOnBorderTo(const Point &p) const

Find the closest point from a point to the border of the field.

Public Static Functions

static Cell buffer(const Cell &geom, double width)
static Cell buffer(const LineString &geom, double width)
static Cell buffer(const LinearRing &ring, double width)
static Cell buffer(const Point &geom, double width)
template<class T, OGRwkbGeometryType R>
static Cell convexHull(const Geometry<T, R> &geom)