16 #ifndef QGSDISTANCEAREA_H 17 #define QGSDISTANCEAREA_H 50 void setEllipsoidalMode(
bool flag );
56 void setSourceCrs(
long srsid );
65 void setSourceAuthId( QString authid );
68 long sourceCrs()
const {
return mCoordTransform->sourceCrs().srsid(); }
70 bool geographic()
const {
return mCoordTransform->sourceCrs().geographicFlag(); }
73 bool setEllipsoid(
const QString& ellipsoid );
77 bool setEllipsoid(
double semiMajor,
double semiMinor );
80 const QString&
ellipsoid()
const {
return mEllipsoid; }
96 double measureLine(
const QList<QgsPoint>& points );
116 double measurePolygon(
const QList<QgsPoint>& points );
121 static QString textUnit(
double value,
int decimals,
QGis::UnitType u,
bool isArea,
bool keepBaseUnit =
false );
129 const unsigned char* measureLine(
const unsigned char* feature,
double* area,
bool hasZptr =
false );
132 const unsigned char* measurePolygon(
const unsigned char* feature,
double* area,
double* perimeter,
bool hasZptr =
false );
145 double* course1 = NULL,
double* course2 = NULL );
151 double computeDistance(
const QList<QgsPoint>& points );
158 double computePolygonArea(
const QList<QgsPoint>& points );
160 double computePolygonFlatArea(
const QList<QgsPoint>& points );
166 void computeAreaInit();
176 bool mEllipsoidalMode;
182 double mSemiMajor, mSemiMinor, mInvFlattening;
186 double getQ(
double x );
187 double getQbar(
double x );
191 double m_QA, m_QB, m_QC;
192 double m_QbarA, m_QbarB, m_QbarC, m_QbarD;
double ellipsoidSemiMinor() const
returns ellipsoid's semi minor axis
A class to represent a point.
double ellipsoidInverseFlattening() const
returns ellipsoid's inverse flattening
General purpose distance and area calculator.
long sourceCrs() const
returns source spatial reference system
const QString & ellipsoid() const
returns ellipsoid's acronym
Class for storing a coordinate reference system (CRS)
UnitType
Map units that qgis supports.
double ellipsoidSemiMajor() const
returns ellipsoid's semi major axis
bool ellipsoidalEnabled() const
returns projections enabled flag
bool geographic() const
What sort of coordinate system is being used?