QGIS API Documentation
3.14.0-Pi (9f7028fd23)
|
#include <qgsdxfexport.h>
Classes | |
struct | DxfLayer |
Layers and optional attribute index to split into multiple layers using attribute value as layer name. More... | |
Public Types | |
enum | DxfPolylineFlag { Closed = 1, Curve = 2, Spline = 4, Is3DPolyline = 8, Is3DPolygonMesh = 16, PolygonMesh = 32, PolyfaceMesh = 64, ContinuousPattern = 128 } |
Flags for polylines. More... | |
enum | ExportResult { ExportResult::Success = 0, ExportResult::InvalidDeviceError, ExportResult::DeviceNotWritableError, ExportResult::EmptyExtentError } |
The result of an export as dxf operation. More... | |
enum | Flag { FlagNoMText = 1 << 1 } |
Export flags. More... | |
enum | HAlign : int { HAlign::HLeft = 0, HAlign::HCenter = 1, HAlign::HRight = 2, HAlign::HAligned = 3, HAlign::HMiddle = 4, HAlign::HFit = 5, HAlign::Undefined = 9999 } |
Horizontal alignments. More... | |
enum | SymbologyExport { NoSymbology = 0, FeatureSymbology, SymbolLayerSymbology } |
enum | VAlign : int { VAlign::VBaseLine = 0, VAlign::VBottom = 1, VAlign::VMiddle = 2, VAlign::VTop = 3, VAlign::Undefined = 9999 } |
Vertical alignments. More... | |
Public Member Functions | |
QgsDxfExport () | |
Constructor for QgsDxfExport. More... | |
~QgsDxfExport () override | |
void | addLayers (const QList< QgsDxfExport::DxfLayer > &layers) |
Add layers to export. More... | |
void | clipValueToMapUnitScale (double &value, const QgsMapUnitScale &scale, double pixelToMMFactor) const |
Clips value to scale minimum/maximum. More... | |
QgsCoordinateReferenceSystem | destinationCrs () const |
Returns the destination CRS, or an invalid CRS if no reprojection will be done. More... | |
void | drawLabel (const QString &layerId, QgsRenderContext &context, pal::LabelPosition *label, const QgsPalLayerSettings &settings) override |
Add a label to the dxf output. More... | |
QgsRectangle | extent () const |
Gets extent of area to export. More... | |
QgsDxfExport::Flags | flags () const |
Returns the export flags. More... | |
bool | force2d () |
Retrieve whether the output should be forced to 2d. More... | |
QString | layerName (const QString &id, const QgsFeature &f) const |
Gets layer name for feature. More... | |
QString | layerName (QgsVectorLayer *vl) const |
Gets name for layer respecting the use layer title as layer name mode. More... | |
bool | layerTitleAsName () |
Retrieve whether layer title (where set) instead of name shall be use. More... | |
QgsUnitTypes::DistanceUnit | mapUnits () const |
Retrieve map units. More... | |
Q_DECL_DEPRECATED void | registerDxfLayer (const QString &layerId, QgsFeatureId fid, const QString &layer) |
Register name of layer for feature. More... | |
void | setDestinationCrs (const QgsCoordinateReferenceSystem &crs) |
Set destination CRS. More... | |
void | setExtent (const QgsRectangle &r) |
Set extent of area to export. More... | |
void | setFlags (QgsDxfExport::Flags flags) |
Sets the export flags. More... | |
void | setForce2d (bool force2d) |
Force 2d output (eg. More... | |
void | setLayerTitleAsName (bool layerTitleAsName) |
Enable use of title (where set) instead of layer name, when attribute index of corresponding layer index is -1. More... | |
void | setMapSettings (const QgsMapSettings &settings) |
Set map settings and assign layer name attributes. More... | |
void | setSymbologyExport (QgsDxfExport::SymbologyExport e) |
Set symbology export mode. More... | |
void | setSymbologyScale (double scale) |
Set reference scale for output. More... | |
QgsDxfExport::SymbologyExport | symbologyExport () const |
Gets symbology export mode. More... | |
double | symbologyScale () const |
Returns the reference scale for output. More... | |
void | writeCircle (const QString &layer, const QColor &color, const QgsPoint &pt, double radius, const QString &lineStyleName, double width) |
Write circle (as polyline) More... | |
void | writeDouble (double d) |
Write a floating point value. More... | |
void | writeFilledCircle (const QString &layer, const QColor &color, const QgsPoint &pt, double radius) |
Write filled circle (as hatch) More... | |
void | writeGroup (const QColor &color, int exactMatch=62, int rgbCode=420, int transparencyCode=440) |
Write a group code with color value. More... | |
void | writeGroup (int code, const QgsPoint &p) |
Write a group code with a point. More... | |
void | writeGroup (int code, const QString &s) |
Write a group code with a string value. More... | |
void | writeGroup (int code, double d) |
Write a group code with a floating point value. More... | |
void | writeGroup (int code, int i) |
Write a tuple of group code and integer value. More... | |
void | writeGroupCode (int code) |
Write a group code. More... | |
int | writeHandle (int code=5, int handle=0) |
Write a tuple of group code and a handle. More... | |
void | writeInt (int i) |
Write an integer value. More... | |
void | writeLine (const QgsPoint &pt1, const QgsPoint &pt2, const QString &layer, const QString &lineStyleName, const QColor &color, double width=-1) |
Write line (as a polyline) More... | |
void | writeMText (const QString &layer, const QString &text, const QgsPoint &pt, double width, double angle, const QColor &color) |
Write mtext (MTEXT) More... | |
void | writePoint (const QString &layer, const QColor &color, const QgsPoint &pt) |
Write point. More... | |
void | writePolygon (const QgsCurvePolygon &polygon, const QString &layer, const QString &hatchPattern, const QColor &color) |
Draw dxf curved filled polygon (HATCH) More... | |
void | writePolygon (const QgsRingSequence &polygon, const QString &layer, const QString &hatchPattern, const QColor &color) |
Draw dxf filled polygon (HATCH) More... | |
void | writePolyline (const QgsCurve &curve, const QString &layer, const QString &lineStyleName, const QColor &color, double width=-1) |
Draw dxf primitives (LWPOLYLINE) More... | |
void | writePolyline (const QgsPointSequence &line, const QString &layer, const QString &lineStyleName, const QColor &color, double width=-1) |
Draw dxf primitives (LWPOLYLINE) More... | |
void | writeString (const QString &s) |
Write a string value. More... | |
void | writeText (const QString &layer, const QString &text, const QgsPoint &pt, double size, double angle, const QColor &color, QgsDxfExport::HAlign hali=QgsDxfExport::HAlign::Undefined, QgsDxfExport::VAlign vali=QgsDxfExport::VAlign::Undefined) |
Write text (TEXT) More... | |
ExportResult | writeToFile (QIODevice *d, const QString &codec) |
Export to a dxf file in the given encoding. More... | |
Public Member Functions inherited from QgsLabelSink | |
virtual | ~QgsLabelSink ()=default |
Static Public Member Functions | |
static int | closestColorMatch (QRgb color) |
Gets DXF palette index of nearest entry for given color. More... | |
static QString | dxfEncoding (const QString &name) |
Returns DXF encoding for Qt encoding. More... | |
static QString | dxfLayerName (const QString &name) |
Returns cleaned layer name for use in DXF. More... | |
static QStringList | encodings () |
Returns list of available DXF encodings. More... | |
static double | mapUnitScaleFactor (double scale, QgsUnitTypes::RenderUnit symbolUnits, QgsUnitTypes::DistanceUnit mapUnits, double mapUnitsPerPixel=1.0) |
Returns scale factor for conversion to map units. More... | |
Definition at line 62 of file qgsdxfexport.h.
Flags for polylines.
Definition at line 157 of file qgsdxfexport.h.
|
strong |
The result of an export as dxf operation.
Definition at line 120 of file qgsdxfexport.h.
enum QgsDxfExport::Flag |
Export flags.
Enumerator | |
---|---|
FlagNoMText | Export text as TEXT elements. If not set, text will be exported as MTEXT elements. |
Definition at line 109 of file qgsdxfexport.h.
|
strong |
Horizontal alignments.
Enumerator | |
---|---|
HLeft | Left (0) |
HCenter | Centered (1) |
HRight | Right (2) |
HAligned | Aligned = (3) (if VAlign==0) |
HMiddle | Middle = (4) (if VAlign==0) |
HFit | Fit into point = (5) (if VAlign==0) |
Undefined | Undefined. |
Definition at line 141 of file qgsdxfexport.h.
Definition at line 101 of file qgsdxfexport.h.
|
strong |
Vertical alignments.
Enumerator | |
---|---|
VBaseLine | Top (0) |
VBottom | Bottom (1) |
VMiddle | Middle (2) |
VTop | Top (3) |
Undefined | Undefined. |
Definition at line 131 of file qgsdxfexport.h.
|
default |
Constructor for QgsDxfExport.
|
override |
Definition at line 65 of file qgsdxfexport.cpp.
void QgsDxfExport::addLayers | ( | const QList< QgsDxfExport::DxfLayer > & | layers | ) |
Add layers to export.
layers | list of layers and corresponding attribute indexes that determine the layer name (-1 for original layer name or title) |
Definition at line 85 of file qgsdxfexport.cpp.
void QgsDxfExport::clipValueToMapUnitScale | ( | double & | value, |
const QgsMapUnitScale & | scale, | ||
double | pixelToMMFactor | ||
) | const |
Clips value to scale minimum/maximum.
value | the value to clip |
scale | the scale dependent minimum/maximum values |
pixelToMMFactor | pixels per mm |
Definition at line 1836 of file qgsdxfexport.cpp.
|
static |
Gets DXF palette index of nearest entry for given color.
color |
Definition at line 1769 of file qgsdxfexport.cpp.
QgsCoordinateReferenceSystem QgsDxfExport::destinationCrs | ( | ) | const |
Returns the destination CRS, or an invalid CRS if no reprojection will be done.
Definition at line 2372 of file qgsdxfexport.cpp.
|
overridevirtual |
Add a label to the dxf output.
Implements QgsLabelSink.
Definition at line 2207 of file qgsdxfexport.cpp.
|
static |
Returns DXF encoding for Qt encoding.
Definition at line 2164 of file qgsdxfexport.cpp.
|
static |
Returns cleaned layer name for use in DXF.
Definition at line 2104 of file qgsdxfexport.cpp.
|
static |
Returns list of available DXF encodings.
Definition at line 2185 of file qgsdxfexport.cpp.
|
inline |
Gets extent of area to export.
Definition at line 273 of file qgsdxfexport.h.
QgsDxfExport::Flags QgsDxfExport::flags | ( | ) | const |
Returns the export flags.
Definition at line 80 of file qgsdxfexport.cpp.
|
inline |
Retrieve whether the output should be forced to 2d.
Definition at line 302 of file qgsdxfexport.h.
QString QgsDxfExport::layerName | ( | const QString & | id, |
const QgsFeature & | f | ||
) | const |
Gets layer name for feature.
id | layer id of layer |
f | feature of layer |
Definition at line 2147 of file qgsdxfexport.cpp.
QString QgsDxfExport::layerName | ( | QgsVectorLayer * | vl | ) | const |
Gets name for layer respecting the use layer title as layer name mode.
vl | the vector layer |
Definition at line 2201 of file qgsdxfexport.cpp.
|
inline |
Retrieve whether layer title (where set) instead of name shall be use.
Definition at line 288 of file qgsdxfexport.h.
QgsUnitTypes::DistanceUnit QgsDxfExport::mapUnits | ( | ) | const |
|
static |
Returns scale factor for conversion to map units.
scale | the map scale denominator |
symbolUnits | the symbol output units |
mapUnits | the map units |
mapUnitsPerPixel | Map units per pixel |
Definition at line 1819 of file qgsdxfexport.cpp.
void QgsDxfExport::registerDxfLayer | ( | const QString & | layerId, |
QgsFeatureId | fid, | ||
const QString & | layer | ||
) |
Register name of layer for feature.
layerId | id of layer |
fid | id of feature |
layer | dxf layer of feature |
Definition at line 2358 of file qgsdxfexport.cpp.
void QgsDxfExport::setDestinationCrs | ( | const QgsCoordinateReferenceSystem & | crs | ) |
Set destination CRS.
Definition at line 2366 of file qgsdxfexport.cpp.
|
inline |
Set extent of area to export.
r | area to export |
Definition at line 266 of file qgsdxfexport.h.
void QgsDxfExport::setFlags | ( | QgsDxfExport::Flags | flags | ) |
Sets the export flags.
Definition at line 75 of file qgsdxfexport.cpp.
|
inline |
Force 2d output (eg.
to support linewidth in polylines)
force2d | flag |
Definition at line 295 of file qgsdxfexport.h.
|
inline |
Enable use of title (where set) instead of layer name, when attribute index of corresponding layer index is -1.
layerTitleAsName | flag |
Definition at line 281 of file qgsdxfexport.h.
void QgsDxfExport::setMapSettings | ( | const QgsMapSettings & | settings | ) |
Set map settings and assign layer name attributes.
settings | map settings to apply |
Definition at line 70 of file qgsdxfexport.cpp.
|
inline |
|
inline |
Set reference scale for output.
The scale value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map.
Definition at line 219 of file qgsdxfexport.h.
|
inline |
Gets symbology export mode.
Definition at line 260 of file qgsdxfexport.h.
|
inline |
Returns the reference scale for output.
The scale value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map.
Definition at line 227 of file qgsdxfexport.h.
void QgsDxfExport::writeCircle | ( | const QString & | layer, |
const QColor & | color, | ||
const QgsPoint & | pt, | ||
double | radius, | ||
const QString & | lineStyleName, | ||
double | width | ||
) |
Write circle (as polyline)
Definition at line 1440 of file qgsdxfexport.cpp.
void QgsDxfExport::writeDouble | ( | double | d | ) |
Write a floating point value.
d | floating point value |
Definition at line 166 of file qgsdxfexport.cpp.
void QgsDxfExport::writeFilledCircle | ( | const QString & | layer, |
const QColor & | color, | ||
const QgsPoint & | pt, | ||
double | radius | ||
) |
Write filled circle (as hatch)
Definition at line 1403 of file qgsdxfexport.cpp.
void QgsDxfExport::writeGroup | ( | const QColor & | color, |
int | exactMatch = 62 , |
||
int | rgbCode = 420 , |
||
int | transparencyCode = 440 |
||
) |
Write a group code with color value.
color | color |
exactMatch | group code to use if the color has an exact match in the dxf palette |
rgbCode | group code to use if the color doesn't have an exact match or has a transparency component |
transparencyCode | group code to use for transparency component |
Definition at line 127 of file qgsdxfexport.cpp.
void QgsDxfExport::writeGroup | ( | int | code, |
const QgsPoint & | p | ||
) |
Write a group code with a point.
code | group code |
p | point value |
Definition at line 119 of file qgsdxfexport.cpp.
void QgsDxfExport::writeGroup | ( | int | code, |
const QString & | s | ||
) |
Write a group code with a string value.
code | group code |
s | string value |
Definition at line 113 of file qgsdxfexport.cpp.
void QgsDxfExport::writeGroup | ( | int | code, |
double | d | ||
) |
Write a group code with a floating point value.
code | group code |
d | floating point value |
Definition at line 107 of file qgsdxfexport.cpp.
void QgsDxfExport::writeGroup | ( | int | code, |
int | i | ||
) |
Write a tuple of group code and integer value.
code | group code |
i | integer value |
Definition at line 101 of file qgsdxfexport.cpp.
void QgsDxfExport::writeGroupCode | ( | int | code | ) |
Write a group code.
code | group code value |
Definition at line 156 of file qgsdxfexport.cpp.
int QgsDxfExport::writeHandle | ( | int | code = 5 , |
int | handle = 0 |
||
) |
Write a tuple of group code and a handle.
code | group code to use |
handle | handle to use (0 generates a new handle) |
Definition at line 294 of file qgsdxfexport.cpp.
void QgsDxfExport::writeInt | ( | int | i | ) |
void QgsDxfExport::writeMText | ( | const QString & | layer, |
const QString & | text, | ||
const QgsPoint & | pt, | ||
double | width, | ||
double | angle, | ||
const QColor & | color | ||
) |
Write mtext (MTEXT)
Definition at line 1488 of file qgsdxfexport.cpp.
void QgsDxfExport::writePoint | ( | const QString & | layer, |
const QColor & | color, | ||
const QgsPoint & | pt | ||
) |
Write point.
Definition at line 1392 of file qgsdxfexport.cpp.
void QgsDxfExport::writePolygon | ( | const QgsCurvePolygon & | polygon, |
const QString & | layer, | ||
const QString & | hatchPattern, | ||
const QColor & | color | ||
) |
Draw dxf curved filled polygon (HATCH)
polygon | polygon (including curves) |
layer | layer name to use |
hatchPattern | hatchPattern to use |
color | color to use |
Definition at line 1202 of file qgsdxfexport.cpp.
void QgsDxfExport::writePolygon | ( | const QgsRingSequence & | polygon, |
const QString & | layer, | ||
const QString & | hatchPattern, | ||
const QColor & | color | ||
) |
Draw dxf filled polygon (HATCH)
polygon | polygon |
layer | layer name to use |
hatchPattern | hatchPattern to use |
color | color to use |
Definition at line 1163 of file qgsdxfexport.cpp.
void QgsDxfExport::writePolyline | ( | const QgsCurve & | curve, |
const QString & | layer, | ||
const QString & | lineStyleName, | ||
const QColor & | color, | ||
double | width = -1 |
||
) |
Draw dxf primitives (LWPOLYLINE)
curve | polyline (including curved) |
layer | layer name to use |
lineStyleName | line type to use |
color | color to use |
width | line width to use |
Definition at line 1075 of file qgsdxfexport.cpp.
void QgsDxfExport::writePolyline | ( | const QgsPointSequence & | line, |
const QString & | layer, | ||
const QString & | lineStyleName, | ||
const QColor & | color, | ||
double | width = -1 |
||
) |
Draw dxf primitives (LWPOLYLINE)
line | polyline |
layer | layer name to use |
lineStyleName | line type to use |
color | color to use |
width | line width to use |
Definition at line 937 of file qgsdxfexport.cpp.
void QgsDxfExport::writeString | ( | const QString & | s | ) |
void QgsDxfExport::writeText | ( | const QString & | layer, |
const QString & | text, | ||
const QgsPoint & | pt, | ||
double | size, | ||
double | angle, | ||
const QColor & | color, | ||
QgsDxfExport::HAlign | hali = QgsDxfExport::HAlign::Undefined , |
||
QgsDxfExport::VAlign | vali = QgsDxfExport::VAlign::Undefined |
||
) |
Write text (TEXT)
Definition at line 1462 of file qgsdxfexport.cpp.
QgsDxfExport::ExportResult QgsDxfExport::writeToFile | ( | QIODevice * | d, |
const QString & | codec | ||
) |
Export to a dxf file in the given encoding.
d | device |
codec | encoding |
Definition at line 179 of file qgsdxfexport.cpp.