mirror of
https://github.com/qgis/QGIS.git
synced 2025-04-15 00:04:00 -04:00
Fix build
(was using api from the mid 1970's... well.. a few weeks ago anyway)
This commit is contained in:
parent
62ea90c59c
commit
172c12bdc3
@ -72,6 +72,20 @@ class QgsDxfExport
|
||||
*/
|
||||
QgsUnitTypes::DistanceUnit mapUnits() const;
|
||||
|
||||
/**
|
||||
* Set destination CRS
|
||||
* @see destinationCrs()
|
||||
* @note added in QGIS 3.0
|
||||
*/
|
||||
void setDestinationCrs( const QgsCoordinateReferenceSystem& crs );
|
||||
|
||||
/**
|
||||
* Returns the destination CRS, or an invalid CRS if no reprojection will be done.
|
||||
* @see setDestinationCrs()
|
||||
* @note added in QGIS 3.0
|
||||
*/
|
||||
QgsCoordinateReferenceSystem destinationCrs() const;
|
||||
|
||||
/**
|
||||
* Set symbology export mode
|
||||
* @param e the mode
|
||||
|
@ -460,13 +460,12 @@ QgsDxfExportDialog::QgsDxfExportDialog( QWidget *parent, Qt::WindowFlags f )
|
||||
buttonBox->button( QDialogButtonBox::Ok )->setEnabled( false );
|
||||
restoreGeometry( s.value( "/Windows/DxfExport/geometry" ).toByteArray() );
|
||||
|
||||
mCRS = QgsProject::instance()->readEntry( "dxf", "/lastDxfCrs",
|
||||
s.value( "qgis/lastDxfCrs", QString::number( QgisApp::instance()->mapCanvas()->mapSettings().destinationCrs().srsid() ) ).toString()
|
||||
).toLong();
|
||||
|
||||
QgsCoordinateReferenceSystem crs = QgsCRSCache::instance()->crsBySrsId( mCRS );
|
||||
mCrsSelector->setCrs( crs );
|
||||
mCrsSelector->setLayerCrs( crs );
|
||||
long crsid = QgsProject::instance()->readEntry( "dxf", "/lastDxfCrs",
|
||||
s.value( "qgis/lastDxfCrs", QString::number( QgisApp::instance()->mapCanvas()->mapSettings().destinationCrs().srsid() ) ).toString()
|
||||
).toLong();
|
||||
mCRS = QgsCoordinateReferenceSystem::fromSrsId( crsid );
|
||||
mCrsSelector->setCrs( mCRS );
|
||||
mCrsSelector->setLayerCrs( mCRS );
|
||||
mCrsSelector->dialog()->setMessage( tr( "Select the coordinate reference system for the dxf file. "
|
||||
"The data points will be transformed from the layer coordinate reference system." ) );
|
||||
|
||||
@ -613,7 +612,7 @@ void QgsDxfExportDialog::saveSettings()
|
||||
s.setValue( "qgis/lastDxfMapRectangle", mMapExtentCheckBox->isChecked() );
|
||||
s.setValue( "qgis/lastDxfLayerTitleAsName", mLayerTitleAsName->isChecked() );
|
||||
s.setValue( "qgis/lastDxfEncoding", mEncoding->currentText() );
|
||||
s.setValue( "qgis/lastDxfCrs", QString::number( mCRS ) );
|
||||
s.setValue( "qgis/lastDxfCrs", QString::number( mCRS.srsid() ) );
|
||||
|
||||
QgsProject::instance()->writeEntry( "dxf", "/lastDxfSymbologyMode", mSymbologyModeComboBox->currentIndex() );
|
||||
QgsProject::instance()->writeEntry( "dxf", "/lastSymbologyExportScale", mScaleWidget->scale() );
|
||||
@ -621,7 +620,7 @@ void QgsDxfExportDialog::saveSettings()
|
||||
QgsProject::instance()->writeEntry( "dxf", "/lastDxfMapRectangle", mMapExtentCheckBox->isChecked() );
|
||||
QgsProject::instance()->writeEntry( "dxf", "/lastDxfEncoding", mEncoding->currentText() );
|
||||
QgsProject::instance()->writeEntry( "dxf", "/lastVisibilityPreset", mVisibilityPresets->currentText() );
|
||||
QgsProject::instance()->writeEntry( "dxf", "/lastDxfCrs", QString::number( mCRS ) );
|
||||
QgsProject::instance()->writeEntry( "dxf", "/lastDxfCrs", QString::number( mCRS.srsid() ) );
|
||||
}
|
||||
|
||||
|
||||
@ -632,10 +631,10 @@ QString QgsDxfExportDialog::encoding() const
|
||||
|
||||
void QgsDxfExportDialog::on_mCrsSelector_crsChanged( const QgsCoordinateReferenceSystem &crs )
|
||||
{
|
||||
mCRS = crs.srsid();
|
||||
mCRS = crs;
|
||||
}
|
||||
|
||||
long QgsDxfExportDialog::crs() const
|
||||
QgsCoordinateReferenceSystem QgsDxfExportDialog::crs() const
|
||||
{
|
||||
return mCRS;
|
||||
}
|
||||
|
@ -88,7 +88,7 @@ class QgsDxfExportDialog : public QDialog, private Ui::QgsDxfExportDialogBase
|
||||
bool exportMapExtent() const;
|
||||
bool layerTitleAsName() const;
|
||||
QString encoding() const;
|
||||
long crs() const;
|
||||
QgsCoordinateReferenceSystem crs() const;
|
||||
|
||||
public slots:
|
||||
/** Change the selection of layers in the list */
|
||||
@ -107,7 +107,7 @@ class QgsDxfExportDialog : public QDialog, private Ui::QgsDxfExportDialogBase
|
||||
QgsLayerTreeGroup *mLayerTreeGroup;
|
||||
FieldSelectorDelegate *mFieldSelectorDelegate;
|
||||
|
||||
long mCRS;
|
||||
QgsCoordinateReferenceSystem mCRS;
|
||||
};
|
||||
|
||||
#endif // QGSDXFEXPORTDIALOG_H
|
||||
|
@ -373,7 +373,6 @@ QgsDxfExport::QgsDxfExport()
|
||||
, mSymbolLayerCounter( 0 )
|
||||
, mNextHandleId( DXF_HANDSEED )
|
||||
, mBlockCounter( 0 )
|
||||
, mCrs( -1 )
|
||||
{
|
||||
}
|
||||
|
||||
@ -392,7 +391,7 @@ QgsDxfExport& QgsDxfExport::operator=( const QgsDxfExport & dxfExport )
|
||||
mSymbolLayerCounter = 0; // internal counter
|
||||
mNextHandleId = 0;
|
||||
mBlockCounter = 0;
|
||||
mCrs = -1;
|
||||
mCrs = QgsCoordinateReferenceSystem();
|
||||
return *this;
|
||||
}
|
||||
|
||||
@ -524,12 +523,12 @@ int QgsDxfExport::writeToFile( QIODevice* d, const QString& encoding )
|
||||
mMapSettings.setExtent( mExtent );
|
||||
|
||||
int dpi = 96;
|
||||
mFactor = 1000 * dpi / mSymbologyScaleDenominator / 25.4 * QgsUnitTypes::fromUnitToUnitFactor( mMapUnits, QGis::Meters );
|
||||
mFactor = 1000 * dpi / mSymbologyScaleDenominator / 25.4 * QgsUnitTypes::fromUnitToUnitFactor( mMapUnits, QgsUnitTypes::DistanceMeters );
|
||||
mMapSettings.setOutputSize( QSize( mExtent.width() * mFactor, mExtent.height() * mFactor ) );
|
||||
mMapSettings.setOutputDpi( dpi );
|
||||
if ( mCrs >= 0 )
|
||||
mMapSettings.setDestinationCrs( QgsCRSCache::instance()->crsBySrsId( mCrs ) );
|
||||
mMapSettings.setCrsTransformEnabled( mCrs >= 0 );
|
||||
if ( mCrs.isValid() )
|
||||
mMapSettings.setDestinationCrs( mCrs );
|
||||
mMapSettings.setCrsTransformEnabled( mCrs.isValid() );
|
||||
|
||||
writeHeader( dxfEncoding( encoding ) );
|
||||
writeTables();
|
||||
@ -553,11 +552,11 @@ void QgsDxfExport::writeHeader( const QString& codepage )
|
||||
|
||||
// EXTMIN
|
||||
writeGroup( 9, "$EXTMIN" );
|
||||
writeGroup( 0, QgsPointV2( QgsWKBTypes::PointZ, mExtent.xMinimum(), mExtent.yMinimum() ) );
|
||||
writeGroup( 0, QgsPointV2( QgsWkbTypes::PointZ, mExtent.xMinimum(), mExtent.yMinimum() ) );
|
||||
|
||||
// EXTMAX
|
||||
writeGroup( 9, "$EXTMAX" );
|
||||
writeGroup( 0, QgsPointV2( QgsWKBTypes::PointZ, mExtent.xMaximum(), mExtent.yMaximum() ) );
|
||||
writeGroup( 0, QgsPointV2( QgsWkbTypes::PointZ, mExtent.xMaximum(), mExtent.yMaximum() ) );
|
||||
|
||||
// Global linetype scale
|
||||
writeGroup( 9, "$LTSCALE" );
|
||||
@ -1015,7 +1014,7 @@ void QgsDxfExport::writeEntities()
|
||||
|
||||
QgsFeatureIterator featureIt = vl->getFeatures( freq );
|
||||
|
||||
const QgsCoordinateTransform *ct = mMapSettings.hasCrsTransformEnabled() ? mMapSettings.layerTransform( vl ) : nullptr;
|
||||
QgsCoordinateTransform ct = mMapSettings.hasCrsTransformEnabled() ? mMapSettings.layerTransform( vl ) : QgsCoordinateTransform();
|
||||
|
||||
QgsFeature fet;
|
||||
while ( featureIt.nextFeature( fet ) )
|
||||
@ -1150,7 +1149,7 @@ void QgsDxfExport::writeEntitiesSymbolLevels( QgsVectorLayer* layer )
|
||||
}
|
||||
}
|
||||
|
||||
const QgsCoordinateTransform *ct = mMapSettings.hasCrsTransformEnabled() ? mMapSettings.layerTransform( layer ) : nullptr;
|
||||
QgsCoordinateTransform ct = mMapSettings.hasCrsTransformEnabled() ? mMapSettings.layerTransform( layer ) : QgsCoordinateTransform();
|
||||
|
||||
// export symbol layers and symbology
|
||||
for ( int l = 0; l < levels.count(); l++ )
|
||||
@ -3642,7 +3641,7 @@ void QgsDxfExport::writeMText( const QString& layer, const QString& text, const
|
||||
writeGroup( 7, "STANDARD" ); // so far only support for standard font
|
||||
}
|
||||
|
||||
void QgsDxfExport::addFeature( QgsSymbolRenderContext& ctx, const QgsCoordinateTransform *ct, const QString& layer, const QgsSymbolLayer* symbolLayer, const QgsSymbol* symbol )
|
||||
void QgsDxfExport::addFeature( QgsSymbolRenderContext& ctx, const QgsCoordinateTransform& ct, const QString& layer, const QgsSymbolLayer* symbolLayer, const QgsSymbol* symbol )
|
||||
{
|
||||
const QgsFeature *fet = ctx.feature();
|
||||
if ( !fet )
|
||||
@ -3651,10 +3650,10 @@ void QgsDxfExport::addFeature( QgsSymbolRenderContext& ctx, const QgsCoordinateT
|
||||
if ( !fet->hasGeometry() )
|
||||
return;
|
||||
|
||||
QScopedPointer<QgsAbstractGeometry> geom( fet->constGeometry()->geometry()->clone() );
|
||||
if ( ct )
|
||||
QScopedPointer<QgsAbstractGeometry> geom( fet->geometry().geometry()->clone() );
|
||||
if ( ct.isValid() )
|
||||
{
|
||||
geom->transform( *ct );
|
||||
geom->transform( ct );
|
||||
}
|
||||
|
||||
QgsWkbTypes::Type geometryType = geom->wkbType();
|
||||
@ -4389,12 +4388,12 @@ void QgsDxfExport::registerDxfLayer( QString layerId, QgsFeatureId fid, QString
|
||||
mDxfLayerNames[layerId][fid] = layerName;
|
||||
}
|
||||
|
||||
void QgsDxfExport::setDestinationCrs( long crs )
|
||||
void QgsDxfExport::setDestinationCrs( const QgsCoordinateReferenceSystem& crs )
|
||||
{
|
||||
mCrs = crs;
|
||||
}
|
||||
|
||||
long QgsDxfExport::destinationCrs()
|
||||
QgsCoordinateReferenceSystem QgsDxfExport::destinationCrs() const
|
||||
{
|
||||
return mCrs;
|
||||
}
|
||||
|
@ -98,13 +98,17 @@ class CORE_EXPORT QgsDxfExport
|
||||
|
||||
/**
|
||||
* Set destination CRS
|
||||
* @see destinationCrs()
|
||||
* @note added in QGIS 3.0
|
||||
*/
|
||||
void setDestinationCrs( long crs );
|
||||
void setDestinationCrs( const QgsCoordinateReferenceSystem& crs );
|
||||
|
||||
/**
|
||||
* Set destination CRS
|
||||
* Returns the destination CRS, or an invalid CRS if no reprojection will be done.
|
||||
* @see setDestinationCrs()
|
||||
* @note added in QGIS 3.0
|
||||
*/
|
||||
long destinationCrs();
|
||||
QgsCoordinateReferenceSystem destinationCrs() const;
|
||||
|
||||
/**
|
||||
* Set symbology export mode
|
||||
@ -362,7 +366,7 @@ class CORE_EXPORT QgsDxfExport
|
||||
void writeSymbolLayerLinetype( const QgsSymbolLayer *symbolLayer );
|
||||
void writeLinetype( const QString &styleName, const QVector<qreal> &pattern, QgsUnitTypes::RenderUnit u );
|
||||
|
||||
void addFeature( QgsSymbolRenderContext &ctx, const QgsCoordinateTransform *ct, const QString &layer, const QgsSymbolLayer *symbolLayer, const QgsSymbol *symbol );
|
||||
void addFeature( QgsSymbolRenderContext &ctx, const QgsCoordinateTransform& ct, const QString &layer, const QgsSymbolLayer *symbolLayer, const QgsSymbol *symbol );
|
||||
|
||||
//returns dxf palette index from symbol layer color
|
||||
static QColor colorFromSymbolLayer( const QgsSymbolLayer *symbolLayer, QgsSymbolRenderContext &ctx );
|
||||
@ -390,7 +394,7 @@ class CORE_EXPORT QgsDxfExport
|
||||
|
||||
//! DXF layer name for each label feature
|
||||
QMap< QString, QMap<QgsFeatureId, QString> > mDxfLayerNames;
|
||||
long mCrs;
|
||||
QgsCoordinateReferenceSystem mCrs;
|
||||
QgsMapSettings mMapSettings;
|
||||
double mFactor;
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user