From d31b8e45cd226f89a198b4e8b21d6d58d4df7865 Mon Sep 17 00:00:00 2001 From: giadasan Date: Fri, 5 Jul 2024 13:57:11 +0200 Subject: [PATCH 1/2] set validity limits for geotechnical parameters and fix table model --- soilWidget/soilWidget.cpp | 2 +- soilWidget/tabHorizons.cpp | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/soilWidget/soilWidget.cpp b/soilWidget/soilWidget.cpp index 6db0ea06..379c6278 100644 --- a/soilWidget/soilWidget.cpp +++ b/soilWidget/soilWidget.cpp @@ -293,7 +293,7 @@ void Crit3DSoilWidget::setDbSoil(QSqlDatabase dbOpened, QString soilCode) // load default geotechnics parameters (not mandatory) if (! loadGeotechnicsParameters(dbSoil, geotechnicsClassList, errorStr)) { - QMessageBox::warning(nullptr, "Warning", "loadGeotechnicsParameters\n" + errorStr); + QMessageBox::warning(nullptr, "Warning", "Failed to load geotecnical parameters for slope stability: missing reference db"); } // read soil list diff --git a/soilWidget/tabHorizons.cpp b/soilWidget/tabHorizons.cpp index 51e1430a..835c9c20 100644 --- a/soilWidget/tabHorizons.cpp +++ b/soilWidget/tabHorizons.cpp @@ -275,7 +275,7 @@ bool TabHorizons::checkDepths() for (int horizonNum = 0; horizonNumrowCount(); horizonNum++) { //except first row - if ( horizonNum > 0) + if (horizonNum > 0) { if (mySoil->horizon[unsigned(horizonNum)].dbData.upperDepth != mySoil->horizon[horizonNum-1].dbData.lowerDepth) { @@ -366,12 +366,12 @@ bool TabHorizons::checkHorizonData(int horizonNum) tableDb->item(horizonNum,9)->setBackground(Qt::red); } - if (dbData->effectiveCohesion != NODATA && (dbData->effectiveCohesion < 0)) + if (dbData->effectiveCohesion != NODATA && (dbData->effectiveCohesion < 0 || dbData->effectiveCohesion > 110)) { tableDb->item(horizonNum,10)->setBackground(Qt::red); } - if (dbData->frictionAngle != NODATA && (dbData->frictionAngle < 0)) + if (dbData->frictionAngle != NODATA && (dbData->frictionAngle < 0 || dbData->frictionAngle > 50)) { tableDb->item(horizonNum,11)->setBackground(Qt::red); } From 10f3360ad34fce7a95687346178417571babfa21 Mon Sep 17 00:00:00 2001 From: giadasan Date: Fri, 5 Jul 2024 14:09:11 +0200 Subject: [PATCH 2/2] set validity limits for geotechnical parameters and fix table model --- soilWidget/tabHorizons.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/soilWidget/tabHorizons.cpp b/soilWidget/tabHorizons.cpp index 835c9c20..b721b63c 100644 --- a/soilWidget/tabHorizons.cpp +++ b/soilWidget/tabHorizons.cpp @@ -462,14 +462,15 @@ void TabHorizons::checkComputedValues(int horizonNum) tableModel->item(horizonNum,5)->setBackground(Qt::yellow); } - if (horizon->dbData.effectiveCohesion == NODATA) + // for soil mechanics parameters just check if is missing + if (horizon->geotechnics.effectiveCohesion == NODATA) { - tableModel->item(horizonNum,11)->setBackground(Qt::yellow); + tableModel->item(horizonNum,11)->setBackground(Qt::red); } - if (horizon->dbData.frictionAngle == NODATA) + if (horizon->geotechnics.frictionAngle == NODATA) { - tableModel->item(horizonNum,12)->setBackground(Qt::yellow); + tableModel->item(horizonNum,12)->setBackground(Qt::red); } }