QGIS API Documentation
2.12.0-Lyon
|
A convenience class for writing vector files to disk. More...
#include <qgsvectorfilewriter.h>
Classes | |
class | BoolOption |
class | HiddenOption |
class | IntOption |
struct | MetaData |
class | Option |
class | SetOption |
class | StringOption |
Public Types | |
enum | OptionType { Set, String, Int, Hidden } |
enum | SymbologyExport { NoSymbology = 0, FeatureSymbology, SymbolLayerSymbology } |
enum | WriterError { NoError = 0, ErrDriverNotFound, ErrCreateDataSource, ErrCreateLayer, ErrAttributeTypeUnsupported, ErrAttributeCreationFailed, ErrProjection, ErrFeatureWriteFailed, ErrInvalidLayer } |
Public Member Functions | |
QgsVectorFileWriter (const QString &vectorFileName, const QString &fileEncoding, const QgsFields &fields, QGis::WkbType geometryType, const QgsCoordinateReferenceSystem *srs, const QString &driverName="ESRI Shapefile", const QStringList &datasourceOptions=QStringList(), const QStringList &layerOptions=QStringList(), QString *newFilename=0, SymbologyExport symbologyExport=NoSymbology) | |
Create shapefile and initialize it. More... | |
~QgsVectorFileWriter () | |
Close opened shapefile for writing. More... | |
bool | addFeature (QgsFeature &feature, QgsFeatureRendererV2 *renderer=0, QGis::UnitType outputUnit=QGis::Meters) |
Add feature to the currently opened shapefile. More... | |
QMap< int, int > | attrIdxToOgrIdx () |
QString | errorMessage () |
Retrieves error message. More... | |
WriterError | hasError () |
Checks whether there were any errors in constructor. More... | |
void | setSymbologyExport (SymbologyExport symExport) |
void | setSymbologyScaleDenominator (double d) |
SymbologyExport | symbologyExport () const |
double | symbologyScaleDenominator () const |
Static Public Member Functions | |
static QString | convertCodecNameForEncodingOption (const QString &codecName) |
Converts codec name to string passed to ENCODING layer creation option of OGR Shapefile. More... | |
static bool | deleteShapeFile (const QString &theFileName) |
Delete a shapefile (and its accompanying shx / dbf / prf) More... | |
static bool | driverMetadata (const QString &driverName, MetaData &driverMetadata) |
static QString | fileFilterString () |
Returns filter string that can be used for dialogs. More... | |
static QString | filterForDriver (const QString &driverName) |
Creates a filter for an OGR driver key. More... | |
static QMap< QString, QString > | ogrDriverList () |
Returns driver list that can be used for dialogs. More... | |
static QMap< QString, QString > | supportedFiltersAndFormats () |
Returns map with format filter string as key and OGR format key as value. More... | |
static WriterError | writeAsVectorFormat (QgsVectorLayer *layer, const QString &fileName, const QString &fileEncoding, const QgsCoordinateReferenceSystem *destCRS, const QString &driverName="ESRI Shapefile", bool onlySelected=false, QString *errorMessage=0, const QStringList &datasourceOptions=QStringList(), const QStringList &layerOptions=QStringList(), bool skipAttributeCreation=false, QString *newFilename=0, SymbologyExport symbologyExport=NoSymbology, double symbologyScale=1.0, const QgsRectangle *filterExtent=0) |
Write contents of vector layer to an (OGR supported) vector formt. More... | |
static WriterError | writeAsVectorFormat (QgsVectorLayer *layer, const QString &fileName, const QString &fileEncoding, const QgsCoordinateTransform *ct, const QString &driverName="ESRI Shapefile", bool onlySelected=false, QString *errorMessage=0, const QStringList &datasourceOptions=QStringList(), const QStringList &layerOptions=QStringList(), bool skipAttributeCreation=false, QString *newFilename=0, SymbologyExport symbologyExport=NoSymbology, double symbologyScale=1.0, const QgsRectangle *filterExtent=0) |
Protected Member Functions | |
OGRGeometryH | createEmptyGeometry (QGis::WkbType wkbType) |
Protected Attributes | |
QMap< int, int > | mAttrIdxToOgrIdx |
Map attribute indizes to OGR field indexes. More... | |
QTextCodec * | mCodec |
OGRDataSourceH | mDS |
WriterError | mError |
Contains error value if construction was not successful. More... | |
QString | mErrorMessage |
QgsFields | mFields |
OGRGeometryH | mGeom |
OGRLayerH | mLayer |
OGRSpatialReferenceH | mOgrRef |
SymbologyExport | mSymbologyExport |
double | mSymbologyScaleDenominator |
Scale for symbology export (e.g. More... | |
QGis::WkbType | mWkbType |
Geometry type which is being used. More... | |
A convenience class for writing vector files to disk.
There are two possibilities how to use this class:
Currently supports only writing to shapefiles, but shouldn't be a problem to add capability to support other OGR-writable formats.
Definition at line 42 of file qgsvectorfilewriter.h.
QgsVectorFileWriter::QgsVectorFileWriter | ( | const QString & | vectorFileName, |
const QString & | fileEncoding, | ||
const QgsFields & | fields, | ||
QGis::WkbType | geometryType, | ||
const QgsCoordinateReferenceSystem * | srs, | ||
const QString & | driverName = "ESRI Shapefile" , |
||
const QStringList & | datasourceOptions = QStringList() , |
||
const QStringList & | layerOptions = QStringList() , |
||
QString * | newFilename = 0 , |
||
SymbologyExport | symbologyExport = NoSymbology |
||
) |
Create shapefile and initialize it.
Definition at line 58 of file qgsvectorfilewriter.cpp.
QgsVectorFileWriter::~QgsVectorFileWriter | ( | ) |
Close opened shapefile for writing.
Definition at line 1819 of file qgsvectorfilewriter.cpp.
bool QgsVectorFileWriter::addFeature | ( | QgsFeature & | feature, |
QgsFeatureRendererV2 * | renderer = 0 , |
||
QGis::UnitType | outputUnit = QGis::Meters |
||
) |
Add feature to the currently opened shapefile.
Definition at line 1567 of file qgsvectorfilewriter.cpp.
|
inline |
Definition at line 253 of file qgsvectorfilewriter.h.
Converts codec name to string passed to ENCODING layer creation option of OGR Shapefile.
Definition at line 2269 of file qgsvectorfilewriter.cpp.
|
protected |
Definition at line 500 of file qgsvectorfilewriter.cpp.
|
static |
Delete a shapefile (and its accompanying shx / dbf / prf)
theFileName | /path/to/file.shp |
Definition at line 2111 of file qgsvectorfilewriter.cpp.
|
static |
Definition at line 1538 of file qgsvectorfilewriter.cpp.
QString QgsVectorFileWriter::errorMessage | ( | ) |
Retrieves error message.
Definition at line 1562 of file qgsvectorfilewriter.cpp.
|
static |
Returns filter string that can be used for dialogs.
Definition at line 2242 of file qgsvectorfilewriter.cpp.
Creates a filter for an OGR driver key.
Definition at line 2257 of file qgsvectorfilewriter.cpp.
QgsVectorFileWriter::WriterError QgsVectorFileWriter::hasError | ( | ) |
Checks whether there were any errors in constructor.
Definition at line 1557 of file qgsvectorfilewriter.cpp.
Returns driver list that can be used for dialogs.
It contains all OGR drivers
Definition at line 2170 of file qgsvectorfilewriter.cpp.
|
inline |
Definition at line 265 of file qgsvectorfilewriter.h.
void QgsVectorFileWriter::setSymbologyScaleDenominator | ( | double | d | ) |
Definition at line 2137 of file qgsvectorfilewriter.cpp.
Returns map with format filter string as key and OGR format key as value.
Definition at line 2143 of file qgsvectorfilewriter.cpp.
|
inline |
Definition at line 264 of file qgsvectorfilewriter.h.
|
inline |
Definition at line 267 of file qgsvectorfilewriter.h.
|
static |
Write contents of vector layer to an (OGR supported) vector formt.
layer | layer to write |
fileName | file name to write to |
fileEncoding | encoding to use |
destCRS | pointer to CRS to reproject exported geometries to |
driverName | OGR driver to use |
onlySelected | write only selected features of layer |
errorMessage | pointer to buffer fo error message |
datasourceOptions | list of OGR data source creation options |
layerOptions | list of OGR layer creation options |
skipAttributeCreation | only write geometries |
newFilename | QString pointer which will contain the new file name created (in case it is different to fileName). |
symbologyExport | symbology to export |
symbologyScale | scale of symbology |
filterExtent | if not a null pointer, only features intersecting the extent will be saved |
Definition at line 1838 of file qgsvectorfilewriter.cpp.
|
static |
Definition at line 1865 of file qgsvectorfilewriter.cpp.
|
protected |
Map attribute indizes to OGR field indexes.
Definition at line 293 of file qgsvectorfilewriter.h.
|
protected |
Definition at line 287 of file qgsvectorfilewriter.h.
|
protected |
Definition at line 276 of file qgsvectorfilewriter.h.
|
protected |
Contains error value if construction was not successful.
Definition at line 284 of file qgsvectorfilewriter.h.
|
protected |
Definition at line 285 of file qgsvectorfilewriter.h.
|
protected |
Definition at line 281 of file qgsvectorfilewriter.h.
|
protected |
Definition at line 279 of file qgsvectorfilewriter.h.
|
protected |
Definition at line 277 of file qgsvectorfilewriter.h.
|
protected |
Definition at line 278 of file qgsvectorfilewriter.h.
|
protected |
Definition at line 295 of file qgsvectorfilewriter.h.
|
protected |
Scale for symbology export (e.g.
for symbols units in map units)
Definition at line 302 of file qgsvectorfilewriter.h.
|
protected |
Geometry type which is being used.
Definition at line 290 of file qgsvectorfilewriter.h.