From 1c1e6f39df64edc9f35ba15d212f46a1b6a2f835 Mon Sep 17 00:00:00 2001 From: Amaury Johnen <amaury.johnen@uclouvain.be> Date: Mon, 19 Jun 2017 11:43:51 +0200 Subject: [PATCH] fix bugs: sampling of IGE + Quality range in option window --- Common/Options.cpp | 2 +- Geo/GModelVertexArrays.cpp | 8 +++++--- Mesh/qualityMeasuresJacobian.cpp | 4 ++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Common/Options.cpp b/Common/Options.cpp index e5fe4fe33a..fde99c8175 100644 --- a/Common/Options.cpp +++ b/Common/Options.cpp @@ -5158,7 +5158,7 @@ double opt_mesh_quality_type(OPT_ARGS_NUM) if(CTX::instance()->mesh.qualityType != val) CTX::instance()->mesh.changed |= (ENT_LINE | ENT_SURFACE | ENT_VOLUME); CTX::instance()->mesh.qualityType = (int)val; - if(CTX::instance()->mesh.qualityType < 0 || CTX::instance()->mesh.qualityType > 3) + if(CTX::instance()->mesh.qualityType < 0 || CTX::instance()->mesh.qualityType > 4) CTX::instance()->mesh.qualityType = 0; } #if defined(HAVE_FLTK) diff --git a/Geo/GModelVertexArrays.cpp b/Geo/GModelVertexArrays.cpp index 21bde1de96..7b1445e4c2 100644 --- a/Geo/GModelVertexArrays.cpp +++ b/Geo/GModelVertexArrays.cpp @@ -103,12 +103,14 @@ bool isElementVisible(MElement *ele) if(!ele->getVisibility()) return false; if(CTX::instance()->mesh.qualitySup) { double q; - if(CTX::instance()->mesh.qualityType == 3) + if(CTX::instance()->mesh.qualityType == 4) q = ele->distoShapeMeasure(); - else if(CTX::instance()->mesh.qualityType == 2) + else if(CTX::instance()->mesh.qualityType == 3) q = ele->rhoShapeMeasure(); - else if(CTX::instance()->mesh.qualityType == 1) + else if(CTX::instance()->mesh.qualityType == 2) q = ele->gammaShapeMeasure(); + else if(CTX::instance()->mesh.qualityType == 1) + q = ele->minSIGEShapeMeasure(); else q = ele->minSICNShapeMeasure(); if(q < CTX::instance()->mesh.qualityInf || diff --git a/Mesh/qualityMeasuresJacobian.cpp b/Mesh/qualityMeasuresJacobian.cpp index 8f85c43c71..97eb1da16e 100644 --- a/Mesh/qualityMeasuresJacobian.cpp +++ b/Mesh/qualityMeasuresJacobian.cpp @@ -435,10 +435,10 @@ void sampleIGEMeasure(MElement *el, int deg, double &min, double &max) const JacobianBasis *jacBasis = BasisFactory::getJacobianBasis(jacDetSpace); fullVector<double> coeffDeterminant(jacBasis->getNumJacNodes()); - jacBasis->getSignedIdealJacobian(nodesXYZ, coeffDeterminant); + jacBasis->getSignedJacobian(nodesXYZ, coeffDeterminant); fullMatrix<double> coeffMatLag(gradBasis->getNumSamplingPoints(), 9); - gradBasis->getAllIdealGradientsFromNodes(nodesXYZ, coeffMatLag); + gradBasis->getAllGradientsFromNodes(nodesXYZ, coeffMatLag); fullMatrix<double> v; computeCoeffLengthVectors_(coeffMatLag, v, type); -- GitLab