@@ -1724,7 +1724,6 @@ QgsSVGFillSymbolLayer::QgsSVGFillSymbolLayer( const QString &svgFilePath, double
1724
1724
mSvgStrokeColor = QColor ( 35 , 35 , 35 );
1725
1725
mSvgStrokeWidth = 0.2 ;
1726
1726
setDefaultSvgParams ();
1727
- mSvgPattern = nullptr ;
1728
1727
}
1729
1728
1730
1729
QgsSVGFillSymbolLayer::QgsSVGFillSymbolLayer ( const QByteArray &svgData, double width, double angle )
@@ -1742,12 +1741,6 @@ QgsSVGFillSymbolLayer::QgsSVGFillSymbolLayer( const QByteArray &svgData, double
1742
1741
mSvgStrokeWidth = 0.2 ;
1743
1742
setSubSymbol ( new QgsLineSymbol () );
1744
1743
setDefaultSvgParams ();
1745
- mSvgPattern = nullptr ;
1746
- }
1747
-
1748
- QgsSVGFillSymbolLayer::~QgsSVGFillSymbolLayer ()
1749
- {
1750
- delete mSvgPattern ;
1751
1744
}
1752
1745
1753
1746
void QgsSVGFillSymbolLayer::setOutputUnit ( QgsUnitTypes::RenderUnit unit )
@@ -1926,14 +1919,11 @@ void QgsSVGFillSymbolLayer::applyPattern( QBrush &brush, const QString &svgFileP
1926
1919
return ;
1927
1920
}
1928
1921
1929
- delete mSvgPattern ;
1930
- mSvgPattern = nullptr ;
1931
1922
double size = context.renderContext ().convertToPainterUnits ( patternWidth, patternWidthUnit, patternWidthMapUnitScale );
1932
1923
1933
1924
if ( static_cast < int >( size ) < 1.0 || 10000.0 < size )
1934
1925
{
1935
- mSvgPattern = new QImage ();
1936
- brush.setTextureImage ( *mSvgPattern );
1926
+ brush.setTextureImage ( QImage () );
1937
1927
}
1938
1928
else
1939
1929
{
@@ -1950,23 +1940,23 @@ void QgsSVGFillSymbolLayer::applyPattern( QBrush &brush, const QString &svgFileP
1950
1940
{
1951
1941
hwRatio = static_cast < double >( patternPict.height () ) / static_cast < double >( patternPict.width () );
1952
1942
}
1953
- mSvgPattern = new QImage ( static_cast < int >( size ), static_cast < int >( size * hwRatio ), QImage::Format_ARGB32_Premultiplied );
1954
- mSvgPattern -> fill ( 0 ); // transparent background
1943
+ patternImage = QImage ( static_cast < int >( size ), static_cast < int >( size * hwRatio ), QImage::Format_ARGB32_Premultiplied );
1944
+ patternImage. fill ( 0 ); // transparent background
1955
1945
1956
- QPainter p ( mSvgPattern );
1946
+ QPainter p ( &patternImage );
1957
1947
p.drawPicture ( QPointF ( size / 2 , size * hwRatio / 2 ), patternPict );
1958
1948
}
1959
1949
1960
1950
QTransform brushTransform;
1961
1951
if ( !qgsDoubleNear ( context.opacity (), 1.0 ) )
1962
1952
{
1963
- QImage transparentImage = fitsInCache ? patternImage.copy () : mSvgPattern -> copy ();
1953
+ QImage transparentImage = patternImage.copy ();
1964
1954
QgsSymbolLayerUtils::multiplyImageOpacity ( &transparentImage, context.opacity () );
1965
1955
brush.setTextureImage ( transparentImage );
1966
1956
}
1967
1957
else
1968
1958
{
1969
- brush.setTextureImage ( fitsInCache ? patternImage : * mSvgPattern );
1959
+ brush.setTextureImage ( patternImage );
1970
1960
}
1971
1961
brush.setTransform ( brushTransform );
1972
1962
}
@@ -3631,7 +3621,7 @@ QgsSymbolLayer *QgsRasterFillSymbolLayer::create( const QgsStringMap &properties
3631
3621
3632
3622
symbolLayer->restoreOldDataDefinedProperties ( properties );
3633
3623
3634
- return symbolLaye .release ()r ;
3624
+ return symbolLayer .release ();
3635
3625
}
3636
3626
3637
3627
void QgsRasterFillSymbolLayer::resolvePaths ( QgsStringMap &properties, const QgsPathResolver &pathResolver, bool saving )
0 commit comments