SFCGAL  2.2.0
Classes | Public Types | Public Member Functions | List of all members
SFCGAL::LineString Class Reference

A LineString in SFA. More...

#include <LineString.h>

Inherits SFCGAL::Geometry.

Classes

class  Point_2_const_iterator
 Const iterator to 2D points TODO: replace by boost::tranform_iterator ? More...
 
class  Point_3_const_iterator
 Const iterator to 3D points TODO: replace by boost::tranform_iterator ? More...
 

Public Types

typedef boost::ptr_vector< Point >::iterator iterator
 
typedef boost::ptr_vector< Point >::const_iterator const_iterator
 

Public Member Functions

 LineString ()
 Empty LineString constructor. More...
 
 LineString (const std::vector< Point > &points)
 Constructor with a point vector. More...
 
 LineString (const Point &startPoint, const Point &endPoint)
 LineString constructor. More...
 
 LineString (LineString const &other)
 Copy constructor. More...
 
LineStringoperator= (LineString other)
 assign operator More...
 
 ~LineString ()
 destructor More...
 
LineStringclone () const override
 
std::string geometryType () const override
 
GeometryType geometryTypeId () const override
 
int dimension () const override
 
int coordinateDimension () const override
 
bool isEmpty () const override
 
bool is3D () const override
 
bool isMeasured () const override
 
auto dropZ () -> bool override
 
auto dropM () -> bool override
 
auto swapXY () -> void override
 
void clear ()
 remove all points from the LineString More...
 
void reverse ()
 reverse LineString orientation More...
 
size_t numPoints () const
 [SFA/OGC]Returns the number of points More...
 
size_t numSegments () const
 Returns the number of segments. More...
 
const PointpointN (size_t const &n) const
 [SFA/OGC]Returns the n-th point More...
 
PointpointN (size_t const &n)
 [SFA/OGC]Returns the n-th point More...
 
const PointstartPoint () const
 [SFA/OGC]Returns the first point More...
 
PointstartPoint ()
 [SFA/OGC]Returns the first point More...
 
const PointendPoint () const
 [SFA/OGC]Returns the first point More...
 
PointendPoint ()
 [SFA/OGC]Returns the first point More...
 
void addPoint (const Point &p)
 append a Point to the LineString More...
 
void addPoint (Point *p)
 append a Point to the LineString and takes ownership More...
 
bool isClosed () const
 test if the LineString is closed More...
 
void closes ()
 closes the LineString More...
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
void reserve (const size_t &n)
 
Point_2_const_iterator points_2_begin () const
 
Point_2_const_iterator points_2_end () const
 
std::pair< Point_2_const_iterator, Point_2_const_iteratorpoints_2 () const
 
Point_3_const_iterator points_3_begin () const
 
Point_3_const_iterator points_3_end () const
 
std::pair< Point_3_const_iterator, Point_3_const_iteratorpoints_3 () const
 
CGAL::Polygon_2< KerneltoPolygon_2 (bool fixOrientation=true) const
 
void accept (GeometryVisitor &visitor) override
 
void accept (ConstGeometryVisitor &visitor) const override
 
template<class Archive >
void serialize (Archive &ar, const unsigned int)
 Serializer. More...
 

Detailed Description

A LineString in SFA.

Member Typedef Documentation

typedef boost::ptr_vector<Point>::iterator SFCGAL::LineString::iterator

Constructor & Destructor Documentation

SFCGAL::LineString::LineString ( )
default

Empty LineString constructor.

SFCGAL::LineString::LineString ( const std::vector< Point > &  points)

Constructor with a point vector.

SFCGAL::LineString::LineString ( const Point startPoint,
const Point endPoint 
)

LineString constructor.

SFCGAL::LineString::LineString ( LineString const &  other)

Copy constructor.

SFCGAL::LineString::~LineString ( )
default

destructor

Member Function Documentation

void SFCGAL::LineString::accept ( GeometryVisitor visitor)
override
void SFCGAL::LineString::accept ( ConstGeometryVisitor visitor) const
override
void SFCGAL::LineString::addPoint ( const Point p)
inline

append a Point to the LineString

void SFCGAL::LineString::addPoint ( Point p)
inline

append a Point to the LineString and takes ownership

iterator SFCGAL::LineString::begin ( )
inline
const_iterator SFCGAL::LineString::begin ( ) const
inline
void SFCGAL::LineString::clear ( )

remove all points from the LineString

auto SFCGAL::LineString::clone ( ) const
override
void SFCGAL::LineString::closes ( )
inline

closes the LineString

auto SFCGAL::LineString::coordinateDimension ( ) const
override
auto SFCGAL::LineString::dimension ( ) const
override
auto SFCGAL::LineString::dropM ( ) -> bool
override
auto SFCGAL::LineString::dropZ ( ) -> bool
override
iterator SFCGAL::LineString::end ( )
inline
const_iterator SFCGAL::LineString::end ( ) const
inline
const Point& SFCGAL::LineString::endPoint ( ) const
inline

[SFA/OGC]Returns the first point

Point& SFCGAL::LineString::endPoint ( )
inline

[SFA/OGC]Returns the first point

auto SFCGAL::LineString::geometryType ( ) const
override
auto SFCGAL::LineString::geometryTypeId ( ) const
override
auto SFCGAL::LineString::is3D ( ) const
override
auto SFCGAL::LineString::isClosed ( ) const

test if the LineString is closed

auto SFCGAL::LineString::isEmpty ( ) const
override
auto SFCGAL::LineString::isMeasured ( ) const
override
size_t SFCGAL::LineString::numPoints ( ) const
inline

[SFA/OGC]Returns the number of points

auto SFCGAL::LineString::numSegments ( ) const

Returns the number of segments.

Warning
not standard, returns zero if LineString contains only one point
auto SFCGAL::LineString::operator= ( LineString  other)

assign operator

const Point& SFCGAL::LineString::pointN ( size_t const &  n) const
inline

[SFA/OGC]Returns the n-th point

Point& SFCGAL::LineString::pointN ( size_t const &  n)
inline

[SFA/OGC]Returns the n-th point

std::pair<Point_2_const_iterator, Point_2_const_iterator> SFCGAL::LineString::points_2 ( ) const
inline
Point_2_const_iterator SFCGAL::LineString::points_2_begin ( ) const
inline
Point_2_const_iterator SFCGAL::LineString::points_2_end ( ) const
inline
std::pair<Point_3_const_iterator, Point_3_const_iterator> SFCGAL::LineString::points_3 ( ) const
inline
Point_3_const_iterator SFCGAL::LineString::points_3_begin ( ) const
inline
Point_3_const_iterator SFCGAL::LineString::points_3_end ( ) const
inline
void SFCGAL::LineString::reserve ( const size_t &  n)
void SFCGAL::LineString::reverse ( )

reverse LineString orientation

template<class Archive >
void SFCGAL::LineString::serialize ( Archive &  ar,
const unsigned  int 
)
inline

Serializer.

const Point& SFCGAL::LineString::startPoint ( ) const
inline

[SFA/OGC]Returns the first point

Point& SFCGAL::LineString::startPoint ( )
inline

[SFA/OGC]Returns the first point

auto SFCGAL::LineString::swapXY ( ) -> void
override
auto SFCGAL::LineString::toPolygon_2 ( bool  fixOrientation = true) const