src/core/qgsgeometry.cpp File Reference

#include <limits>
#include <cstdarg>
#include <cstdio>
#include <cmath>
#include "qgis.h"
#include "qgsgeometry.h"
#include "qgsapplication.h"
#include "qgslogger.h"
#include "qgspoint.h"
#include "qgsrectangle.h"
#include "qgsmaplayerregistry.h"
#include "qgsvectorlayer.h"
#include "qgsproject.h"

Include dependency graph for qgsgeometry.cpp:

Go to the source code of this file.

Classes

class  GEOSException
class  GEOSInit

Defines

#define DEFAULT_QUADRANT_SEGMENTS   8
#define CATCH_GEOS(r)

Functions

static void throwGEOSException (const char *fmt,...)
static void printGEOSNotice (const char *fmt,...)
static unsigned int getNumGeosPoints (const GEOSGeometry *geom)
static GEOSGeometry * createGeosPoint (const QgsPoint &point)
static GEOSCoordSequence * createGeosCoordSequence (const QgsPolyline &points)
static GEOSGeometry * createGeosCollection (int typeId, QVector< GEOSGeometry * > geoms)
static GEOSGeometry * createGeosLineString (const QgsPolyline &polyline)
static GEOSGeometry * createGeosLinearRing (const QgsPolyline &polyline)
static GEOSGeometry * createGeosPolygon (const QVector< GEOSGeometry * > &rings)
static GEOSGeometry * createGeosPolygon (GEOSGeometry *shell)
static GEOSGeometry * createGeosPolygon (const QgsPolygon &polygon)
static QgsGeometryfromGeosGeom (GEOSGeometry *geom)
static double distLine2Point (QgsPoint p, QgsVector v, QgsPoint q)
static bool intersectLines (QgsPoint p, QgsVector v, QgsPoint q, QgsVector w, QgsPoint &s)
bool pointInRing (const QgsPolyline &ring, const QgsPoint &p)
static bool ringInRing (const QgsPolyline &inside, const QgsPolyline &outside)

Variables

static GEOSInit geosinit


Define Documentation

#define CATCH_GEOS (  ) 

#define DEFAULT_QUADRANT_SEGMENTS   8

Definition at line 34 of file qgsgeometry.cpp.

Referenced by QgsGeometry::lineContainedInLine().


Function Documentation

static GEOSGeometry* createGeosCollection ( int  typeId,
QVector< GEOSGeometry * >  geoms 
) [static]

static GEOSCoordSequence* createGeosCoordSequence ( const QgsPolyline points  )  [static]

Definition at line 245 of file qgsgeometry.cpp.

Referenced by createGeosLinearRing(), and createGeosLineString().

static GEOSGeometry* createGeosLinearRing ( const QgsPolyline polyline  )  [static]

static GEOSGeometry* createGeosLineString ( const QgsPolyline polyline  )  [static]

static GEOSGeometry* createGeosPoint ( const QgsPoint point  )  [static]

static GEOSGeometry* createGeosPolygon ( const QgsPolygon polygon  )  [static]

Definition at line 374 of file qgsgeometry.cpp.

References createGeosLinearRing(), and createGeosPolygon().

static GEOSGeometry* createGeosPolygon ( GEOSGeometry *  shell  )  [static]

Definition at line 369 of file qgsgeometry.cpp.

References createGeosPolygon().

static GEOSGeometry* createGeosPolygon ( const QVector< GEOSGeometry * > &  rings  )  [static]

static double distLine2Point ( QgsPoint  p,
QgsVector  v,
QgsPoint  q 
) [static]

static QgsGeometry* fromGeosGeom ( GEOSGeometry *  geom  )  [static]

static unsigned int getNumGeosPoints ( const GEOSGeometry *  geom  )  [static]

Definition at line 229 of file qgsgeometry.cpp.

Referenced by QgsGeometry::exportGeosToWkb().

static bool intersectLines ( QgsPoint  p,
QgsVector  v,
QgsPoint  q,
QgsVector  w,
QgsPoint s 
) [static]

bool pointInRing ( const QgsPolyline ring,
const QgsPoint p 
)

Definition at line 6340 of file qgsgeometry.cpp.

References QgsPoint::x(), and QgsPoint::y().

Referenced by ringInRing().

static void printGEOSNotice ( const char *  fmt,
  ... 
) [static]

Definition at line 98 of file qgsgeometry.cpp.

References QgsDebugMsg.

Referenced by GEOSInit::GEOSInit().

static bool ringInRing ( const QgsPolyline inside,
const QgsPolyline outside 
) [static]

Definition at line 6363 of file qgsgeometry.cpp.

References pointInRing().

Referenced by QgsGeometry::validateGeometry(), and QgsGeometry::validatePolygon().

static void throwGEOSException ( const char *  fmt,
  ... 
) [static]

Definition at line 84 of file qgsgeometry.cpp.

References QgsDebugMsg.

Referenced by QgsGeometry::addRing(), and GEOSInit::GEOSInit().


Variable Documentation

GEOSInit geosinit [static]

Definition at line 126 of file qgsgeometry.cpp.


Generated on Sat Feb 4 19:16:32 2012 for Quantum GIS API Documentation by  doxygen 1.5.6