Skip to content

Commit

Permalink
Optimise QgsRectangle::asWktPolygon
Browse files Browse the repository at this point in the history
Avoid multiple string allocations
  • Loading branch information
nyalldawson committed Oct 6, 2023
1 parent d9d531e commit 3137b21
Showing 1 changed file with 6 additions and 10 deletions.
16 changes: 6 additions & 10 deletions src/core/geometry/qgsrectangle.cpp
Expand Up @@ -122,16 +122,12 @@ QString QgsRectangle::asWktPolygon() const
return QStringLiteral( "POLYGON EMPTY" );
}

QString rep =
QLatin1String( "POLYGON((" ) +
qgsDoubleToString( mXmin ) + ' ' + qgsDoubleToString( mYmin ) + QLatin1String( ", " ) +
qgsDoubleToString( mXmax ) + ' ' + qgsDoubleToString( mYmin ) + QLatin1String( ", " ) +
qgsDoubleToString( mXmax ) + ' ' + qgsDoubleToString( mYmax ) + QLatin1String( ", " ) +
qgsDoubleToString( mXmin ) + ' ' + qgsDoubleToString( mYmax ) + QLatin1String( ", " ) +
qgsDoubleToString( mXmin ) + ' ' + qgsDoubleToString( mYmin ) +
QStringLiteral( "))" );

return rep;
return QStringLiteral( "POLYGON((%1 %2, %3 %2, %3 %4, %1 %4, %1 %2))" ).arg(
qgsDoubleToString( mXmin ),
qgsDoubleToString( mYmin ),
qgsDoubleToString( mXmax ),
qgsDoubleToString( mYmax )
);
}

QString QgsRectangle::toString( int precision ) const
Expand Down

0 comments on commit 3137b21

Please sign in to comment.