@@ -144,13 +144,8 @@ namespace QgsWms
144
144
}
145
145
else
146
146
{
147
- context.setScaleFactor ( mContext .dotsPerMm () );
148
- const double mmPerMapUnit = 1 / QgsServerProjectUtils::wmsDefaultMapUnitsPerMm ( *mProject );
149
- context.setMapToPixel ( QgsMapToPixel ( 1 / ( mmPerMapUnit * context.scaleFactor () ) ) );
150
- QgsDistanceArea distanceArea;
151
- distanceArea.setSourceCrs ( QgsCoordinateReferenceSystem ( mWmsParameters .crs () ), mProject ->transformContext () );
152
- distanceArea.setEllipsoid ( geoNone () );
153
- context.setDistanceArea ( distanceArea );
147
+ // use default scale settings
148
+ configureDefaultRenderContext ( context );
154
149
}
155
150
156
151
// create image according to context
@@ -216,13 +211,7 @@ namespace QgsWms
216
211
217
212
// create context
218
213
QgsRenderContext context = QgsRenderContext::fromQPainter ( painter.get () );
219
- context.setScaleFactor ( mContext .dotsPerMm () );
220
- const double mmPerMapUnit = 1 / QgsServerProjectUtils::wmsDefaultMapUnitsPerMm ( *mProject );
221
- context.setMapToPixel ( QgsMapToPixel ( 1 / ( mmPerMapUnit * context.scaleFactor () ) ) );
222
- QgsDistanceArea distanceArea = QgsDistanceArea ();
223
- distanceArea.setSourceCrs ( QgsCoordinateReferenceSystem ( mWmsParameters .crs () ), mProject ->transformContext () );
224
- distanceArea.setEllipsoid ( geoNone () );
225
- context.setDistanceArea ( distanceArea );
214
+ configureDefaultRenderContext ( context );
226
215
ctx.context = &context;
227
216
228
217
nodeModel.drawSymbol ( settings, &ctx, size.height () / dpmm );
@@ -1392,6 +1381,17 @@ namespace QgsWms
1392
1381
}
1393
1382
}
1394
1383
1384
+ void QgsRenderer::configureDefaultRenderContext ( QgsRenderContext &context )
1385
+ {
1386
+ context.setScaleFactor ( mContext .dotsPerMm () );
1387
+ const double mmPerMapUnit = 1 / QgsServerProjectUtils::wmsDefaultMapUnitsPerMm ( *mProject );
1388
+ context.setMapToPixel ( QgsMapToPixel ( 1 / ( mmPerMapUnit * context.scaleFactor () ) ) );
1389
+ QgsDistanceArea distanceArea = QgsDistanceArea ();
1390
+ distanceArea.setSourceCrs ( QgsCoordinateReferenceSystem ( mWmsParameters .crs () ), mProject ->transformContext () );
1391
+ distanceArea.setEllipsoid ( geoNone () );
1392
+ context.setDistanceArea ( distanceArea );
1393
+ }
1394
+
1395
1395
QDomDocument QgsRenderer::featureInfoDocument ( QList<QgsMapLayer *> &layers, const QgsMapSettings &mapSettings,
1396
1396
const QImage *outputImage, const QString &version ) const
1397
1397
{
0 commit comments