diff --git a/Geo/Geo.cpp b/Geo/Geo.cpp index fcc3f4432725f10c063f1247446df1c3dee3bc3a..64e00c93d5592b60f6e98673f826c411c8578e6f 100644 --- a/Geo/Geo.cpp +++ b/Geo/Geo.cpp @@ -1,4 +1,4 @@ -// $Id: Geo.cpp,v 1.98 2007-09-26 20:51:58 geuzaine Exp $ +// $Id: Geo.cpp,v 1.99 2008-01-16 21:51:47 geuzaine Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -504,10 +504,9 @@ Curve *Create_Curve(int Num, int Typ, int Order, List_T *Liste, pC->Circle.n[1] = 0.0; pC->Circle.n[2] = 1.0; pC->geometry = 0; - for(int i = 0; i < 4; i++) { - pC->ipar[i] = 0; - pC->dpar[i] = 0.0; - } + pC->nbPointsTransfinite = 0; + pC->typeTransfinite = 0; + pC->coeffTransfinite = 0.; if(Typ == MSH_SEGM_SPLN) { for(int i = 0; i < 4; i++) @@ -614,8 +613,6 @@ Surface *Create_Surface(int Num, int Typ) IMAX(GModel::current()->getGEOInternals()->MaxSurfaceNum, Num); pS->Typ = Typ; pS->Method = LIBRE; - for(int i = 0; i < 5; i++) - pS->ipar[i] = 0; pS->Recombine = 0; pS->Recombine_Dir = -1; pS->RecombineAngle = 75; @@ -653,8 +650,6 @@ Volume *Create_Volume(int Num, int Typ) IMAX(GModel::current()->getGEOInternals()->MaxVolumeNum, Num); pV->Typ = Typ; pV->Method = LIBRE; - for(int i = 0; i < 8; i++) - pV->ipar[i] = 0; pV->TrsfPoints = List_Create(6, 6, sizeof(Vertex *)); pV->Surfaces = List_Create(1, 2, sizeof(Surface *)); pV->SurfacesOrientations = List_Create(1, 2, sizeof(int)); @@ -885,10 +880,9 @@ void CopyCurve(Curve *c, Curve *cc) // copied, the meshing algorithm will take care of it // (e.g. ExtrudeMesh()). //cc->Method = c->Method; - for(i = 0; i < 4; i++) - cc->ipar[i] = c->ipar[i]; - for(i = 0; i < 4; i++) - cc->dpar[i] = c->dpar[i]; + cc->nbPointsTransfinite = c->nbPointsTransfinite; + cc->typeTransfinite = c->typeTransfinite; + cc->coeffTransfinite = c->coeffTransfinite; cc->l = c->l; for(i = 0; i < 4; i++) for(j = 0; j < 4; j++) @@ -937,8 +931,6 @@ void CopySurface(Surface *s, Surface *ss) //ss->Method = s->Method; //ss->Recombine = s->Recombine; //ss->RecombineAngle = s->RecombineAngle; - for(i = 0; i < 4; i++) - ss->ipar[i] = s->ipar[i]; ss->a = s->a; ss->b = s->b; ss->c = s->c; diff --git a/Geo/Geo.h b/Geo/Geo.h index 4a4cae8570b2ada36fd1fbd1bc17b7ee6df915ce..dc9e0422d64d832cfe013448d49d16a3064041ef 100644 --- a/Geo/Geo.h +++ b/Geo/Geo.h @@ -125,8 +125,9 @@ typedef struct{ int Typ; char Visible; int Method; - int ipar[4]; - double dpar[4]; + int nbPointsTransfinite; + int typeTransfinite; + double coeffTransfinite; double l; double mat[4][4]; Vertex *beg, *end; @@ -154,7 +155,6 @@ typedef struct{ int Recombine; int Recombine_Dir; // -1 is left, +1 is right, 0 is alternated double RecombineAngle; - int ipar[5]; List_T *Generatrices; List_T *EmbeddedCurves; List_T *EmbeddedPoints; @@ -182,7 +182,6 @@ typedef struct { int Typ; char Visible; int Method; - int ipar[8]; ExtrudeParams *Extrude; List_T *TrsfPoints; List_T *Surfaces; diff --git a/Geo/gmshEdge.cpp b/Geo/gmshEdge.cpp index 630467e2207847f6fc6c6ff598cdb3945c6f8314..5d415869ad705030d651ff90275976e915239782 100644 --- a/Geo/gmshEdge.cpp +++ b/Geo/gmshEdge.cpp @@ -1,4 +1,4 @@ -// $Id: gmshEdge.cpp,v 1.40 2007-10-14 09:51:17 geuzaine Exp $ +// $Id: gmshEdge.cpp,v 1.41 2008-01-16 21:51:47 geuzaine Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -46,9 +46,9 @@ gmshEdge::gmshEdge(GModel *m, int num) void gmshEdge::resetMeshAttributes() { meshAttributes.Method = c->Method; - meshAttributes.nbPointsTransfinite = c->ipar[0]; - meshAttributes.coeffTransfinite = c->dpar[0]; - meshAttributes.typeTransfinite = c->ipar[1]; + meshAttributes.nbPointsTransfinite = c->nbPointsTransfinite; + meshAttributes.typeTransfinite = c->typeTransfinite; + meshAttributes.coeffTransfinite = c->coeffTransfinite; meshAttributes.extrude = c->Extrude; } diff --git a/Mesh/meshGRegionDelaunayInsertion.cpp b/Mesh/meshGRegionDelaunayInsertion.cpp index f73352931215afc60bce440764febb55f6ce8295..8daab584c43702412ef65960643c9c67690405ea 100644 --- a/Mesh/meshGRegionDelaunayInsertion.cpp +++ b/Mesh/meshGRegionDelaunayInsertion.cpp @@ -1,4 +1,4 @@ -// $Id: meshGRegionDelaunayInsertion.cpp,v 1.27 2008-01-15 19:50:58 remacle Exp $ +// $Id: meshGRegionDelaunayInsertion.cpp,v 1.28 2008-01-16 21:51:49 geuzaine Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -857,11 +857,12 @@ void insertVerticesInRegion (GRegion *gr) myFactory.changeTetRadius(allTets.begin(),0.0); delete v; } - else + else v->onWhat()->mesh_vertices.push_back(v); } - else + else{ myFactory.changeTetRadius(allTets.begin(),0.0); + } } // Normally, a tet mesh contains about 6 times more tets than // vertices diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index 74dd624e3747d8096a39f66549fa4e6705067167..989bedd965d59a34dc2f8da09ad4b8338e07bd39 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -326,7 +326,7 @@ /* Copy the first part of user declarations. */ #line 1 "Gmsh.y" -// $Id: Gmsh.tab.cpp,v 1.337 2008-01-09 08:17:12 geuzaine Exp $ +// $Id: Gmsh.tab.cpp,v 1.338 2008-01-16 21:51:47 geuzaine Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -6629,9 +6629,9 @@ yyreduce: yymsg(WARNING, "Unknown curve %d", j); else{ c->Method = TRANSFINI; - c->ipar[0] = ((yyvsp[(5) - (6)].d)>2)?(int)(yyvsp[(5) - (6)].d):2; - c->ipar[1] = sign(d); - c->dpar[0] = 1.0; + c->nbPointsTransfinite = ((yyvsp[(5) - (6)].d) > 2) ? (int)(yyvsp[(5) - (6)].d) : 2; + c->typeTransfinite = sign(d); + c->coeffTransfinite = 1.0; } } List_Delete((yyvsp[(3) - (6)].l)); @@ -6650,9 +6650,9 @@ yyreduce: yymsg(WARNING, "Unknown curve %d", j); else{ c->Method = TRANSFINI; - c->ipar[0] = ((yyvsp[(5) - (9)].d)>2)?(int)(yyvsp[(5) - (9)].d):2; - c->ipar[1] = sign(d); /* Progresion : code 1 ou -1 */ - c->dpar[0] = fabs((yyvsp[(8) - (9)].d)); + c->nbPointsTransfinite = ((yyvsp[(5) - (9)].d) > 2) ? (int)(yyvsp[(5) - (9)].d) : 2; + c->typeTransfinite = sign(d); // Progresion : code 1 ou -1 + c->coeffTransfinite = fabs((yyvsp[(8) - (9)].d)); } } List_Delete((yyvsp[(3) - (9)].l)); @@ -6671,9 +6671,9 @@ yyreduce: yymsg(WARNING, "Unknown curve %d", j); else{ c->Method = TRANSFINI; - c->ipar[0] = ((yyvsp[(5) - (9)].d)>2)?(int)(yyvsp[(5) - (9)].d):2; - c->ipar[1] = 2*sign(d); /* Bump : code 2 ou -2 */ - c->dpar[0] = fabs((yyvsp[(8) - (9)].d)); + c->nbPointsTransfinite = ((yyvsp[(5) - (9)].d) > 2) ? (int)(yyvsp[(5) - (9)].d) : 2; + c->typeTransfinite = 2 * sign(d); // Bump : code 2 ou -2 + c->coeffTransfinite = fabs((yyvsp[(8) - (9)].d)); } } List_Delete((yyvsp[(3) - (9)].l)); diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 8d623504c09106532835e9dc011ce243b4eb548f..bfb600a18ad9cfe20cfed8a9e20f7fb5082a4388 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -1,5 +1,5 @@ %{ -// $Id: Gmsh.y,v 1.290 2007-11-08 19:30:32 geuzaine Exp $ +// $Id: Gmsh.y,v 1.291 2008-01-16 21:51:49 geuzaine Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -2572,9 +2572,9 @@ Transfinite : yymsg(WARNING, "Unknown curve %d", j); else{ c->Method = TRANSFINI; - c->ipar[0] = ($5>2)?(int)$5:2; - c->ipar[1] = sign(d); - c->dpar[0] = 1.0; + c->nbPointsTransfinite = ($5 > 2) ? (int)$5 : 2; + c->typeTransfinite = sign(d); + c->coeffTransfinite = 1.0; } } List_Delete($3); @@ -2590,9 +2590,9 @@ Transfinite : yymsg(WARNING, "Unknown curve %d", j); else{ c->Method = TRANSFINI; - c->ipar[0] = ($5>2)?(int)$5:2; - c->ipar[1] = sign(d); /* Progresion : code 1 ou -1 */ - c->dpar[0] = fabs($8); + c->nbPointsTransfinite = ($5 > 2) ? (int)$5 : 2; + c->typeTransfinite = sign(d); // Progresion : code 1 ou -1 + c->coeffTransfinite = fabs($8); } } List_Delete($3); @@ -2608,9 +2608,9 @@ Transfinite : yymsg(WARNING, "Unknown curve %d", j); else{ c->Method = TRANSFINI; - c->ipar[0] = ($5>2)?(int)$5:2; - c->ipar[1] = 2*sign(d); /* Bump : code 2 ou -2 */ - c->dpar[0] = fabs($8); + c->nbPointsTransfinite = ($5 > 2) ? (int)$5 : 2; + c->typeTransfinite = 2 * sign(d); // Bump : code 2 ou -2 + c->coeffTransfinite = fabs($8); } } List_Delete($3); diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index 0a93dabea0b54632abf46a91ff1e00f80b416b7b..f51a4b94b60d9349060d1fbe6f145f4ccb162246 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -847,7 +847,7 @@ int yy_flex_debug = 0; char *yytext; #line 1 "Gmsh.l" #line 2 "Gmsh.l" -// $Id: Gmsh.yy.cpp,v 1.336 2008-01-09 08:17:13 geuzaine Exp $ +// $Id: Gmsh.yy.cpp,v 1.337 2008-01-16 21:51:49 geuzaine Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle //