mirror of
https://github.com/qgis/QGIS.git
synced 2025-10-07 00:15:48 -04:00
deduplicate duplicate code
This commit is contained in:
parent
e1d43b01a8
commit
cc3c2ec022
@ -139,13 +139,8 @@ namespace QgsWms
|
||||
}
|
||||
else
|
||||
{
|
||||
context.setScaleFactor( mContext.dotsPerMm() );
|
||||
const double mmPerMapUnit = 1 / QgsServerProjectUtils::wmsDefaultMapUnitsPerMm( *mProject );
|
||||
context.setMapToPixel( QgsMapToPixel( 1 / ( mmPerMapUnit * context.scaleFactor() ) ) );
|
||||
QgsDistanceArea distanceArea;
|
||||
distanceArea.setSourceCrs( QgsCoordinateReferenceSystem( mWmsParameters.crs() ), mProject->transformContext() );
|
||||
distanceArea.setEllipsoid( geoNone() );
|
||||
context.setDistanceArea( distanceArea );
|
||||
//use default scale settings
|
||||
configureDefaultRenderContext( context );
|
||||
}
|
||||
|
||||
// create image according to context
|
||||
@ -211,13 +206,7 @@ namespace QgsWms
|
||||
|
||||
// create context
|
||||
QgsRenderContext context = QgsRenderContext::fromQPainter( painter.get() );
|
||||
context.setScaleFactor( mContext.dotsPerMm() );
|
||||
const double mmPerMapUnit = 1 / QgsServerProjectUtils::wmsDefaultMapUnitsPerMm( *mProject );
|
||||
context.setMapToPixel( QgsMapToPixel( 1 / ( mmPerMapUnit * context.scaleFactor() ) ) );
|
||||
QgsDistanceArea distanceArea = QgsDistanceArea();
|
||||
distanceArea.setSourceCrs( QgsCoordinateReferenceSystem( mWmsParameters.crs() ), mProject->transformContext() );
|
||||
distanceArea.setEllipsoid( geoNone() );
|
||||
context.setDistanceArea( distanceArea );
|
||||
configureDefaultRenderContext( context );
|
||||
ctx.context = &context;
|
||||
|
||||
nodeModel.drawSymbol( settings, &ctx, size.height() / dpmm );
|
||||
@ -1387,6 +1376,17 @@ namespace QgsWms
|
||||
}
|
||||
}
|
||||
|
||||
void QgsRenderer::configureDefaultRenderContext( QgsRenderContext &context )
|
||||
{
|
||||
context.setScaleFactor( mContext.dotsPerMm() );
|
||||
const double mmPerMapUnit = 1 / QgsServerProjectUtils::wmsDefaultMapUnitsPerMm( *mProject );
|
||||
context.setMapToPixel( QgsMapToPixel( 1 / ( mmPerMapUnit * context.scaleFactor() ) ) );
|
||||
QgsDistanceArea distanceArea = QgsDistanceArea();
|
||||
distanceArea.setSourceCrs( QgsCoordinateReferenceSystem( mWmsParameters.crs() ), mProject->transformContext() );
|
||||
distanceArea.setEllipsoid( geoNone() );
|
||||
context.setDistanceArea( distanceArea );
|
||||
}
|
||||
|
||||
QDomDocument QgsRenderer::featureInfoDocument( QList<QgsMapLayer *> &layers, const QgsMapSettings &mapSettings,
|
||||
const QImage *outputImage, const QString &version ) const
|
||||
{
|
||||
|
@ -195,6 +195,12 @@ namespace QgsWms
|
||||
*/
|
||||
void configureMapSettings( const QPaintDevice *paintDevice, QgsMapSettings &mapSettings, bool mandatoryCrsParam = true );
|
||||
|
||||
/**
|
||||
* Configures QgsRenderContext according to the WMS parameters and default settings. Used, for example, when no mapSettings are available.
|
||||
* \param context render context keeping info about the scale
|
||||
*/
|
||||
void configureDefaultRenderContext( QgsRenderContext &context );
|
||||
|
||||
QDomDocument featureInfoDocument( QList<QgsMapLayer *> &layers, const QgsMapSettings &mapSettings,
|
||||
const QImage *outputImage, const QString &version ) const;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user