26 #ifndef __TERRALIB_GEOMETRY_INTERNAL_LINESTRING_H 
   27 #define __TERRALIB_GEOMETRY_INTERNAL_LINESTRING_H 
  101         LineString(
const LineString& rhs);
 
  104         virtual ~LineString();
 
  113         virtual LineString& operator=(
const LineString& rhs);
 
  149         const std::string& getGeometryType() 
const throw();
 
  158         void setSRID(
int srid) 
throw();
 
  184         void computeMBR(
bool cascade) 
const throw();
 
  205         Geometry* locateBetween(
const double& mStart, 
const double& mEnd) 
const throw(Exception);
 
  219         double getLength() 
const;
 
  228         Point* getStartPoint() 
const;
 
  237         Point* getEndPoint() 
const;
 
  246         bool isClosed() 
const;
 
  262         std::size_t 
size()
 const { 
return m_nPts; }
 
  271         void setNumCoordinates(std::size_t size);
 
  295         Point* getPointN(std::size_t i) 
const;
 
  305         void setPointN(std::size_t i, 
const Point& p);
 
  316         void setPoint(std::size_t i, 
const double& x, 
const double& y);
 
  328         void setPointZ(std::size_t i, 
const double& x, 
const double& y, 
const double& z);
 
  340         void setPointM(std::size_t i, 
const double& x, 
const double& y, 
const double& m);
 
  353         void setPointZM(std::size_t i, 
const double& x, 
const double& y, 
const double& z, 
const double& m);
 
  364         const double& getX(std::size_t i) 
const;
 
  375         const double& getY(std::size_t i) 
const;
 
  388         const double& getZ(std::size_t i) 
const;
 
  401         const double& getM(std::size_t i) 
const;
 
  411         void setX(std::size_t i, 
const double& x);
 
  421         void setY(std::size_t i, 
const double& y);
 
  433         void setZ(std::size_t i, 
const double& z);
 
  445         void setM(std::size_t i, 
const double& m);
 
  506 #endif  // __TERRALIB_GEOMETRY_INTERNAL_LINESTRING_H 
#define TEGEOMEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
std::size_t m_nPts
The number of coordinates of the LineString. 
 
This class is designed to declare objects to be thrown as exceptions by TerraLib. ...
 
std::size_t getNPoints() const 
It returns the number of points (vertexes) in the linestring. 
 
double * m_zA
A pointer to z values. 
 
#define TE_DEFINE_VISITABLE
 
std::size_t size() const 
It returns the number of points (vertexes) in the geometry. 
 
An utility struct for representing 2D coordinates. 
 
An utility struct for representing 2D coordinates. 
 
static const std::string sm_typeName
 
LineString is a curve with linear interpolation between points. 
 
Curve is an abstract class that represents 1-dimensional geometric objects stored as a sequence of co...
 
Coord2D * m_coords
A pointer to x, y values. 
 
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards. 
 
Coord2D * getCoordinates() const 
It returns a pointer to the internal array of coordinates. 
 
A point with x and y coordinate values. 
 
GeomType
Each enumerated type is compatible with a Well-known Binary (WKB) type code. 
 
A base class for values that can be retrieved from the data access module. 
 
double * getZ() const 
It returns a pointer to the internal array of z-values. 
 
Curve is an abstract class that represents 1-dimensional geometric objects stored as a sequence of co...
 
double * getM() const 
It returns a pointer to the internal array of m-values. 
 
An Envelope defines a 2D rectangular region. 
 
double * m_mA
A pointer to m values.