Quantum GIS API Documentation
1.8
|
The QGis class provides vector overlay analysis functions. More...
#include <qgsoverlayanalyzer.h>
Public Member Functions | |
bool | intersection (QgsVectorLayer *layerA, QgsVectorLayer *layerB, const QString &shapefileName, bool onlySelectedFeatures=false, QProgressDialog *p=0) |
Perform an intersection on two input vector layers and write output to a new shape file. | |
Private Member Functions | |
void | combineFieldLists (QgsFieldMap &fieldListA, QgsFieldMap fieldListB) |
void | intersectFeature (QgsFeature &f, QgsVectorFileWriter *vfw, QgsVectorLayer *dp, QgsSpatialIndex *index) |
void | combineAttributeMaps (QgsAttributeMap &attributeMapA, QgsAttributeMap attributeMapB) |
The QGis class provides vector overlay analysis functions.
Definition at line 37 of file qgsoverlayanalyzer.h.
void QgsOverlayAnalyzer::combineAttributeMaps | ( | QgsAttributeMap & | attributeMapA, |
QgsAttributeMap | attributeMapB | ||
) | [private] |
Definition at line 213 of file qgsoverlayanalyzer.cpp.
Referenced by intersectFeature().
void QgsOverlayAnalyzer::combineFieldLists | ( | QgsFieldMap & | fieldListA, |
QgsFieldMap | fieldListB | ||
) | [private] |
Definition at line 183 of file qgsoverlayanalyzer.cpp.
References QgsField::name(), and QgsField::type().
Referenced by intersection().
void QgsOverlayAnalyzer::intersectFeature | ( | QgsFeature & | f, |
QgsVectorFileWriter * | vfw, | ||
QgsVectorLayer * | dp, | ||
QgsSpatialIndex * | index | ||
) | [private] |
Definition at line 141 of file qgsoverlayanalyzer.cpp.
References QgsVectorFileWriter::addFeature(), QgsFeature::attributeMap(), QgsGeometry::boundingBox(), combineAttributeMaps(), QgsVectorLayer::featureAtId(), QgsFeature::geometry(), QgsGeometry::intersection(), QgsSpatialIndex::intersects(), QgsGeometry::intersects(), QgsFeature::setAttributeMap(), and QgsFeature::setGeometry().
Referenced by intersection().
bool QgsOverlayAnalyzer::intersection | ( | QgsVectorLayer * | layerA, |
QgsVectorLayer * | layerB, | ||
const QString & | shapefileName, | ||
bool | onlySelectedFeatures = false , |
||
QProgressDialog * | p = 0 |
||
) |
Perform an intersection on two input vector layers and write output to a new shape file.
layerA | input vector layer |
layerB | input vector layer |
shapefileName | path to the output shp |
onlySelectedFeatures | if true, only selected features are considered, else all the features |
p | progress dialog (or 0 if no progress dialog is to be shown) |
Definition at line 30 of file qgsoverlayanalyzer.cpp.
References combineFieldLists(), QgsMapLayer::crs(), QgsVectorLayer::dataProvider(), QgsVectorDataProvider::encoding(), QgsVectorLayer::featureAtId(), QgsVectorLayer::featureCount(), QgsVectorDataProvider::fields(), QgsVectorDataProvider::geometryType(), QgsSpatialIndex::insertFeature(), intersectFeature(), QgsVectorLayer::nextFeature(), QgsVectorLayer::pendingAllAttributesList(), QgsVectorLayer::select(), and QgsVectorLayer::selectedFeaturesIds().