GEOS
3.9.1dev
|
#include <FixedSizeCoordinateSequence.h>
Public Member Functions | |
FixedSizeCoordinateSequence (size_t dimension_in=0) | |
std::unique_ptr< CoordinateSequence > | clone () const finaloverride |
Returns a deep copy of this collection. More... | |
const Coordinate & | getAt (size_t i) const finaloverride |
void | getAt (size_t i, Coordinate &c) const finaloverride |
size_t | getSize () const finaloverride |
Returns the number of Coordinates (actual or otherwise, as this implementation may not store its data in Coordinate objects). More... | |
bool | isEmpty () const finaloverride |
Returns true it list contains no coordinates. More... | |
void | setAt (const Coordinate &c, size_t pos) finaloverride |
void | setOrdinate (size_t index, size_t ordinateIndex, double value) finaloverride |
size_t | getDimension () const finaloverride |
void | toVector (std::vector< Coordinate > &out) const finaloverride |
void | setPoints (const std::vector< Coordinate > &v) finaloverride |
Substitute Coordinate list with a copy of the given vector. More... | |
void | apply_ro (CoordinateFilter *filter) const finaloverride |
void | apply_rw (const CoordinateFilter *filter) finaloverride |
Public Member Functions inherited from geos::geom::CoordinateSequence | |
virtual | ~CoordinateSequence () |
virtual const Coordinate & | getAt (std::size_t i) const =0 |
Returns a read-only reference to Coordinate at position i. More... | |
const Coordinate & | back () const |
Return last Coordinate in the sequence. More... | |
const Coordinate & | front () const |
Return first Coordinate in the sequence. More... | |
const Coordinate & | operator[] (std::size_t i) const |
virtual Envelope | getEnvelope () const |
virtual void | getAt (std::size_t i, Coordinate &c) const =0 |
Write Coordinate at position i to given Coordinate. More... | |
size_t | size () const |
virtual void | setAt (const Coordinate &c, std::size_t pos)=0 |
Copy Coordinate c to position pos. More... | |
std::string | toString () const |
Get a string representation of CoordinateSequence. More... | |
bool | hasRepeatedPoints () const |
Returns true if contains any two consecutive points. More... | |
const Coordinate * | minCoordinate () const |
Returns lower-left Coordinate in list. More... | |
bool | hasZ () const |
virtual double | getOrdinate (std::size_t index, std::size_t ordinateIndex) const |
virtual double | getX (std::size_t index) const |
virtual double | getY (std::size_t index) const |
virtual void | setOrdinate (std::size_t index, std::size_t ordinateIndex, double value)=0 |
virtual void | expandEnvelope (Envelope &env) const |
template<class T > | |
void | applyCoordinateFilter (T &f) |
Apply a filter to each Coordinate of this sequence. The filter is expected to provide a .filter(Coordinate&) method. More... | |
Private Attributes | |
std::array< Coordinate, N > | m_data |
std::size_t | dimension |
Additional Inherited Members | |
Public Types inherited from geos::geom::CoordinateSequence | |
enum | { X, Y, Z, M } |
Standard ordinate index values. More... | |
typedef std::unique_ptr< CoordinateSequence > | Ptr |
Static Public Member Functions inherited from geos::geom::CoordinateSequence | |
static bool | hasRepeatedPoints (const CoordinateSequence *cl) |
Returns true if given CoordinateSequence contains any two consecutive Coordinate. More... | |
static CoordinateSequence * | atLeastNCoordinatesOrNothing (std::size_t n, CoordinateSequence *c) |
Returns either the given CoordinateSequence if its length is greater than the given amount, or an empty CoordinateSequence. More... | |
static size_t | indexOf (const Coordinate *coordinate, const CoordinateSequence *cl) |
static bool | equals (const CoordinateSequence *cl1, const CoordinateSequence *cl2) |
Returns true if the two arrays are identical, both null, or pointwise equal. More... | |
static void | scroll (CoordinateSequence *cl, const Coordinate *firstCoordinate) |
Scroll given CoordinateSequence so to start with given Coordinate. More... | |
static int | increasingDirection (const CoordinateSequence &pts) |
Determines which orientation of the Coordinate array is (overall) increasing. More... | |
static bool | isRing (const CoordinateSequence *pts) |
Tests whether an array of Coordinates forms a ring, by checking length and closure. Self-intersection is not checked. More... | |
static void | reverse (CoordinateSequence *cl) |
Reverse Coordinate order in given CoordinateSequence. More... | |
Protected Member Functions inherited from geos::geom::CoordinateSequence | |
CoordinateSequence () | |
CoordinateSequence (const CoordinateSequence &) | |
Definition at line 33 of file FixedSizeCoordinateSequence.h.
|
inlineexplicit |
Definition at line 35 of file FixedSizeCoordinateSequence.h.
|
inlinefinaloverridevirtual |
Implements geos::geom::CoordinateSequence.
Definition at line 111 of file FixedSizeCoordinateSequence.h.
|
inlinefinaloverridevirtual |
Implements geos::geom::CoordinateSequence.
Definition at line 116 of file FixedSizeCoordinateSequence.h.
|
inlinefinaloverridevirtual |
Returns a deep copy of this collection.
Implements geos::geom::CoordinateSequence.
Definition at line 37 of file FixedSizeCoordinateSequence.h.
|
inlinefinaloverride |
Definition at line 43 of file FixedSizeCoordinateSequence.h.
|
inlinefinaloverride |
Definition at line 47 of file FixedSizeCoordinateSequence.h.
|
inlinefinaloverridevirtual |
Returns the dimension (number of ordinates in each coordinate) for this sequence.
Implements geos::geom::CoordinateSequence.
Definition at line 84 of file FixedSizeCoordinateSequence.h.
|
inlinefinaloverridevirtual |
Returns the number of Coordinates (actual or otherwise, as this implementation may not store its data in Coordinate objects).
Implements geos::geom::CoordinateSequence.
Definition at line 51 of file FixedSizeCoordinateSequence.h.
|
inlinefinaloverridevirtual |
Returns true
it list contains no coordinates.
Implements geos::geom::CoordinateSequence.
Definition at line 55 of file FixedSizeCoordinateSequence.h.
Referenced by geos::geom::FixedSizeCoordinateSequence< 1 >::getDimension().
|
inlinefinaloverride |
Definition at line 59 of file FixedSizeCoordinateSequence.h.
|
inlinefinaloverride |
Definition at line 63 of file FixedSizeCoordinateSequence.h.
|
inlinefinaloverridevirtual |
Substitute Coordinate list with a copy of the given vector.
Implements geos::geom::CoordinateSequence.
Definition at line 107 of file FixedSizeCoordinateSequence.h.
|
inlinefinaloverridevirtual |
Pushes all Coordinates of this sequence into the provided vector.
This method is a port of the toCoordinateArray() method of JTS.
Implements geos::geom::CoordinateSequence.
Definition at line 103 of file FixedSizeCoordinateSequence.h.
|
mutableprivate |
Definition at line 124 of file FixedSizeCoordinateSequence.h.
Referenced by geos::geom::FixedSizeCoordinateSequence< 1 >::apply_rw(), geos::geom::FixedSizeCoordinateSequence< 1 >::clone(), and geos::geom::FixedSizeCoordinateSequence< 1 >::getDimension().
|
private |
Definition at line 123 of file FixedSizeCoordinateSequence.h.
Referenced by geos::geom::FixedSizeCoordinateSequence< 1 >::apply_ro(), geos::geom::FixedSizeCoordinateSequence< 1 >::apply_rw(), geos::geom::FixedSizeCoordinateSequence< 1 >::clone(), geos::geom::FixedSizeCoordinateSequence< 1 >::getAt(), geos::geom::FixedSizeCoordinateSequence< 1 >::getDimension(), geos::geom::FixedSizeCoordinateSequence< 1 >::setAt(), geos::geom::FixedSizeCoordinateSequence< 1 >::setOrdinate(), geos::geom::FixedSizeCoordinateSequence< 1 >::setPoints(), and geos::geom::FixedSizeCoordinateSequence< 1 >::toVector().