Skip to content

Commit

Permalink
Do not check for validity in Delete Duplicate Geometries alg
Browse files Browse the repository at this point in the history
This isn't required, and can get in the way (Eg when the
delete duplicate geometries step is used as part of cleaning
up a dataset prior to fixing geometries)
  • Loading branch information
nyalldawson committed Jul 10, 2024
1 parent 3dd90b7 commit c471bff
Showing 1 changed file with 2 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ QVariantMap QgsDeleteDuplicateGeometriesAlgorithm::processAlgorithm( const QVari
if ( !sink )
throw QgsProcessingException( invalidSinkError( parameters, QStringLiteral( "OUTPUT" ) ) );

QgsFeatureIterator it = mSource->getFeatures( QgsFeatureRequest().setSubsetOfAttributes( QgsAttributeList() ) );
QgsFeatureIterator it = mSource->getFeatures( QgsFeatureRequest().setSubsetOfAttributes( QgsAttributeList() ), Qgis::ProcessingFeatureSourceFlag::SkipGeometryValidityChecks );

double step = mSource->featureCount() > 0 ? 100.0 / mSource->featureCount() : 0;
QHash< QgsFeatureId, QgsGeometry > geometries;
Expand Down Expand Up @@ -170,7 +170,7 @@ QVariantMap QgsDeleteDuplicateGeometriesAlgorithm::processAlgorithm( const QVari
step = outputFeatureIds.empty() ? 1 : 100.0 / outputFeatureIds.size();

const QgsFeatureRequest request = QgsFeatureRequest().setFilterFids( outputFeatureIds ).setFlags( Qgis::FeatureRequestFlag::NoGeometry );
it = mSource->getFeatures( request );
it = mSource->getFeatures( request, Qgis::ProcessingFeatureSourceFlag::SkipGeometryValidityChecks );
current = 0;
while ( it.nextFeature( f ) )
{
Expand Down

0 comments on commit c471bff

Please sign in to comment.