87 changes: 20 additions & 67 deletions src/plugins/globe/qgsosgearthtilesource.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
#include "qgsmaptopixel.h"
#include "qgspallabeling.h"
#include "qgsproject.h"
#include "qgsmaprendererjob.h"

#include <QFile>
#include <QPainter>
Expand All @@ -54,22 +55,20 @@ void QgsOsgEarthTileSource::initialize( const std::string& referenceURI, const P
Q_UNUSED( overrideProfile );

setProfile( osgEarth::Registry::instance()->getGlobalGeodeticProfile() );
QgsMapRenderer* mainRenderer = mQGisIface->mapCanvas()->mapRenderer();
mMapRenderer = new QgsMapRenderer();

long epsgGlobe = 4326;
if ( mainRenderer->destinationCrs().authid().compare( QString( "EPSG:%1" ).arg( epsgGlobe ), Qt::CaseInsensitive ) != 0 )
if ( mQGisIface->mapCanvas()->mapSettings().destinationCrs().authid().compare( QString( "EPSG:%1" ).arg( epsgGlobe ), Qt::CaseInsensitive ) != 0 )
{
QgsCoordinateReferenceSystem srcCRS( mainRenderer->destinationCrs() ); //FIXME: crs from canvas or first layer?
QgsCoordinateReferenceSystem srcCRS( mQGisIface->mapCanvas()->mapSettings().destinationCrs() ); //FIXME: crs from canvas or first layer?
QgsCoordinateReferenceSystem destCRS;
destCRS.createFromOgcWmsCrs( QString( "EPSG:%1" ).arg( epsgGlobe ) );
//QgsProject::instance()->writeEntry("SpatialRefSys","/ProjectionsEnabled",1);
mMapRenderer->setDestinationCrs( destCRS );
mMapRenderer->setProjectionsEnabled( true );

mMapSettings.setDestinationCrs( destCRS );
mMapSettings.setCrsTransformEnabled( true );
mCoordTranform = new QgsCoordinateTransform( srcCRS, destCRS );
}
mMapRenderer->setOutputUnits( mainRenderer->outputUnits() );
mMapRenderer->setMapUnits( QGis::Degrees );
// mMapSettings.setOutputUnits( mQGisIface->mapCanvas()->mapSettings().outputUnits() );
mMapSettings.setMapUnits( QGis::Degrees );

//mMapRenderer->setLabelingEngine( new QgsPalLabeling() );
}
Expand Down Expand Up @@ -97,29 +96,21 @@ osg::Image* QgsOsgEarthTileSource::createImage( const TileKey& key, ProgressCall
return 0;
}

QImage* qImage = createQImage( target_width, target_height );
if ( !qImage )
{
return 0;
}

QgsMapRenderer* mainRenderer = mQGisIface->mapCanvas()->mapRenderer();
mMapRenderer->setLayerSet( mainRenderer->layerSet() );

mMapRenderer->setOutputSize( QSize( qImage->width(), qImage->height() ), qImage->logicalDpiX() );
mMapSettings.setOutputSize( QSize( tileSize, tileSize ) );
mMapSettings.setExtent( QgsRectangle( xmin, ymin, xmax, ymax ) );
mMapSettings.setLayers( mQGisIface->mapCanvas()->mapSettings().layers() );

QgsRectangle mapExtent( xmin, ymin, xmax, ymax );
mMapRenderer->setExtent( mapExtent );
QgsMapRendererSequentialJob job( mMapSettings );
job.start();
job.waitForFinished();

QPainter thePainter( qImage );
//thePainter.setRenderHint(QPainter::Antialiasing); //make it look nicer
mMapRenderer->render( &thePainter );
QImage qImage( job.renderedImage() );

unsigned char* data = qImage->bits();
unsigned char *data = qImage.bits();

image = new osg::Image;
//The pixel format is always RGBA to support transparency
image->setImage( qImage->width(), qImage->height(), 1,
image->setImage( qImage.width(), qImage.height(), 1,
4,
GL_BGRA, GL_UNSIGNED_BYTE, //Why not GL_RGBA - QGIS bug?
data,
Expand All @@ -135,52 +126,14 @@ osg::Image* QgsOsgEarthTileSource::createImage( const TileKey& key, ProgressCall
return image.release();
}

QImage* QgsOsgEarthTileSource::createQImage( int width, int height ) const
{
if ( width < 0 || height < 0 )
{
return 0;
}

QImage* qImage = 0;

//is format jpeg?
bool jpeg = false;
//transparent parameter
bool transparent = true;

//use alpha channel only if necessary because it slows down performance
if ( transparent && !jpeg )
{
qImage = new QImage( width, height, QImage::Format_ARGB32_Premultiplied );
qImage->fill( 0 );
}
else
{
qImage = new QImage( width, height, QImage::Format_RGB32 );
qImage->fill( qRgb( 255, 255, 255 ) );
}

if ( !qImage )
{
return 0;
}

//apply DPI parameter if present.
#if 0
int dpm = dpi / 0.0254;
qImage->setDotsPerMeterX( dpm );
qImage->setDotsPerMeterY( dpm );
#endif
return qImage;
}

bool QgsOsgEarthTileSource::intersects( const TileKey* key )
{
//Get the native extents of the tile
double xmin, ymin, xmax, ymax;
key->getExtent().getBounds( xmin, ymin, xmax, ymax );
QgsRectangle extent = mQGisIface->mapCanvas()->fullExtent();
if ( mCoordTranform ) extent = mCoordTranform->transformBoundingBox( extent );
if ( mCoordTranform )
extent = mCoordTranform->transformBoundingBox( extent );

return !( xmin >= extent.xMaximum() || xmax <= extent.xMinimum() || ymin >= extent.yMaximum() || ymax <= extent.yMinimum() );
}
5 changes: 1 addition & 4 deletions src/plugins/globe/qgsosgearthtilesource.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,15 +60,12 @@ namespace osgEarth
}

private:

QImage* createQImage( int width, int height ) const;
bool intersects( const TileKey* key );

//! Pointer to the QGIS interface object
QgisInterface *mQGisIface;
QgsCoordinateTransform *mCoordTranform;
QgsMapRenderer* mMapRenderer;

QgsMapSettings mMapSettings;
};
}
} // namespace osgEarth::Drivers
Expand Down
2 changes: 1 addition & 1 deletion tests/src/core/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ ADD_QGIS_TEST(rectangletest testqgsrectangle.cpp)
ADD_QGIS_TEST(composerscalebartest testqgscomposerscalebar.cpp )
ADD_QGIS_TEST(ogcutilstest testqgsogcutils.cpp)
ADD_QGIS_TEST(vectorlayercachetest testqgsvectorlayercache.cpp )
ADD_QGIS_TEST(maprendererjobtest testmaprendererjob.cpp )
# ADD_QGIS_TEST(maprendererjobtest testmaprendererjob.cpp )
ADD_QGIS_TEST(spatialindextest testqgsspatialindex.cpp)
ADD_QGIS_TEST(gradienttest testqgsgradients.cpp )
ADD_QGIS_TEST(shapebursttest testqgsshapeburst.cpp )
18 changes: 6 additions & 12 deletions tests/src/core/regression992.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,13 @@
#include <QTime>
#include <QDesktopServices>


//qgis includes...
#include <qgsrasterlayer.h>
#include <qgsrasterbandstats.h>
#include <qgsmaplayerregistry.h>
#include <qgsapplication.h>
#include <qgsmaprenderer.h>
#include <qgsproviderregistry.h>
#include <qgsmapsettings.h>

//qgis unit test includes
#include <qgsrenderchecker.h>
Expand All @@ -55,15 +54,13 @@ class Regression992: public QObject
bool render( QString theFileName );
QString mTestDataDir;
QgsRasterLayer * mpRasterLayer;
QgsMapRenderer * mpMapRenderer;
QgsMapSettings mMapSettings;
QString mReport;
};

//runs before all tests
void Regression992::initTestCase()
{
mpMapRenderer = 0;

// init QGIS's paths - true means that all path will be inited from prefix
QgsApplication::init();
QgsApplication::showSettings();
Expand Down Expand Up @@ -92,10 +89,7 @@ void Regression992::initTestCase()
myList << mpRasterLayer;
QgsMapLayerRegistry::instance()->addMapLayers( myList );
// add the test layer to the maprender
mpMapRenderer = new QgsMapRenderer();
QStringList myLayers;
myLayers << mpRasterLayer->id();
mpMapRenderer->setLayerSet( myLayers );
mMapSettings.setLayers( QStringList() << mpRasterLayer->id() );
mReport += "<h1>Regression 992 Test</h1>\n";
mReport += "<p>See <a href=\"http://hub.qgis.org/issues/992\">"
"redmine ticket 992</a> for more details.</p>";
Expand All @@ -114,15 +108,15 @@ void Regression992::cleanupTestCase()
}

delete mpRasterLayer;
delete mpMapRenderer;
}

void Regression992::regression992()
{
mpMapRenderer->setExtent( mpRasterLayer->extent() );
QgsMapSettings settings;
settings.setExtent( mpRasterLayer->extent() );
QgsRenderChecker myChecker;
myChecker.setMapSettings( settings );
myChecker.setControlName( "expected_rgbwcmyk01_YeGeo.jp2" );
myChecker.setMapRenderer( mpMapRenderer );
// allow up to 300 mismatched pixels
bool myResultFlag = myChecker.runTest( "regression992", 400 );
mReport += "\n\n\n" + myChecker.report();
Expand Down
4 changes: 2 additions & 2 deletions tests/src/core/testqgscomposermap.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ void TestQgsComposerMap::grid()
//mComposerMap->setShowGridAnnotation( true );
mComposerMap->setGridPenWidth( 0.5 );
mComposerMap->setGridPenColor( QColor( 0, 255, 0 ) );
/*
#if 0
mComposerMap->setGridAnnotationPrecision( 0 );
mComposerMap->setGridAnnotationPosition( QgsComposerMap::Disabled, QgsComposerMap::Left );
mComposerMap->setGridAnnotationPosition( QgsComposerMap::OutsideMapFrame, QgsComposerMap::Right );
Expand All @@ -130,7 +130,7 @@ void TestQgsComposerMap::grid()
mComposerMap->setGridAnnotationDirection( QgsComposerMap::Horizontal, QgsComposerMap::Right );
mComposerMap->setGridAnnotationDirection( QgsComposerMap::Horizontal, QgsComposerMap::Bottom );
mComposerMap->setAnnotationFontColor( QColor( 255, 0, 0, 150 ) );
*/
#endif
mComposerMap->setGridBlendMode( QPainter::CompositionMode_Overlay );
qWarning() << "grid annotation font: " << mComposerMap->gridAnnotationFont().toString() << " exactMatch:" << mComposerMap->gridAnnotationFont().exactMatch();
QgsCompositionChecker checker( "composermap_grid", mComposition );
Expand Down
3 changes: 2 additions & 1 deletion tests/src/core/testqgscomposerpaper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ class TestQgsComposerPaper: public QObject
QgsMarkerLineSymbolLayerV2* mMarkerLine;
QgsFillSymbolV2* mFillSymbol;
QgsFillSymbolV2* mMarkerLineSymbol;
QgsMapSettings mMapSettings;
// QgsSingleSymbolRendererV2* mSymbolRenderer;

};
Expand All @@ -59,7 +60,7 @@ void TestQgsComposerPaper::initTestCase()
QgsApplication::initQgis();

//create empty composition
mComposition = new QgsComposition( 0 );
mComposition = new QgsComposition( mMapSettings );
mComposition->setPaperSize( 297, 210 ); //A4 landscape

//setup simple fill
Expand Down
8 changes: 4 additions & 4 deletions tests/src/core/testqgscomposerrotation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -78,11 +78,11 @@ void TestQgsComposerRotation::initTestCase()

QgsMapLayerRegistry::instance()->addMapLayers( QList<QgsMapLayer*>() << mRasterLayer );

mMapRenderer = new QgsMapRenderer();
mMapRenderer->setLayerSet( QStringList() << mRasterLayer->id() );
mMapRenderer->setProjectionsEnabled( false );
QgsMapSettings settings;
settings.setLayers( QStringList() << mRasterLayer->id() );
settings.setCrsTransformEnabled( false );

mComposition = new QgsComposition( mMapRenderer );
mComposition = new QgsComposition( settings );
mComposition->setPaperSize( 297, 210 ); //A4 landscape

mComposerRect = new QgsComposerShape( 70, 70, 150, 100, mComposition );
Expand Down
31 changes: 15 additions & 16 deletions tests/src/core/testqgsdiagramexpression.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
//qgis test includes
#include "qgsrenderchecker.h"
#include "qgspallabeling.h"
#include "qgsproject.h"

/** \ingroup UnitTests
* This is a unit test for the vector layer class.
Expand All @@ -51,7 +52,7 @@ class TestQgsDiagramExpression: public QObject
Q_OBJECT;
private:
bool mTestHasError;
QgsMapRenderer * mMapRenderer;
QgsMapSettings * mMapSettings;
QgsVectorLayer * mPointsLayer;
QgsComposition * mComposition;
QString mTestDataDir;
Expand Down Expand Up @@ -94,10 +95,14 @@ class TestQgsDiagramExpression: public QObject
mPieDiagram = new QgsPieDiagram();

// Create map composition to draw on
mMapRenderer = new QgsMapRenderer();
mMapRenderer->setLayerSet( QStringList() << mPointsLayer->id() );
mMapRenderer->setLabelingEngine( new QgsPalLabeling() );
mComposition = new QgsComposition( mMapRenderer );

mMapSettings = new QgsMapSettings();

mMapSettings->setLayers( QStringList() << mPointsLayer->id() );
mMapSettings->setFlag( QgsMapSettings::DrawLabeling );
QgsProject::instance()->writeEntry( "PAL", "/ShowingAllLabels", true );

mComposition = new QgsComposition( *mMapSettings );
mComposition->setPaperSize( 297, 210 ); // A4 landscape
mComposerMap = new QgsComposerMap( mComposition, 20, 20, 200, 100 );
mComposerMap->setFrameEnabled( true );
Expand All @@ -120,12 +125,11 @@ class TestQgsDiagramExpression: public QObject

delete mComposerMap;
delete mComposition;
delete mMapRenderer;
delete mPointsLayer;
// delete mPointsLayer;
}

void init() {};// will be called before each testfunction is executed.
void cleanup() {};// will be called after every testfunction.
void init() {} // will be called before each testfunction is executed.
void cleanup() {} // will be called after every testfunction.

// will be called after the last testfunction was executed.
void testPieDiagramExpression()
Expand All @@ -147,7 +151,6 @@ class TestQgsDiagramExpression: public QObject
ds.size = QSizeF( 15, 15 );
ds.angleOffset = 0;


QgsLinearlyInterpolatedDiagramRenderer *dr = new QgsLinearlyInterpolatedDiagramRenderer();
dr->setLowerValue( 0.0 );
dr->setLowerSize( QSizeF( 0.0, 0.0 ) );
Expand All @@ -157,22 +160,18 @@ class TestQgsDiagramExpression: public QObject
dr->setClassificationAttributeExpression( "ln(Staff + 1)" );
dr->setDiagram( mPieDiagram );
dr->setDiagramSettings( ds );
mPointsLayer->setDiagramRenderer( dr );

QgsDiagramLayerSettings dls = QgsDiagramLayerSettings();
dls.placement = QgsDiagramLayerSettings::OverPoint;
dls.renderer = dr;

dynamic_cast<QgsPalLabeling*>( mMapRenderer->labelingEngine() )->setShowingAllLabels( true );
// dls.setRenderer( dr );

mPointsLayer->setDiagramRenderer( dr );
mPointsLayer->setDiagramLayerSettings( dls );

mComposerMap->setNewExtent( QgsRectangle( -122, -79, -70, 47 ) );
QgsCompositionChecker checker( "piediagram_expression", mComposition );

QVERIFY( checker.testComposition( mReport ) );

mPointsLayer->setDiagramRenderer( 0 );
}
};

Expand Down
11 changes: 4 additions & 7 deletions tests/src/core/testqgsgradients.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ class TestQgsGradients: public QObject
bool mTestHasError;
bool setQml( QString theType );
bool imageCheck( QString theType );
QgsMapRenderer * mpMapRenderer;
QgsMapSettings mMapSettings;
QgsVectorLayer * mpPolysLayer;
QgsGradientFillSymbolLayerV2* mGradientFill;
QgsFillSymbolV2* mFillSymbol;
Expand Down Expand Up @@ -114,10 +114,7 @@ void TestQgsGradients::initTestCase()
// since maprender does not require a qui
// and is more light weight
//
mpMapRenderer = new QgsMapRenderer();
QStringList myLayers;
myLayers << mpPolysLayer->id();
mpMapRenderer->setLayerSet( myLayers );
mMapSettings.setLayers( QStringList() << mpPolysLayer->id() );
mReport += "<h1>Gradient Renderer Tests</h1>\n";

}
Expand Down Expand Up @@ -280,10 +277,10 @@ bool TestQgsGradients::imageCheck( QString theTestType )
{
//use the QgsRenderChecker test utility class to
//ensure the rendered output matches our control image
mpMapRenderer->setExtent( mpPolysLayer->extent() );
mMapSettings.setExtent( mpPolysLayer->extent() );
QgsRenderChecker myChecker;
myChecker.setControlName( "expected_" + theTestType );
myChecker.setMapRenderer( mpMapRenderer );
myChecker.setMapSettings( mMapSettings );
bool myResultFlag = myChecker.runTest( theTestType );
mReport += myChecker.report();
return myResultFlag;
Expand Down
10 changes: 5 additions & 5 deletions tests/src/core/testqgsmaprenderer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ class TestQgsMapRenderer: public QObject
QgsVectorFileWriter::WriterError mError;
QgsCoordinateReferenceSystem mCRS;
QgsFields mFields;
QgsMapRenderer * mpMapRenderer;
QgsMapSettings mMapSettings;
QgsMapLayer * mpPolysLayer;
QString mReport;
};
Expand Down Expand Up @@ -165,8 +165,7 @@ void TestQgsMapRenderer::initTestCase()
// Register the layer with the registry
QgsMapLayerRegistry::instance()->addMapLayers( QList<QgsMapLayer *>() << mpPolysLayer );
// add the test layer to the maprender
mpMapRenderer = new QgsMapRenderer();
mpMapRenderer->setLayerSet( QStringList( mpPolysLayer->id() ) );
mMapSettings.setLayers( QStringList() << mpPolysLayer->id() );
mReport += "<h1>Map Render Tests</h1>\n";
}

Expand All @@ -185,10 +184,11 @@ void TestQgsMapRenderer::cleanupTestCase()

void TestQgsMapRenderer::performanceTest()
{
mpMapRenderer->setExtent( mpPolysLayer->extent() );
mMapSettings.setExtent( mpPolysLayer->extent() );
QgsRenderChecker myChecker;
myChecker.setControlName( "expected_maprender" );
myChecker.setMapRenderer( mpMapRenderer );
mMapSettings.setFlag( QgsMapSettings::Antialiasing );
myChecker.setMapSettings( mMapSettings );
bool myResultFlag = myChecker.runTest( "maprender" );
mReport += myChecker.report();
QVERIFY( myResultFlag );
Expand Down
34 changes: 12 additions & 22 deletions tests/src/core/testqgsrasterlayer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ class TestQgsRasterLayer: public QObject
QgsRasterLayer * mpRasterLayer;
QgsRasterLayer * mpLandsatRasterLayer;
QgsRasterLayer * mpFloat32RasterLayer;
QgsMapRenderer * mpMapRenderer;
QgsMapSettings mMapSettings;
QString mReport;
};

Expand Down Expand Up @@ -143,10 +143,7 @@ void TestQgsRasterLayer::initTestCase()
QList<QgsMapLayer *>() << mpFloat32RasterLayer );

// add the test layer to the maprender
mpMapRenderer = new QgsMapRenderer();
QStringList myLayers;
myLayers << mpRasterLayer->id();
mpMapRenderer->setLayerSet( myLayers );
mMapSettings.setLayers( QStringList() << mpRasterLayer->id() );
mReport += "<h1>Raster Layer Tests</h1>\n";
mReport += "<p>" + mySettings + "</p>";
}
Expand All @@ -168,7 +165,7 @@ void TestQgsRasterLayer::isValid()
{
QVERIFY( mpRasterLayer->isValid() );
mpRasterLayer->setContrastEnhancement( QgsContrastEnhancement::StretchToMinimumMaximum, QgsRaster::ContrastEnhancementMinMax );
mpMapRenderer->setExtent( mpRasterLayer->extent() );
mMapSettings.setExtent( mpRasterLayer->extent() );
QVERIFY( render( "raster" ) );
}

Expand Down Expand Up @@ -201,7 +198,7 @@ void TestQgsRasterLayer::pseudoColor()
rasterShader->setRasterShaderFunction( colorRampShader );
QgsSingleBandPseudoColorRenderer* r = new QgsSingleBandPseudoColorRenderer( mpRasterLayer->dataProvider(), 1, rasterShader );
mpRasterLayer->setRenderer( r );
mpMapRenderer->setExtent( mpRasterLayer->extent() );
mMapSettings.setExtent( mpRasterLayer->extent() );
QVERIFY( render( "raster_pseudo" ) );
}

Expand Down Expand Up @@ -262,7 +259,7 @@ bool TestQgsRasterLayer::testColorRamp( QString name, QgsVectorColorRampV2* colo
rasterShader->setRasterShaderFunction( colorRampShader );
QgsSingleBandPseudoColorRenderer* r = new QgsSingleBandPseudoColorRenderer( mpRasterLayer->dataProvider(), 1, rasterShader );
mpRasterLayer->setRenderer( r );
mpMapRenderer->setExtent( mpRasterLayer->extent() );
mMapSettings.setExtent( mpRasterLayer->extent() );
return render( name );
}

Expand Down Expand Up @@ -306,20 +303,16 @@ void TestQgsRasterLayer::colorRamp4()
void TestQgsRasterLayer::landsatBasic()
{
mpLandsatRasterLayer->setContrastEnhancement( QgsContrastEnhancement::StretchToMinimumMaximum, QgsRaster::ContrastEnhancementMinMax );
QStringList myLayers;
myLayers << mpLandsatRasterLayer->id();
mpMapRenderer->setLayerSet( myLayers );
mpMapRenderer->setExtent( mpLandsatRasterLayer->extent() );
mMapSettings.setLayers( QStringList() << mpLandsatRasterLayer->id() );
mMapSettings.setExtent( mpLandsatRasterLayer->extent() );
QVERIFY( render( "landsat_basic" ) );
}

void TestQgsRasterLayer::landsatBasic875Qml()
{
//a qml that orders the rgb bands as 8,7,5
QStringList myLayers;
myLayers << mpLandsatRasterLayer->id();
mpMapRenderer->setLayerSet( myLayers );
mpMapRenderer->setExtent( mpLandsatRasterLayer->extent() );
mMapSettings.setLayers( QStringList() << mpLandsatRasterLayer->id() );
mMapSettings.setExtent( mpLandsatRasterLayer->extent() );
QVERIFY( setQml( "875" ) );
QVERIFY( render( "landsat_875" ) );
}
Expand Down Expand Up @@ -432,7 +425,7 @@ bool TestQgsRasterLayer::render( QString theTestType )
mReport += "<h2>" + theTestType + "</h2>\n";
QgsRenderChecker myChecker;
myChecker.setControlName( "expected_" + theTestType );
myChecker.setMapRenderer( mpMapRenderer );
myChecker.setMapSettings( mMapSettings );
bool myResultFlag = myChecker.runTest( theTestType );
mReport += "\n\n\n" + myChecker.report();
return myResultFlag;
Expand Down Expand Up @@ -489,11 +482,8 @@ void TestQgsRasterLayer::transparency()
QVERIFY( rasterRenderer != 0 );
rasterRenderer->setRasterTransparency( rasterTransparency );

QStringList myLayers;
myLayers << mpFloat32RasterLayer->id();
mpMapRenderer->setLayerSet( myLayers );

mpMapRenderer->setExtent( mpFloat32RasterLayer->extent() );
mMapSettings.setLayers( QStringList() << mpFloat32RasterLayer->id() );
mMapSettings.setExtent( mpFloat32RasterLayer->extent() );
QVERIFY( render( "raster_transparency" ) );
}

Expand Down
16 changes: 6 additions & 10 deletions tests/src/core/testqgsrenderers.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ class TestQgsRenderers: public QObject
bool mTestHasError;
bool setQml( QString theType ); //uniquevalue / continuous / single /
bool imageCheck( QString theType ); //as above
QgsMapRenderer * mpMapRenderer;
QgsMapSettings mMapSettings;
QgsMapLayer * mpPointsLayer;
QgsMapLayer * mpLinesLayer;
QgsMapLayer * mpPolysLayer;
Expand Down Expand Up @@ -113,12 +113,8 @@ void TestQgsRenderers::initTestCase()
// since maprender does not require a qui
// and is more light weight
//
mpMapRenderer = new QgsMapRenderer();
QStringList myLayers;
myLayers << mpPointsLayer->id();
myLayers << mpPolysLayer->id();
myLayers << mpLinesLayer->id();
mpMapRenderer->setLayerSet( myLayers );
mMapSettings.setLayers(
QStringList() << mpPointsLayer->id() << mpPolysLayer->id() << mpLinesLayer->id() );
mReport += "<h1>Vector Renderer Tests</h1>\n";
}
void TestQgsRenderers::cleanupTestCase()
Expand Down Expand Up @@ -214,11 +210,11 @@ bool TestQgsRenderers::imageCheck( QString theTestType )
// the same wrong value is reported by ogrinfo). Since QGIS 2.1, the provider
// gives correct extent. Forced to fixed extend however to avoid problems in future.
QgsRectangle extent( -118.8888888888887720, 22.8002070393376783, -83.3333333333331581, 46.8719806763287536 );
mpMapRenderer->setExtent( extent );
mpMapRenderer->rendererContext()->setForceVectorOutput( true );
mMapSettings.setExtent( extent );
mMapSettings.setFlag( QgsMapSettings::ForceVectorOutput );
QgsRenderChecker myChecker;
myChecker.setControlName( "expected_" + theTestType );
myChecker.setMapRenderer( mpMapRenderer );
myChecker.setMapSettings( mMapSettings );
myChecker.setColorTolerance( 15 );
bool myResultFlag = myChecker.runTest( theTestType );
mReport += myChecker.report();
Expand Down
13 changes: 5 additions & 8 deletions tests/src/core/testqgsshapeburst.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@

#include <iostream>
//qgis includes...
#include <qgsmaprenderer.h>
#include <qgsmapsettings.h>
#include <qgsmaplayer.h>
#include <qgsvectorlayer.h>
#include <qgsapplication.h>
Expand Down Expand Up @@ -62,7 +62,7 @@ class TestQgsShapeburst: public QObject
bool mTestHasError;
bool setQml( QString theType );
bool imageCheck( QString theType );
QgsMapRenderer * mpMapRenderer;
QgsMapSettings mMapSettings;
QgsVectorLayer * mpPolysLayer;
QgsShapeburstFillSymbolLayerV2* mShapeburstFill;
QgsFillSymbolV2* mFillSymbol;
Expand Down Expand Up @@ -111,10 +111,7 @@ void TestQgsShapeburst::initTestCase()
// since maprender does not require a qui
// and is more light weight
//
mpMapRenderer = new QgsMapRenderer();
QStringList myLayers;
myLayers << mpPolysLayer->id();
mpMapRenderer->setLayerSet( myLayers );
mMapSettings.setLayers( QStringList() << mpPolysLayer->id() );
mReport += "<h1>Shapeburst Renderer Tests</h1>\n";

}
Expand Down Expand Up @@ -235,10 +232,10 @@ bool TestQgsShapeburst::imageCheck( QString theTestType )
{
//use the QgsRenderChecker test utility class to
//ensure the rendered output matches our control image
mpMapRenderer->setExtent( mpPolysLayer->extent() );
mMapSettings.setExtent( mpPolysLayer->extent() );
QgsRenderChecker myChecker;
myChecker.setControlName( "expected_" + theTestType );
myChecker.setMapRenderer( mpMapRenderer );
myChecker.setMapSettings( mMapSettings );
bool myResultFlag = myChecker.runTest( theTestType );
mReport += myChecker.report();
return myResultFlag;
Expand Down
1 change: 1 addition & 0 deletions tests/src/python/test_qgscomposermap.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,7 @@ def testGrid(self):
QgsComposerMap.Bottom)
self.mComposerMap.setAnnotationFontColor(QColor(255,0,0,150))
self.mComposerMap.setGridBlendMode(QPainter.CompositionMode_Overlay)
self.mComposerMap.setShowGridAnnotation(False)
checker = QgsCompositionChecker('composermap_grid', self.mComposition)
myTestResult, myMessage = checker.testComposition()
self.mComposerMap.setGridEnabled(False)
Expand Down