Skip to content

Commit b590d46

Browse files
committed
Render rotation tool preview image
1 parent ebd300f commit b590d46

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/app/qgsmaptoolrotatepointsymbols.cpp

+7-7
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,11 @@ void QgsMapToolRotatePointSymbols::createPixmapItem( QgsFeature& f )
292292
{
293293
return;
294294
}
295+
QgsRenderContext* renderContext = mCanvas->mapRenderer()->rendererContext();
296+
if ( !renderContext )
297+
{
298+
return;
299+
}
295300

296301
//get the image that is used for that symbol, but without point rotation
297302
QImage pointImage;
@@ -311,25 +316,20 @@ void QgsMapToolRotatePointSymbols::createPixmapItem( QgsFeature& f )
311316
( *it )->setRotationClassificationField( -1 );
312317
}
313318

314-
QgsRenderContext* renderContext = mCanvas->mapRenderer()->rendererContext(); //todo: check if pointers are not 0
315-
if ( !renderContext )
316-
{
317-
delete r;
318-
return;
319-
}
320-
321319
r->renderFeature( *renderContext, f, &pointImage, false );
322320
}
323321
else if ( mActiveLayer && mActiveLayer->rendererV2() ) //symbology-ng
324322
{
325323
rv2 = mActiveLayer->rendererV2()->clone();
326324
rv2->setRotationField( "" );
325+
rv2->startRender( *renderContext, mActiveLayer );
327326

328327
QgsSymbolV2* symbolV2 = rv2->symbolForFeature( f );
329328
if ( symbolV2 )
330329
{
331330
pointImage = symbolV2->bigSymbolPreviewImage();
332331
}
332+
rv2->stopRender( *renderContext );
333333
}
334334

335335
mRotationItem = new QgsPointRotationItem( mCanvas );

0 commit comments

Comments
 (0)