Newer
Older
if(ImbricatedLoop <= 0){
yymsg(GERROR, "Invalid For/EndFor loop");
ImbricatedLoop = 0;
double x0 = LoopControlVariablesTab[ImbricatedLoop-1][0];
double x1 = LoopControlVariablesTab[ImbricatedLoop-1][1];
double step = LoopControlVariablesTab[ImbricatedLoop-1][2];
int do_next = (step > 0.) ? (x0+step <= x1) : (x0+step >= x1);
if(do_next){
LoopControlVariablesTab[ImbricatedLoop-1][0] +=
LoopControlVariablesTab[ImbricatedLoop-1][2];
Symbol TheSymbol;
TheSymbol.Name = LoopControlVariablesNameTab[ImbricatedLoop-1];
Symbol *pSymbol;
if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol)))
yymsg(GERROR, "Unknown loop variable");
else
*(double*)List_Pointer_Fast(pSymbol->val, 0) +=
LoopControlVariablesTab[ImbricatedLoop-1][2];
}
fsetpos(gmsh_yyin, &yyposImbricatedLoopsTab[ImbricatedLoop-1]);
gmsh_yylineno = yylinenoImbricatedLoopsTab[ImbricatedLoop-1];

Christophe Geuzaine
committed
case 157:

Christophe Geuzaine
committed
#line 2211 "Gmsh.y"
if(!FunctionManager::Instance()->createFunction((yyvsp[(2) - (2)].c), gmsh_yyin, gmsh_yyname,
gmsh_yylineno))
yymsg(GERROR, "Redefinition of function %s", (yyvsp[(2) - (2)].c));

Christophe Geuzaine
committed
case 158:

Christophe Geuzaine
committed
#line 2219 "Gmsh.y"
if(!FunctionManager::Instance()->leaveFunction(&gmsh_yyin, gmsh_yyname,
gmsh_yylineno))

Christophe Geuzaine
committed
yymsg(GERROR, "Error while exiting function");

Christophe Geuzaine
committed
case 159:

Christophe Geuzaine
committed
#line 2225 "Gmsh.y"
if(!FunctionManager::Instance()->enterFunction((yyvsp[(2) - (3)].c), &gmsh_yyin, gmsh_yyname,
gmsh_yylineno))
//FIXME: wee leak $2

Christophe Geuzaine
committed
case 160:

Christophe Geuzaine
committed
#line 2232 "Gmsh.y"
{
if(!(yyvsp[(3) - (4)].d)) skip_until("If", "EndIf");
;}
break;

Christophe Geuzaine
committed
case 161:

Christophe Geuzaine
committed
#line 2236 "Gmsh.y"

Christophe Geuzaine
committed
case 162:

Christophe Geuzaine
committed
#line 2245 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (5)].l),
(yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], 0., 0., 0., 0., 0., 0., 0.,
NULL, (yyval.l));
List_Delete((yyvsp[(4) - (5)].l));
;}
break;

Christophe Geuzaine
committed
case 163:

Christophe Geuzaine
committed
#line 2253 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShapes(ROTATE, (yyvsp[(10) - (11)].l),
0., 0., 0., (yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(7) - (11)].d),
NULL, (yyval.l));
List_Delete((yyvsp[(10) - (11)].l));
;}
break;

Christophe Geuzaine
committed
case 164:

Christophe Geuzaine
committed
#line 2261 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (13)].l),
(yyvsp[(3) - (13)].v)[0], (yyvsp[(3) - (13)].v)[1], (yyvsp[(3) - (13)].v)[2], (yyvsp[(5) - (13)].v)[0], (yyvsp[(5) - (13)].v)[1], (yyvsp[(5) - (13)].v)[2], (yyvsp[(7) - (13)].v)[0], (yyvsp[(7) - (13)].v)[1], (yyvsp[(7) - (13)].v)[2], (yyvsp[(9) - (13)].d),
NULL, (yyval.l));
List_Delete((yyvsp[(12) - (13)].l));
;}
break;

Christophe Geuzaine
committed
case 165:

Christophe Geuzaine
committed
#line 2269 "Gmsh.y"

Christophe Geuzaine
committed
case 166:

Christophe Geuzaine
committed
#line 2273 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (7)].l),
(yyvsp[(2) - (7)].v)[0], (yyvsp[(2) - (7)].v)[1], (yyvsp[(2) - (7)].v)[2], 0., 0., 0., 0., 0., 0., 0.,
&extr, (yyval.l));
List_Delete((yyvsp[(4) - (7)].l));
;}
break;

Christophe Geuzaine
committed
case 167:

Christophe Geuzaine
committed
#line 2281 "Gmsh.y"

Christophe Geuzaine
committed
case 168:

Christophe Geuzaine
committed
#line 2285 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShapes(ROTATE, (yyvsp[(10) - (13)].l),
0., 0., 0., (yyvsp[(3) - (13)].v)[0], (yyvsp[(3) - (13)].v)[1], (yyvsp[(3) - (13)].v)[2], (yyvsp[(5) - (13)].v)[0], (yyvsp[(5) - (13)].v)[1], (yyvsp[(5) - (13)].v)[2], (yyvsp[(7) - (13)].d),
&extr, (yyval.l));
List_Delete((yyvsp[(10) - (13)].l));
;}
break;

Christophe Geuzaine
committed
case 169:

Christophe Geuzaine
committed
#line 2293 "Gmsh.y"

Christophe Geuzaine
committed
case 170:

Christophe Geuzaine
committed
#line 2297 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (15)].l),
(yyvsp[(3) - (15)].v)[0], (yyvsp[(3) - (15)].v)[1], (yyvsp[(3) - (15)].v)[2], (yyvsp[(5) - (15)].v)[0], (yyvsp[(5) - (15)].v)[1], (yyvsp[(5) - (15)].v)[2], (yyvsp[(7) - (15)].v)[0], (yyvsp[(7) - (15)].v)[1], (yyvsp[(7) - (15)].v)[2], (yyvsp[(9) - (15)].d),
&extr, (yyval.l));
List_Delete((yyvsp[(12) - (15)].l));
;}
break;

Christophe Geuzaine
committed
case 171:

Christophe Geuzaine
committed
#line 2305 "Gmsh.y"

Christophe Geuzaine
committed
case 172:

Christophe Geuzaine
committed
#line 2309 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShapes(BOUNDARY_LAYER, (yyvsp[(3) - (6)].l), 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
&extr, (yyval.l));
List_Delete((yyvsp[(3) - (6)].l));
;}
break;

Christophe Geuzaine
committed
case 173:

Christophe Geuzaine
committed
#line 2316 "Gmsh.y"

Christophe Geuzaine
committed
case 174:

Christophe Geuzaine
committed
#line 2320 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
extr.mesh.ViewIndex = (int)(yyvsp[(4) - (10)].d);
ExtrudeShapes(BOUNDARY_LAYER, (yyvsp[(7) - (10)].l), 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
&extr, (yyval.l));
Free((yyvsp[(2) - (10)].c));
List_Delete((yyvsp[(7) - (10)].l));
;}
break;

Christophe Geuzaine
committed
case 175:

Christophe Geuzaine
committed
#line 2332 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d),
(yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0.,
NULL, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 176:

Christophe Geuzaine
committed
#line 2339 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d),
(yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0.,
NULL, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 177:

Christophe Geuzaine
committed
#line 2346 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d),
(yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0.,
NULL, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 178:

Christophe Geuzaine
committed
#line 2353 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d),
0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d),
NULL, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 179:

Christophe Geuzaine
committed
#line 2360 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d),
0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d),
NULL, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 180:

Christophe Geuzaine
committed
#line 2367 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d),
0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d),
NULL, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 181:

Christophe Geuzaine
committed
#line 2374 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d),
(yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d),
NULL, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 182:

Christophe Geuzaine
committed
#line 2381 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d),
(yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d),
NULL, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 183:

Christophe Geuzaine
committed
#line 2388 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d),
(yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d),
NULL, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 184:

Christophe Geuzaine
committed
#line 2395 "Gmsh.y"

Christophe Geuzaine
committed
case 185:

Christophe Geuzaine
committed
#line 2399 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d),
(yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0.,
&extr, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 186:

Christophe Geuzaine
committed
#line 2406 "Gmsh.y"

Christophe Geuzaine
committed
case 187:

Christophe Geuzaine
committed
#line 2410 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d),
(yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0.,
&extr, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 188:

Christophe Geuzaine
committed
#line 2417 "Gmsh.y"

Christophe Geuzaine
committed
case 189:

Christophe Geuzaine
committed
#line 2421 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d),
(yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0.,
&extr, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 190:

Christophe Geuzaine
committed
#line 2428 "Gmsh.y"

Christophe Geuzaine
committed
case 191:

Christophe Geuzaine
committed
#line 2432 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d),
0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d),
&extr, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 192:

Christophe Geuzaine
committed
#line 2439 "Gmsh.y"

Christophe Geuzaine
committed
case 193:

Christophe Geuzaine
committed
#line 2443 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d),
0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d),
&extr, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 194:

Christophe Geuzaine
committed
#line 2450 "Gmsh.y"

Christophe Geuzaine
committed
case 195:

Christophe Geuzaine
committed
#line 2454 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d),
0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d),
&extr, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 196:

Christophe Geuzaine
committed
#line 2461 "Gmsh.y"

Christophe Geuzaine
committed
case 197:

Christophe Geuzaine
committed
#line 2465 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d),
(yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d),
&extr, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 198:

Christophe Geuzaine
committed
#line 2472 "Gmsh.y"

Christophe Geuzaine
committed
case 199:

Christophe Geuzaine
committed
#line 2476 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d),
(yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d),
&extr, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 200:

Christophe Geuzaine
committed
#line 2483 "Gmsh.y"
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;

Christophe Geuzaine
committed
case 201:

Christophe Geuzaine
committed
#line 2487 "Gmsh.y"
{
(yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d),
(yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d),
&extr, (yyval.l));
;}
break;

Christophe Geuzaine
committed
case 202:

Christophe Geuzaine
committed
#line 2498 "Gmsh.y"

Christophe Geuzaine
committed
case 203:

Christophe Geuzaine
committed
#line 2501 "Gmsh.y"

Christophe Geuzaine
committed
case 204:

Christophe Geuzaine
committed
#line 2507 "Gmsh.y"
extr.mesh.ExtrudeMesh = true;
extr.mesh.NbLayer = 1;
extr.mesh.NbElmLayer.clear();
extr.mesh.hLayer.clear();

Christophe Geuzaine
committed
case 205:

Christophe Geuzaine
committed
#line 2516 "Gmsh.y"
double d;
extr.mesh.ExtrudeMesh = true;
extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l));
if(List_Nbr((yyvsp[(3) - (7)].l)) == List_Nbr((yyvsp[(5) - (7)].l))){
for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){
List_Read((yyvsp[(3) - (7)].l), i, &d);
yymsg(GERROR, "Wrong layer definition {%d, %d}", List_Nbr((yyvsp[(3) - (7)].l)), List_Nbr((yyvsp[(5) - (7)].l)));
List_Delete((yyvsp[(3) - (7)].l));
List_Delete((yyvsp[(5) - (7)].l));
;}
break;

Christophe Geuzaine
committed
case 206:

Christophe Geuzaine
committed
#line 2536 "Gmsh.y"
yymsg(GERROR, "Explicit region numbers in layers are deprecated");
double d;
extr.mesh.ExtrudeMesh = true;
extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (9)].l));
if(List_Nbr((yyvsp[(3) - (9)].l)) == List_Nbr((yyvsp[(5) - (9)].l)) && List_Nbr((yyvsp[(3) - (9)].l)) == List_Nbr((yyvsp[(7) - (9)].l))){
for(int i = 0; i < List_Nbr((yyvsp[(3) - (9)].l)); i++){
List_Read((yyvsp[(3) - (9)].l), i, &d);
yymsg(GERROR, "Wrong layer definition {%d, %d, %d}", List_Nbr((yyvsp[(3) - (9)].l)),
List_Nbr((yyvsp[(5) - (9)].l)), List_Nbr((yyvsp[(7) - (9)].l)));
List_Delete((yyvsp[(3) - (9)].l));
List_Delete((yyvsp[(5) - (9)].l));
List_Delete((yyvsp[(7) - (9)].l));
;}
break;

Christophe Geuzaine
committed
case 207:

Christophe Geuzaine
committed
#line 2559 "Gmsh.y"

Christophe Geuzaine
committed
case 208:

Christophe Geuzaine
committed
#line 2563 "Gmsh.y"
if(FindSurface(num)){
yymsg(GERROR, "Surface %d already exists", num);
}
else{
Surface *s = Create_Surface(num, MSH_SURF_DISCRETE);

Christophe Geuzaine
committed
case 209:

Christophe Geuzaine
committed
#line 2587 "Gmsh.y"
c->Method = TRANSFINI;
c->nbPointsTransfinite = ((yyvsp[(5) - (6)].d) > 2) ? (int)(yyvsp[(5) - (6)].d) : 2;
c->typeTransfinite = sign(d);
c->coeffTransfinite = 1.0;

Christophe Geuzaine
committed
case 210:

Christophe Geuzaine
committed
#line 2605 "Gmsh.y"
c->Method = TRANSFINI;
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));

Christophe Geuzaine
committed
case 211:

Christophe Geuzaine
committed
#line 2623 "Gmsh.y"
c->Method = TRANSFINI;
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));

Christophe Geuzaine
committed
case 212:

Christophe Geuzaine
committed
#line 2641 "Gmsh.y"
s->Method = TRANSFINI;

Christophe Geuzaine
committed
yymsg(GERROR, "Wrong definition of Transfinite Surface %d: "

Christophe Geuzaine
committed
case 213:

Christophe Geuzaine
committed
#line 2670 "Gmsh.y"
if(k != 3 && k != 4){
yymsg(GERROR, "Wrong definition of Transfinite Surface %d: "
}
else{
List_Reset(s->TrsfPoints);
s->Recombine_Dir = -1;
else
s->Recombine_Dir = 0;
for(int i = 0; i < k; i++){
double d;
if(!v)
yymsg(WARNING, "Unknown point %d", j);
else
List_Add(s->TrsfPoints, &v);
}
}
}
List_Delete((yyvsp[(7) - (9)].l));
Free((yyvsp[(8) - (9)].c));
;}
break;

Christophe Geuzaine
committed
case 214:

Christophe Geuzaine
committed
#line 2705 "Gmsh.y"
yymsg(WARNING, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)");

Christophe Geuzaine
committed
case 215:

Christophe Geuzaine
committed
#line 2710 "Gmsh.y"
v->Method = TRANSFINI;

Christophe Geuzaine
committed
yymsg(GERROR, "Wrong definition of Transfinite Volume %d: "

Christophe Geuzaine
committed
case 216:

Christophe Geuzaine
committed
#line 2737 "Gmsh.y"
s->Recombine = 1;
s->RecombineAngle = (yyvsp[(5) - (6)].d);

Christophe Geuzaine
committed
case 217:

Christophe Geuzaine
committed
#line 2751 "Gmsh.y"
s->Recombine = 1;
}

Christophe Geuzaine
committed
case 218:

Christophe Geuzaine
committed
#line 2764 "Gmsh.y"
{
for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){
double d;
List_Read((yyvsp[(3) - (6)].l), i, &d);
int j = (int)d;
Surface *s = FindSurface(j);
if(s) s->TransfiniteSmoothing = (yyvsp[(5) - (6)].d);
}
List_Delete((yyvsp[(3) - (6)].l));
;}
break;

Christophe Geuzaine
committed
case 219:

Christophe Geuzaine
committed
#line 2781 "Gmsh.y"
if(s)
setSurfaceEmbeddedPoints(s, (yyvsp[(3) - (10)].l));
;}
break;

Christophe Geuzaine
committed
case 220:

Christophe Geuzaine
committed
#line 2787 "Gmsh.y"
if(s)
setSurfaceEmbeddedCurves(s, (yyvsp[(3) - (10)].l));
;}
break;

Christophe Geuzaine
committed
case 221:

Christophe Geuzaine
committed
#line 2793 "Gmsh.y"

Christophe Geuzaine
committed
case 222:

Christophe Geuzaine
committed
#line 2796 "Gmsh.y"

Christophe Geuzaine
committed
case 223:

Christophe Geuzaine
committed
#line 2805 "Gmsh.y"
ReplaceAllDuplicates();

Christophe Geuzaine
committed
case 224:

Christophe Geuzaine
committed
#line 2814 "Gmsh.y"

Christophe Geuzaine
committed
case 225:

Christophe Geuzaine
committed
#line 2815 "Gmsh.y"

Christophe Geuzaine
committed
case 226:

Christophe Geuzaine
committed
#line 2816 "Gmsh.y"

Christophe Geuzaine
committed
case 227:

Christophe Geuzaine
committed
#line 2817 "Gmsh.y"

Christophe Geuzaine
committed
case 228:

Christophe Geuzaine
committed
#line 2818 "Gmsh.y"

Christophe Geuzaine
committed
case 229:

Christophe Geuzaine
committed
#line 2819 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 230:

Christophe Geuzaine
committed
#line 2820 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 231:

Christophe Geuzaine
committed
#line 2821 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 232:

Christophe Geuzaine
committed
#line 2823 "Gmsh.y"
{
if(!(yyvsp[(3) - (3)].d))
yymsg(GERROR, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d));
(yyval.d) = (yyvsp[(1) - (3)].d) / (yyvsp[(3) - (3)].d);
;}
break;

Christophe Geuzaine
committed
case 233:

Christophe Geuzaine
committed
#line 2829 "Gmsh.y"
{ (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 234:

Christophe Geuzaine
committed
#line 2830 "Gmsh.y"
{ (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;}
break;

Christophe Geuzaine
committed
case 235:

Christophe Geuzaine
committed
#line 2831 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 236:

Christophe Geuzaine
committed
#line 2832 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 237:

Christophe Geuzaine
committed
#line 2833 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 238:

Christophe Geuzaine
committed
#line 2834 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 239:

Christophe Geuzaine
committed
#line 2835 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 240:

Christophe Geuzaine
committed
#line 2836 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 241:

Christophe Geuzaine
committed
#line 2837 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 242:

Christophe Geuzaine
committed
#line 2838 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;}
break;

Christophe Geuzaine
committed
case 243:

Christophe Geuzaine
committed
#line 2839 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (5)].d)? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;}
break;

Christophe Geuzaine
committed
case 244:

Christophe Geuzaine
committed
#line 2840 "Gmsh.y"

Christophe Geuzaine
committed
case 245:

Christophe Geuzaine
committed
#line 2841 "Gmsh.y"

Christophe Geuzaine
committed
case 246:

Christophe Geuzaine
committed
#line 2842 "Gmsh.y"

Christophe Geuzaine
committed
case 247:

Christophe Geuzaine
committed
#line 2843 "Gmsh.y"

Christophe Geuzaine
committed
case 248:

Christophe Geuzaine
committed
#line 2844 "Gmsh.y"

Christophe Geuzaine
committed
case 249:

Christophe Geuzaine
committed
#line 2845 "Gmsh.y"

Christophe Geuzaine
committed
case 250:

Christophe Geuzaine
committed
#line 2846 "Gmsh.y"

Christophe Geuzaine
committed
case 251:

Christophe Geuzaine
committed
#line 2847 "Gmsh.y"

Christophe Geuzaine
committed
case 252:

Christophe Geuzaine
committed
#line 2848 "Gmsh.y"

Christophe Geuzaine
committed
case 253:

Christophe Geuzaine
committed
#line 2849 "Gmsh.y"

Christophe Geuzaine
committed
case 254:

Christophe Geuzaine
committed
#line 2850 "Gmsh.y"
{ (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;}

Christophe Geuzaine
committed
case 255:

Christophe Geuzaine
committed
#line 2851 "Gmsh.y"

Christophe Geuzaine
committed
case 256:

Christophe Geuzaine
committed
#line 2852 "Gmsh.y"

Christophe Geuzaine
committed
case 257:

Christophe Geuzaine
committed
#line 2853 "Gmsh.y"

Christophe Geuzaine
committed
case 258:

Christophe Geuzaine
committed
#line 2854 "Gmsh.y"

Christophe Geuzaine
committed
case 259:

Christophe Geuzaine
committed
#line 2855 "Gmsh.y"

Christophe Geuzaine
committed
case 260:

Christophe Geuzaine
committed
#line 2856 "Gmsh.y"

Christophe Geuzaine
committed
case 261:

Christophe Geuzaine
committed
#line 2857 "Gmsh.y"
{ (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;}
break;

Christophe Geuzaine
committed
case 262:

Christophe Geuzaine
committed
#line 2858 "Gmsh.y"
{ (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;}

Christophe Geuzaine
committed
case 263:

Christophe Geuzaine
committed
#line 2859 "Gmsh.y"