Skip to content
Snippets Groups Projects
Commit 1674ef93 authored by Christophe Geuzaine's avatar Christophe Geuzaine
Browse files

*** empty log message ***

parent 0cbea8d3
Branches
Tags
No related merge requests found
......@@ -4,8 +4,8 @@
#include "MElement.h"
#include "Numeric.h"
double qmTriangle ( const BDS_Point *p1, const BDS_Point *p2, const BDS_Point *p3, const gmshQualityMeasure4Triangle &cr)
double qmTriangle(const BDS_Point *p1, const BDS_Point *p2, const BDS_Point *p3,
const gmshQualityMeasure4Triangle &cr)
{
return qmTriangle(p1->X, p1->Y, p1->Z, p2->X, p2->Y, p2->Z, p3->X, p3->Y, p3->Z, cr);
}
......@@ -22,9 +22,11 @@ double qmTriangle ( MTriangle*t, const gmshQualityMeasure4Triangle &cr)
return qmTriangle(t->getVertex(0), t->getVertex(1), t->getVertex(2), cr);
}
double qmTriangle ( const MVertex *v1, const MVertex *v2, const MVertex *v3, const gmshQualityMeasure4Triangle &cr)
double qmTriangle(const MVertex *v1, const MVertex *v2, const MVertex *v3,
const gmshQualityMeasure4Triangle &cr)
{
return qmTriangle (v1->x(),v1->y(),v1->z(),v2->x(),v2->y(),v2->z(),v3->x(),v3->y(),v3->z(),cr);
return qmTriangle(v1->x(), v1->y(), v1->z(), v2->x(), v2->y(), v2->z(),
v3->x(), v3->y(), v3->z(), cr);
}
// Triangle abc
......@@ -36,12 +38,10 @@ double qmTriangle ( const double &xa, const double &ya, const double &z
const gmshQualityMeasure4Triangle &cr)
{
double quality;
switch(cr)
{
switch(cr){
case QMTRI_RHO:
{
// quality = rho / R = 2 * inscribed radius / circumradius
double a [3] = {xc-xb,yc-yb,zc-zb};
double b [3] = {xa-xc,ya-yc,za-zc};
double c [3] = {xb-xa,yb-ya,zb-za};
......@@ -62,28 +62,30 @@ double qmTriangle ( const double &xa, const double &ya, const double &z
throw;
}
return quality;
}
double qmTet(MTetrahedron *t, const gmshQualityMeasure4Tet &cr, double *volume)
{
return qmTet (t->getVertex(0),t->getVertex(1),t->getVertex(2),t->getVertex(3),cr,volume);
return qmTet(t->getVertex(0), t->getVertex(1), t->getVertex(2), t->getVertex(3),
cr, volume);
}
double qmTet ( const MVertex *v1, const MVertex *v2, const MVertex *v3, const MVertex *v4, const gmshQualityMeasure4Tet &cr, double *volume)
double qmTet(const MVertex *v1, const MVertex *v2, const MVertex *v3,
const MVertex *v4, const gmshQualityMeasure4Tet &cr, double *volume)
{
return qmTet (v1->x(),v1->y(),v1->z(),v2->x(),v2->y(),v2->z(),v3->x(),v3->y(),v3->z(),v4->x(),v4->y(),v4->z(),cr,volume);
return qmTet(v1->x(), v1->y(), v1->z(), v2->x(), v2->y(), v2->z(),
v3->x(), v3->y(), v3->z(), v4->x(), v4->y(), v4->z(), cr, volume);
}
double qmTet(const double &x1, const double &y1, const double &z1,
const double &x2, const double &y2, const double &z2,
const double &x3, const double &y3, const double &z3,
const double &x4, const double &y4, const double &z4,
const gmshQualityMeasure4Tet &cr, double *volume ){
double quality;
switch(cr)
const gmshQualityMeasure4Tet &cr, double *volume)
{
double quality;
switch(cr){
case QMTET_ONE:
return 1.0;
case QMTET_3:
......
......@@ -11,15 +11,19 @@ enum gmshQualityMeasure4Tet {QMTET_1,QMTET_2,QMTET_3,QMTET_ONE};
double qmTriangle(MTriangle *f, const gmshQualityMeasure4Triangle &cr);
double qmTriangle(BDS_Face *f, const gmshQualityMeasure4Triangle &cr);
double qmTriangle ( const BDS_Point *p1, const BDS_Point *p2, const BDS_Point *p3, const gmshQualityMeasure4Triangle &cr);
double qmTriangle ( const MVertex *v1, const MVertex *v2, const MVertex *v3, const gmshQualityMeasure4Triangle &cr);
double qmTriangle ( const double *d1, const double *d2, const double *d3, const gmshQualityMeasure4Triangle &cr);
double qmTriangle(const BDS_Point *p1, const BDS_Point *p2, const BDS_Point *p3,
const gmshQualityMeasure4Triangle &cr);
double qmTriangle(const MVertex *v1, const MVertex *v2, const MVertex *v3,
const gmshQualityMeasure4Triangle &cr);
double qmTriangle(const double *d1, const double *d2, const double *d3,
const gmshQualityMeasure4Triangle &cr);
double qmTriangle(const double &x1, const double &y1, const double &z1,
const double &x2, const double &y2, const double &z2,
const double &x3, const double &y3, const double &z3,
const gmshQualityMeasure4Triangle &cr);
double qmTet(MTetrahedron *t, const gmshQualityMeasure4Tet &cr, double *volume = 0);
double qmTet ( const MVertex *v1, const MVertex *v2, const MVertex *v3, const MVertex *v4, const gmshQualityMeasure4Tet &cr, double *volume = 0);
double qmTet(const MVertex *v1, const MVertex *v2, const MVertex *v3,
const MVertex *v4, const gmshQualityMeasure4Tet &cr, double *volume = 0);
double qmTet(const double &x1, const double &y1, const double &z1,
const double &x2, const double &y2, const double &z2,
const double &x3, const double &y3, const double &z3,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment