26 #ifndef __TERRALIB_EDIT_INTERNAL_UTILS_H
27 #define __TERRALIB_EDIT_INTERNAL_UTILS_H
30 #include "../color/RGBAColor.h"
31 #include "../maptools/AbstractLayer.h"
51 class GeometryCollection;
63 void setIndex(
const std::size_t& line,
const std::size_t& pos)
71 m_line = std::string::npos;
72 m_pos = std::string::npos;
77 return m_line != std::string::npos &&
m_pos != std::string::npos;
This class represents an unique id for a data set element.
An Envelope defines a 2D rectangular region.
It is a collection of other geometric objects.
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
LineString is a curve with linear interpolation between points.
Polygon is a subclass of CurvePolygon whose rings are defined by linear rings.
This is the base class for layers.
TEEDITEXPORT double GetDistance(const te::gm::Coord2D &c1, const te::gm::Coord2D &c2)
TEEDITEXPORT bool IsSpecialRingVertex(te::gm::LineString *l, const VertexIndex &index)
TEEDITEXPORT void TrySnap(te::gm::Coord2D &coord, int srid)
TEEDITEXPORT void Rotate(te::gm::Geometry *geom, double angle)
TEEDITEXPORT te::gm::Geometry * Convert2LayerGeomType(const te::map::AbstractLayerPtr &layer, te::gm::Geometry *geom, int srid)
TEEDITEXPORT te::da::ObjectId * GenerateId()
TEEDITEXPORT void RemoveVertex(std::vector< te::gm::LineString * > &lines, const VertexIndex &index)
TEEDITEXPORT VertexIndex FindSegment(std::vector< te::gm::LineString * > &lines, const te::gm::Envelope &env, int srid)
TEEDITEXPORT void AddVertex(std::vector< te::gm::LineString * > &lines, const double &x, const double &y, const te::gm::Envelope &env, int srid)
TEEDITEXPORT void GetCoordinates(te::gm::Geometry *geom, std::vector< te::gm::Coord2D > &coords)
TEEDITEXPORT Feature * PickFeature(const te::map::AbstractLayerPtr &layer, const te::gm::Envelope &env, int srid, bool loadAttributes=false)
TEEDITEXPORT void GetLines(te::gm::Geometry *geom, std::vector< te::gm::LineString * > &lines)
TEEDITEXPORT void MoveGeometry(te::gm::Geometry *geom, const double &deltax, const double &deltay)
TEEDITEXPORT void MoveVertex(std::vector< te::gm::LineString * > &lines, const VertexIndex &index, const double &x, const double &y)
boost::intrusive_ptr< AbstractLayer > AbstractLayerPtr
void setIndex(const std::size_t &line, const std::size_t &pos)
An utility struct for representing 2D coordinates.
#define TEEDITEXPORT
You can use this macro in order to export/import classes and functions from this module.
Proxy configuration file for TerraView (see terraview_config.h).