44 ,
layerTitle( vl->title().isEmpty() ? vl->name() : vl->title() )
46 if ( !layerStyleOverride.isNull() )
99 std::unique_ptr< QgsFeatureRenderer >
renderer;
100 std::unique_ptr<QgsAbstractVectorLayerLabeling>
labeling;
116static const int sDxfColors[][3] =
376static const char *DXF_ENCODINGS[][2] =
379 {
"8859_1",
"ISO-8859-1" },
380 {
"8859_2",
"ISO-8859-2" },
381 {
"8859_3",
"ISO-8859-3" },
382 {
"8859_4",
"ISO-8859-4" },
383 {
"8859_5",
"ISO-8859-5" },
384 {
"8859_6",
"ISO-8859-6" },
385 {
"8859_7",
"ISO-8859-7" },
386 {
"8859_8",
"ISO-8859-8" },
387 {
"8859_9",
"ISO-8859-9" },
389 {
"DOS850",
"CP850" },
400 {
"MACINTOSH",
"MacRoman" },
402 {
"KSC5601",
"ksc5601.1987-0" },
404 {
"DOS866",
"CP866" },
405 {
"ANSI_1250",
"CP1250" },
406 {
"ANSI_1251",
"CP1251" },
407 {
"ANSI_1252",
"CP1252" },
408 {
"GB2312",
"GB2312" },
409 {
"ANSI_1253",
"CP1253" },
410 {
"ANSI_1254",
"CP1254" },
411 {
"ANSI_1255",
"CP1255" },
412 {
"ANSI_1256",
"CP1256" },
413 {
"ANSI_1257",
"CP1257" },
414 {
"ANSI_874",
"CP874" },
415 {
"ANSI_932",
"Shift_JIS" },
416 {
"ANSI_936",
"CP936" },
417 {
"ANSI_949",
"CP949" },
418 {
"ANSI_949",
"ms949" },
419 {
"ANSI_950",
"CP950" },
422 {
"ANSI_1258",
"CP1258" },
426#define DXF_TRAILER "\
570ACDBDICTIONARYWDFLT\n\
590AcDbDictionaryWithDefault\n\
7861.000000000000000E+20\n\
7881.000000000000000E+20\n\
7901.000000000000000E+20\n\
792-1.000000000000000E+20\n\
794-1.000000000000000E+20\n\
796-1.000000000000000E+20\n\
1226AcDbSavedByObjectVersion\n\
1316AcDbSavedByObjectVersion\n\
1406AcDbSavedByObjectVersion\n\
1496AcDbSavedByObjectVersion\n\
1586AcDbSavedByObjectVersion\n\
1678AcDbSavedByObjectVersion\n\
1768AcDbSavedByObjectVersion\n\
1858AcDbSavedByObjectVersion\n\
1948AcDbSavedByObjectVersion\n\
2038AcDbSavedByObjectVersion\n\
2128AcDbSavedByObjectVersion\n\
2218AcDbSavedByObjectVersion\n\
2308AcDbSavedByObjectVersion\n\
2398AcDbSavedByObjectVersion\n\
2490AcDbSavedByObjectVersion\n\
2580AcDbSavedByObjectVersion\n\
virtual QgsAbstractVectorLayerLabeling * clone() const =0
Returns a new copy of the object.
This class represents a coordinate reference system (CRS).
Exports QGIS layers to the DXF format.
static QgsExpressionContextScope * layerScope(const QgsMapLayer *layer)
Creates a new scope which contains variables and functions relating to a QgsMapLayer.
void appendScope(QgsExpressionContextScope *scope)
Appends a scope to the end of the context.
virtual QgsFeatureRenderer * clone() const =0
Create a deep copy of this renderer.
Container of fields for a vector layer.
Implements a derived label provider for use with QgsLabelSink.
The QgsLabelingEngine class provides map labeling functionality.
void addProvider(QgsAbstractLabelProvider *provider)
Add provider of label features. Takes ownership of the provider.
void removeProvider(QgsAbstractLabelProvider *provider)
Remove provider if the provider's initialization failed. Provider instance is deleted.
Restore overridden layer style on destruction.
void setOverrideStyle(const QString &style)
Temporarily apply a different style to the layer.
Contains settings for how a map layer will be labeled.
Contains information about the context of a rendering operation.
QgsExpressionContext & expressionContext()
Gets the expression context.
QgsLabelingEngine * labelingEngine() const
Gets access to new labeling engine (may be nullptr).
bool prepare(QgsRenderContext &context, QSet< QString > &attributeNames) override
Prepare for registration of features.
Implements a derived label provider for rule based labels for use with QgsLabelSink.
Rule based labeling for a vector layer.
Partial snapshot of vector layer's state (only the members necessary for access to features)
virtual bool prepare(QgsRenderContext &context, QSet< QString > &attributeNames)
Prepare for registration of features.
void startRender(QgsRenderContext &context) override
To be called before rendering of labels begins.
Represents a vector layer which manages a vector based data sets.
bool labelsEnabled() const
Returns whether the layer contains labels which are enabled and should be drawn.
QgsFields fields() const FINAL
Returns the list of fields of this layer.
const QgsAbstractVectorLayerLabeling * labeling() const
Access to const labeling configuration.
QgsFeatureRenderer * renderer()
Returns the feature renderer used for rendering the features in the layer in 2D map views.
Holds information about each layer in a DXF job.
QString splitLayerAttribute
QSet< QString > attributes
DxfLayerJob(QgsVectorLayer *vl, const QString &layerStyleOverride, QgsRenderContext &renderContext, QgsDxfExport *dxfExport, const QString &splitLayerAttribute)
std::unique_ptr< QgsFeatureRenderer > renderer
QgsRenderContext renderContext
QgsMapLayerStyleOverride styleOverride
QgsLabelSinkProvider * labelProvider
QgsCoordinateReferenceSystem crs
QgsRuleBasedLabelSinkProvider * ruleBasedLabelProvider
QgsVectorLayerFeatureSource featureSource
std::unique_ptr< QgsAbstractVectorLayerLabeling > labeling