Skip to content

Commit d7597f9

Browse files
committed
single geometry xyz
1 parent 2f5c7a3 commit d7597f9

File tree

2 files changed

+10
-4
lines changed

2 files changed

+10
-4
lines changed

src/analysis/vector/geometry_checker/qgssinglegeometrycheck.cpp

+6-1
Original file line numberDiff line numberDiff line change
@@ -103,5 +103,10 @@ bool QgsGeometryCheckErrorSingle::handleChanges( const QgsGeometryCheck::Changes
103103

104104
void QgsSingleGeometryCheck::collectErrors( QList<QgsGeometryCheckError *> &errors, QStringList &messages, QAtomicInt *progressCounter, const QMap<QString, QgsFeatureIds> &ids ) const
105105
{
106-
106+
QMap<QString, QgsFeatureIds> featureIds = ids.isEmpty() ? allLayerFeatureIds() : ids;
107+
QgsGeometryCheckerUtils::LayerFeatures layerFeatures( mContext->featurePools, featureIds, mCompatibleGeometryTypes, progressCounter, mContext );
108+
for ( const QgsGeometryCheckerUtils::LayerFeature &layerFeature : layerFeatures )
109+
{
110+
errors.append( processGeometry( layerFeature.geometry() ) );
111+
}
107112
}

src/app/qgsgeometryvalidationservice.cpp

+4-3
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ email : matthias@opengis.ch
2424
QgsGeometryValidationService::QgsGeometryValidationService( QgsProject *project )
2525
{
2626
connect( project, &QgsProject::layersAdded, this, &QgsGeometryValidationService::onLayersAdded );
27-
mIsValidGeometryCheck = new QgsIsValidGeometryCheck();
27+
// TODO: should not provide a nullptr context
28+
mIsValidGeometryCheck = new QgsIsValidGeometryCheck( nullptr );
2829
}
2930

3031
QgsGeometryValidationService::~QgsGeometryValidationService()
@@ -88,6 +89,6 @@ void QgsGeometryValidationService::processFeature( QgsVectorLayer *layer, QgsFea
8889

8990
QgsFeature feature = layer->getFeature( fid );
9091
// TODO: this is a bit hardcore
91-
const auto errors = mIsValidGeometryCheck->processGeometry( QgsGeometryCheckerUtils::LayerFeature( nullptr, feature ) );
92-
emit geometryCheckCompleted( layer, fid, errors );
92+
const auto errors = mIsValidGeometryCheck->processGeometry( feature.geometry() );
93+
// emit geometryCheckCompleted( layer, fid, errors );
9394
}

0 commit comments

Comments
 (0)