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

fix partial circle/ellipse

parent 9d0bfc10
No related branches found
No related tags found
No related merge requests found
...@@ -1408,49 +1408,49 @@ static const yytype_uint16 yyrline[] = ...@@ -1408,49 +1408,49 @@ static const yytype_uint16 yyrline[] =
1494, 1502, 1508, 1513, 1539, 1540, 1544, 1555, 1570, 1580, 1494, 1502, 1508, 1513, 1539, 1540, 1544, 1555, 1570, 1580,
1581, 1586, 1594, 1603, 1611, 1629, 1633, 1639, 1647, 1651, 1581, 1586, 1594, 1603, 1611, 1629, 1633, 1639, 1647, 1651,
1657, 1665, 1669, 1675, 1683, 1687, 1693, 1702, 1705, 1712, 1657, 1665, 1669, 1675, 1683, 1687, 1693, 1702, 1705, 1712,
1715, 1722, 1743, 1757, 1771, 1805, 1842, 1856, 1870, 1890, 1715, 1722, 1743, 1757, 1771, 1806, 1844, 1858, 1872, 1892,
1899, 1913, 1928, 1942, 1961, 1971, 1977, 1983, 1990, 2017, 1901, 1915, 1930, 1944, 1963, 1973, 1979, 1985, 1992, 2019,
2032, 2052, 2073, 2094, 2115, 2137, 2159, 2180, 2203, 2212, 2034, 2054, 2075, 2096, 2117, 2139, 2161, 2182, 2205, 2214,
2233, 2248, 2262, 2277, 2292, 2307, 2316, 2359, 2402, 2445, 2235, 2250, 2264, 2279, 2294, 2309, 2318, 2361, 2404, 2447,
2493, 2510, 2528, 2538, 2548, 2558, 2621, 2632, 2648, 2649, 2495, 2512, 2530, 2540, 2550, 2560, 2623, 2634, 2650, 2651,
2654, 2657, 2661, 2672, 2683, 2694, 2710, 2732, 2758, 2780, 2656, 2659, 2663, 2674, 2685, 2696, 2712, 2734, 2760, 2782,
2803, 2824, 2880, 2904, 2929, 2955, 3068, 3087, 3130, 3151, 2805, 2826, 2882, 2906, 2931, 2957, 3070, 3089, 3132, 3153,
3157, 3172, 3200, 3217, 3226, 3240, 3254, 3260, 3266, 3275, 3159, 3174, 3202, 3219, 3228, 3242, 3256, 3262, 3268, 3277,
3284, 3293, 3307, 3377, 3395, 3412, 3427, 3459, 3471, 3495, 3286, 3295, 3309, 3379, 3397, 3414, 3429, 3461, 3473, 3497,
3499, 3504, 3510, 3515, 3524, 3529, 3535, 3543, 3547, 3551, 3501, 3506, 3512, 3517, 3526, 3531, 3537, 3545, 3549, 3553,
3559, 3622, 3638, 3655, 3672, 3694, 3716, 3751, 3759, 3767, 3561, 3624, 3640, 3657, 3674, 3696, 3718, 3753, 3761, 3769,
3773, 3780, 3787, 3807, 3833, 3845, 3857, 3887, 3918, 3927, 3775, 3782, 3789, 3809, 3835, 3847, 3859, 3889, 3920, 3929,
3926, 3941, 3940, 3955, 3954, 3969, 3968, 3981, 4008, 4027, 3928, 3943, 3942, 3957, 3956, 3971, 3970, 3983, 4010, 4029,
4046, 4072, 4079, 4086, 4093, 4100, 4107, 4114, 4121, 4128, 4048, 4074, 4081, 4088, 4095, 4102, 4109, 4116, 4123, 4130,
4136, 4135, 4149, 4148, 4162, 4161, 4175, 4174, 4188, 4187, 4138, 4137, 4151, 4150, 4164, 4163, 4177, 4176, 4190, 4189,
4201, 4200, 4214, 4213, 4227, 4226, 4240, 4239, 4256, 4259, 4203, 4202, 4216, 4215, 4229, 4228, 4242, 4241, 4258, 4261,
4265, 4277, 4297, 4321, 4325, 4329, 4333, 4337, 4341, 4347, 4267, 4279, 4299, 4323, 4327, 4331, 4335, 4339, 4343, 4349,
4353, 4357, 4361, 4365, 4369, 4388, 4401, 4402, 4403, 4404, 4355, 4359, 4363, 4367, 4371, 4390, 4403, 4404, 4405, 4406,
4405, 4409, 4410, 4411, 4414, 4448, 4474, 4498, 4501, 4517, 4407, 4411, 4412, 4413, 4416, 4450, 4476, 4500, 4503, 4519,
4520, 4537, 4540, 4546, 4549, 4556, 4559, 4566, 4579, 4635, 4522, 4539, 4542, 4548, 4551, 4558, 4561, 4568, 4581, 4637,
4705, 4710, 4777, 4813, 4821, 4864, 4903, 4923, 4955, 4982, 4707, 4712, 4779, 4815, 4823, 4866, 4905, 4925, 4957, 4984,
5008, 5034, 5060, 5086, 5108, 5114, 5120, 5126, 5132, 5138, 5010, 5036, 5062, 5088, 5110, 5116, 5122, 5128, 5134, 5140,
5177, 5216, 5233, 5250, 5267, 5279, 5285, 5291, 5303, 5307, 5179, 5218, 5235, 5252, 5269, 5281, 5287, 5293, 5305, 5309,
5317, 5328, 5329, 5330, 5334, 5340, 5352, 5370, 5398, 5399, 5319, 5330, 5331, 5332, 5336, 5342, 5354, 5372, 5400, 5401,
5400, 5401, 5402, 5403, 5404, 5405, 5406, 5413, 5414, 5415, 5402, 5403, 5404, 5405, 5406, 5407, 5408, 5415, 5416, 5417,
5416, 5417, 5418, 5419, 5420, 5421, 5422, 5423, 5424, 5425, 5418, 5419, 5420, 5421, 5422, 5423, 5424, 5425, 5426, 5427,
5426, 5427, 5428, 5429, 5430, 5431, 5432, 5433, 5434, 5435, 5428, 5429, 5430, 5431, 5432, 5433, 5434, 5435, 5436, 5437,
5436, 5437, 5438, 5439, 5440, 5441, 5442, 5443, 5444, 5445, 5438, 5439, 5440, 5441, 5442, 5443, 5444, 5445, 5446, 5447,
5454, 5455, 5456, 5457, 5458, 5459, 5460, 5461, 5462, 5463, 5456, 5457, 5458, 5459, 5460, 5461, 5462, 5463, 5464, 5465,
5464, 5469, 5468, 5476, 5481, 5486, 5503, 5521, 5539, 5557, 5466, 5471, 5470, 5478, 5483, 5488, 5505, 5523, 5541, 5559,
5575, 5580, 5586, 5601, 5620, 5640, 5660, 5680, 5703, 5708, 5577, 5582, 5588, 5603, 5622, 5642, 5662, 5682, 5705, 5710,
5713, 5723, 5733, 5738, 5749, 5758, 5763, 5768, 5795, 5799, 5715, 5725, 5735, 5740, 5751, 5760, 5765, 5770, 5797, 5801,
5803, 5807, 5811, 5818, 5822, 5826, 5830, 5837, 5842, 5849, 5805, 5809, 5813, 5820, 5824, 5828, 5832, 5839, 5844, 5851,
5854, 5858, 5863, 5867, 5875, 5886, 5890, 5902, 5910, 5918, 5856, 5860, 5865, 5869, 5877, 5888, 5892, 5904, 5912, 5920,
5925, 5935, 5957, 5961, 5965, 5969, 5973, 5977, 5981, 5985, 5927, 5937, 5959, 5963, 5967, 5971, 5975, 5979, 5983, 5987,
5989, 6020, 6051, 6082, 6113, 6129, 6145, 6161, 6177, 6187, 5991, 6022, 6053, 6084, 6115, 6131, 6147, 6163, 6179, 6189,
6197, 6207, 6219, 6232, 6244, 6248, 6252, 6256, 6260, 6278, 6199, 6209, 6221, 6234, 6246, 6250, 6254, 6258, 6262, 6280,
6296, 6304, 6312, 6341, 6351, 6370, 6375, 6379, 6383, 6395, 6298, 6306, 6314, 6343, 6353, 6372, 6377, 6381, 6385, 6397,
6399, 6411, 6428, 6438, 6442, 6457, 6462, 6469, 6473, 6486, 6401, 6413, 6430, 6440, 6444, 6459, 6464, 6471, 6475, 6488,
6500, 6514, 6528, 6542, 6550, 6561, 6565, 6569, 6577, 6583, 6502, 6516, 6530, 6544, 6552, 6563, 6567, 6571, 6579, 6585,
6589, 6597, 6605, 6612, 6620, 6635, 6649, 6663, 6675, 6691, 6591, 6599, 6607, 6614, 6622, 6637, 6651, 6665, 6677, 6693,
6700, 6709, 6719, 6730, 6738, 6746, 6750, 6769, 6776, 6782, 6702, 6711, 6721, 6732, 6740, 6748, 6752, 6771, 6778, 6784,
6789, 6797, 6796, 6809, 6814, 6820, 6829, 6842, 6845, 6849 6791, 6799, 6798, 6811, 6816, 6822, 6831, 6844, 6847, 6851
}; };
#endif #endif
   
...@@ -8111,8 +8111,9 @@ yyreduce: ...@@ -8111,8 +8111,9 @@ yyreduce:
} }
else if(param.size() >= 4 && param.size() <= 6){ else if(param.size() >= 4 && param.size() <= 6){
double r = param[3]; double r = param[3];
double a1 = (param.size() >= 5) ? param[4] : 0.; double a1 = (param.size() == 6) ? param[4] : 0.;
double a2 = (param.size() >= 6) ? param[5] : 2.*M_PI; double a2 = (param.size() == 6) ? param[5] :
(param.size() == 5) ? param[4] : 2.*M_PI;
GModel::current()->getOCCInternals()->addCircle GModel::current()->getOCCInternals()->addCircle
(num, param[0], param[1], param[2], r, a1, a2); (num, param[0], param[1], param[2], r, a1, a2);
} }
...@@ -8136,7 +8137,7 @@ yyreduce: ...@@ -8136,7 +8137,7 @@ yyreduce:
break; break;
   
case 175: case 175:
#line 1806 "Gmsh.y" #line 1807 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (8)].d); int num = (int)(yyvsp[(3) - (8)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (8)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (8)].l), tags);
...@@ -8151,8 +8152,9 @@ yyreduce: ...@@ -8151,8 +8152,9 @@ yyreduce:
(num, tags[0], tags[1], tags[3]); (num, tags[0], tags[1], tags[3]);
} }
else if(param.size() >= 5 && param.size() <= 7){ else if(param.size() >= 5 && param.size() <= 7){
double a1 = (param.size() >= 6) ? param[5] : 0.; double a1 = (param.size() == 7) ? param[5] : 0.;
double a2 = (param.size() >= 7) ? param[6] : 2.*M_PI; double a2 = (param.size() == 7) ? param[6] :
(param.size() == 6) ? param[5] : 2.*M_PI;
GModel::current()->getOCCInternals()->addEllipse GModel::current()->getOCCInternals()->addEllipse
(num, param[0], param[1], param[2], param[3], param[4], a1, a2); (num, param[0], param[1], param[2], param[3], param[4], a1, a2);
} }
...@@ -8176,7 +8178,7 @@ yyreduce: ...@@ -8176,7 +8178,7 @@ yyreduce:
break; break;
   
case 176: case 176:
#line 1843 "Gmsh.y" #line 1845 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags);
...@@ -8193,7 +8195,7 @@ yyreduce: ...@@ -8193,7 +8195,7 @@ yyreduce:
break; break;
   
case 177: case 177:
#line 1857 "Gmsh.y" #line 1859 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags);
...@@ -8210,7 +8212,7 @@ yyreduce: ...@@ -8210,7 +8212,7 @@ yyreduce:
break; break;
   
case 178: case 178:
#line 1872 "Gmsh.y" #line 1874 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (11)].d); int num = (int)(yyvsp[(3) - (11)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (11)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (11)].l), tags);
...@@ -8232,7 +8234,7 @@ yyreduce: ...@@ -8232,7 +8234,7 @@ yyreduce:
break; break;
   
case 179: case 179:
#line 1891 "Gmsh.y" #line 1893 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (8)].d); int num = (int)(yyvsp[(4) - (8)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags);
...@@ -8244,7 +8246,7 @@ yyreduce: ...@@ -8244,7 +8246,7 @@ yyreduce:
break; break;
   
case 180: case 180:
#line 1900 "Gmsh.y" #line 1902 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags);
...@@ -8261,7 +8263,7 @@ yyreduce: ...@@ -8261,7 +8263,7 @@ yyreduce:
break; break;
   
case 181: case 181:
#line 1914 "Gmsh.y" #line 1916 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (8)].d); int num = (int)(yyvsp[(4) - (8)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags);
...@@ -8279,7 +8281,7 @@ yyreduce: ...@@ -8279,7 +8281,7 @@ yyreduce:
break; break;
   
case 182: case 182:
#line 1929 "Gmsh.y" #line 1931 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (8)].d); int num = (int)(yyvsp[(4) - (8)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags);
...@@ -8296,7 +8298,7 @@ yyreduce: ...@@ -8296,7 +8298,7 @@ yyreduce:
break; break;
   
case 183: case 183:
#line 1943 "Gmsh.y" #line 1945 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (8)].d); int num = (int)(yyvsp[(3) - (8)].d);
std::vector<int> wires; ListOfDouble2Vector((yyvsp[(6) - (8)].l), wires); std::vector<int> wires; ListOfDouble2Vector((yyvsp[(6) - (8)].l), wires);
...@@ -8318,7 +8320,7 @@ yyreduce: ...@@ -8318,7 +8320,7 @@ yyreduce:
break; break;
   
case 184: case 184:
#line 1962 "Gmsh.y" #line 1964 "Gmsh.y"
{ {
yymsg(1, "'Ruled Surface' command is deprecated: use 'Surface' instead"); yymsg(1, "'Ruled Surface' command is deprecated: use 'Surface' instead");
int num = (int)(yyvsp[(4) - (9)].d); int num = (int)(yyvsp[(4) - (9)].d);
...@@ -8331,7 +8333,7 @@ yyreduce: ...@@ -8331,7 +8333,7 @@ yyreduce:
break; break;
   
case 185: case 185:
#line 1972 "Gmsh.y" #line 1974 "Gmsh.y"
{ {
myGmshSurface = 0; myGmshSurface = 0;
(yyval.s).Type = 0; (yyval.s).Type = 0;
...@@ -8340,7 +8342,7 @@ yyreduce: ...@@ -8340,7 +8342,7 @@ yyreduce:
break; break;
   
case 186: case 186:
#line 1978 "Gmsh.y" #line 1980 "Gmsh.y"
{ {
myGmshSurface = gmshSurface::getSurface((int)(yyvsp[(3) - (4)].d)); myGmshSurface = gmshSurface::getSurface((int)(yyvsp[(3) - (4)].d));
(yyval.s).Type = 0; (yyval.s).Type = 0;
...@@ -8349,7 +8351,7 @@ yyreduce: ...@@ -8349,7 +8351,7 @@ yyreduce:
break; break;
   
case 187: case 187:
#line 1984 "Gmsh.y" #line 1986 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (10)].d); int num = (int)(yyvsp[(4) - (10)].d);
myGmshSurface = gmshParametricSurface::NewParametricSurface(num, (yyvsp[(7) - (10)].c), (yyvsp[(8) - (10)].c), (yyvsp[(9) - (10)].c)); myGmshSurface = gmshParametricSurface::NewParametricSurface(num, (yyvsp[(7) - (10)].c), (yyvsp[(8) - (10)].c), (yyvsp[(9) - (10)].c));
...@@ -8359,7 +8361,7 @@ yyreduce: ...@@ -8359,7 +8361,7 @@ yyreduce:
break; break;
   
case 188: case 188:
#line 1991 "Gmsh.y" #line 1993 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags);
...@@ -8389,7 +8391,7 @@ yyreduce: ...@@ -8389,7 +8391,7 @@ yyreduce:
break; break;
   
case 189: case 189:
#line 2018 "Gmsh.y" #line 2020 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags);
...@@ -8407,7 +8409,7 @@ yyreduce: ...@@ -8407,7 +8409,7 @@ yyreduce:
break; break;
   
case 190: case 190:
#line 2033 "Gmsh.y" #line 2035 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param);
...@@ -8430,7 +8432,7 @@ yyreduce: ...@@ -8430,7 +8432,7 @@ yyreduce:
break; break;
   
case 191: case 191:
#line 2053 "Gmsh.y" #line 2055 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param);
...@@ -8454,7 +8456,7 @@ yyreduce: ...@@ -8454,7 +8456,7 @@ yyreduce:
break; break;
   
case 192: case 192:
#line 2074 "Gmsh.y" #line 2076 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param);
...@@ -8478,7 +8480,7 @@ yyreduce: ...@@ -8478,7 +8480,7 @@ yyreduce:
break; break;
   
case 193: case 193:
#line 2095 "Gmsh.y" #line 2097 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param);
...@@ -8502,7 +8504,7 @@ yyreduce: ...@@ -8502,7 +8504,7 @@ yyreduce:
break; break;
   
case 194: case 194:
#line 2116 "Gmsh.y" #line 2118 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param);
...@@ -8527,7 +8529,7 @@ yyreduce: ...@@ -8527,7 +8529,7 @@ yyreduce:
break; break;
   
case 195: case 195:
#line 2138 "Gmsh.y" #line 2140 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param);
...@@ -8552,7 +8554,7 @@ yyreduce: ...@@ -8552,7 +8554,7 @@ yyreduce:
break; break;
   
case 196: case 196:
#line 2160 "Gmsh.y" #line 2162 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param);
...@@ -8576,7 +8578,7 @@ yyreduce: ...@@ -8576,7 +8578,7 @@ yyreduce:
break; break;
   
case 197: case 197:
#line 2181 "Gmsh.y" #line 2183 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param);
...@@ -8602,7 +8604,7 @@ yyreduce: ...@@ -8602,7 +8604,7 @@ yyreduce:
break; break;
   
case 198: case 198:
#line 2204 "Gmsh.y" #line 2206 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (8)].d); int num = (int)(yyvsp[(4) - (8)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags);
...@@ -8614,7 +8616,7 @@ yyreduce: ...@@ -8614,7 +8616,7 @@ yyreduce:
break; break;
   
case 199: case 199:
#line 2214 "Gmsh.y" #line 2216 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (12)].d); int num = (int)(yyvsp[(4) - (12)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (12)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (12)].l), tags);
...@@ -8637,7 +8639,7 @@ yyreduce: ...@@ -8637,7 +8639,7 @@ yyreduce:
break; break;
   
case 200: case 200:
#line 2234 "Gmsh.y" #line 2236 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (8)].d); int num = (int)(yyvsp[(4) - (8)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags);
...@@ -8655,7 +8657,7 @@ yyreduce: ...@@ -8655,7 +8657,7 @@ yyreduce:
break; break;
   
case 201: case 201:
#line 2249 "Gmsh.y" #line 2251 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags);
...@@ -8672,7 +8674,7 @@ yyreduce: ...@@ -8672,7 +8674,7 @@ yyreduce:
break; break;
   
case 202: case 202:
#line 2263 "Gmsh.y" #line 2265 "Gmsh.y"
{ {
yymsg(1, "'Complex Volume' command is deprecated: use 'Volume' instead"); yymsg(1, "'Complex Volume' command is deprecated: use 'Volume' instead");
int num = (int)(yyvsp[(4) - (8)].d); int num = (int)(yyvsp[(4) - (8)].d);
...@@ -8690,7 +8692,7 @@ yyreduce: ...@@ -8690,7 +8692,7 @@ yyreduce:
break; break;
   
case 203: case 203:
#line 2278 "Gmsh.y" #line 2280 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (7)].d); int num = (int)(yyvsp[(3) - (7)].d);
std::vector<int> wires, out[4]; ListOfDouble2Vector((yyvsp[(6) - (7)].l), wires); std::vector<int> wires, out[4]; ListOfDouble2Vector((yyvsp[(6) - (7)].l), wires);
...@@ -8708,7 +8710,7 @@ yyreduce: ...@@ -8708,7 +8710,7 @@ yyreduce:
break; break;
   
case 204: case 204:
#line 2293 "Gmsh.y" #line 2295 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (8)].d); int num = (int)(yyvsp[(4) - (8)].d);
std::vector<int> wires, out[4]; ListOfDouble2Vector((yyvsp[(7) - (8)].l), wires); std::vector<int> wires, out[4]; ListOfDouble2Vector((yyvsp[(7) - (8)].l), wires);
...@@ -8726,7 +8728,7 @@ yyreduce: ...@@ -8726,7 +8728,7 @@ yyreduce:
break; break;
   
case 205: case 205:
#line 2308 "Gmsh.y" #line 2310 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (8)].d); int num = (int)(yyvsp[(4) - (8)].d);
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags);
...@@ -8738,7 +8740,7 @@ yyreduce: ...@@ -8738,7 +8740,7 @@ yyreduce:
break; break;
   
case 206: case 206:
#line 2317 "Gmsh.y" #line 2319 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (8)].i); int num = (int)(yyvsp[(4) - (8)].i);
int op = (yyvsp[(6) - (8)].i); int op = (yyvsp[(6) - (8)].i);
...@@ -8784,7 +8786,7 @@ yyreduce: ...@@ -8784,7 +8786,7 @@ yyreduce:
break; break;
   
case 207: case 207:
#line 2360 "Gmsh.y" #line 2362 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (8)].i); int num = (int)(yyvsp[(4) - (8)].i);
int op = (yyvsp[(6) - (8)].i); int op = (yyvsp[(6) - (8)].i);
...@@ -8830,7 +8832,7 @@ yyreduce: ...@@ -8830,7 +8832,7 @@ yyreduce:
break; break;
   
case 208: case 208:
#line 2403 "Gmsh.y" #line 2405 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (8)].i); int num = (int)(yyvsp[(4) - (8)].i);
int op = (yyvsp[(6) - (8)].i); int op = (yyvsp[(6) - (8)].i);
...@@ -8876,7 +8878,7 @@ yyreduce: ...@@ -8876,7 +8878,7 @@ yyreduce:
break; break;
   
case 209: case 209:
#line 2446 "Gmsh.y" #line 2448 "Gmsh.y"
{ {
int num = (int)(yyvsp[(4) - (8)].i); int num = (int)(yyvsp[(4) - (8)].i);
int op = (yyvsp[(6) - (8)].i); int op = (yyvsp[(6) - (8)].i);
...@@ -8922,7 +8924,7 @@ yyreduce: ...@@ -8922,7 +8924,7 @@ yyreduce:
break; break;
   
case 210: case 210:
#line 2494 "Gmsh.y" #line 2496 "Gmsh.y"
{ {
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
std::vector<int> in[4]; std::vector<int> in[4];
...@@ -8942,7 +8944,7 @@ yyreduce: ...@@ -8942,7 +8944,7 @@ yyreduce:
break; break;
   
case 211: case 211:
#line 2511 "Gmsh.y" #line 2513 "Gmsh.y"
{ {
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
std::vector<int> in[4]; std::vector<int> in[4];
...@@ -8963,7 +8965,7 @@ yyreduce: ...@@ -8963,7 +8965,7 @@ yyreduce:
break; break;
   
case 212: case 212:
#line 2529 "Gmsh.y" #line 2531 "Gmsh.y"
{ {
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
Msg::Error("TODO OCC Symmetry"); Msg::Error("TODO OCC Symmetry");
...@@ -8976,7 +8978,7 @@ yyreduce: ...@@ -8976,7 +8978,7 @@ yyreduce:
break; break;
   
case 213: case 213:
#line 2539 "Gmsh.y" #line 2541 "Gmsh.y"
{ {
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
Msg::Error("TODO OCC Dilate"); Msg::Error("TODO OCC Dilate");
...@@ -8989,7 +8991,7 @@ yyreduce: ...@@ -8989,7 +8991,7 @@ yyreduce:
break; break;
   
case 214: case 214:
#line 2549 "Gmsh.y" #line 2551 "Gmsh.y"
{ {
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
Msg::Error("TODO OCC Dilate"); Msg::Error("TODO OCC Dilate");
...@@ -9002,7 +9004,7 @@ yyreduce: ...@@ -9002,7 +9004,7 @@ yyreduce:
break; break;
   
case 215: case 215:
#line 2559 "Gmsh.y" #line 2561 "Gmsh.y"
{ {
(yyval.l) = List_Create(3, 3, sizeof(Shape)); (yyval.l) = List_Create(3, 3, sizeof(Shape));
if(!strcmp((yyvsp[(1) - (4)].c), "Duplicata")){ if(!strcmp((yyvsp[(1) - (4)].c), "Duplicata")){
...@@ -9068,7 +9070,7 @@ yyreduce: ...@@ -9068,7 +9070,7 @@ yyreduce:
break; break;
   
case 216: case 216:
#line 2622 "Gmsh.y" #line 2624 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
...@@ -9082,7 +9084,7 @@ yyreduce: ...@@ -9082,7 +9084,7 @@ yyreduce:
break; break;
   
case 217: case 217:
#line 2633 "Gmsh.y" #line 2635 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape*)); (yyval.l) = List_Create(2, 1, sizeof(Shape*));
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
...@@ -9098,31 +9100,31 @@ yyreduce: ...@@ -9098,31 +9100,31 @@ yyreduce:
break; break;
   
case 218: case 218:
#line 2648 "Gmsh.y" #line 2650 "Gmsh.y"
{ (yyval.l) = (yyvsp[(1) - (1)].l); ;} { (yyval.l) = (yyvsp[(1) - (1)].l); ;}
break; break;
   
case 219: case 219:
#line 2649 "Gmsh.y" #line 2651 "Gmsh.y"
{ (yyval.l) = (yyvsp[(1) - (1)].l); ;} { (yyval.l) = (yyvsp[(1) - (1)].l); ;}
break; break;
   
case 220: case 220:
#line 2654 "Gmsh.y" #line 2656 "Gmsh.y"
{ {
(yyval.l) = List_Create(3, 3, sizeof(Shape)); (yyval.l) = List_Create(3, 3, sizeof(Shape));
;} ;}
break; break;
   
case 221: case 221:
#line 2658 "Gmsh.y" #line 2660 "Gmsh.y"
{ {
List_Add((yyval.l), &(yyvsp[(2) - (2)].s)); List_Add((yyval.l), &(yyvsp[(2) - (2)].s));
;} ;}
break; break;
   
case 222: case 222:
#line 2662 "Gmsh.y" #line 2664 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){
double d; double d;
...@@ -9136,7 +9138,7 @@ yyreduce: ...@@ -9136,7 +9138,7 @@ yyreduce:
break; break;
   
case 223: case 223:
#line 2673 "Gmsh.y" #line 2675 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){
double d; double d;
...@@ -9150,7 +9152,7 @@ yyreduce: ...@@ -9150,7 +9152,7 @@ yyreduce:
break; break;
   
case 224: case 224:
#line 2684 "Gmsh.y" #line 2686 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){
double d; double d;
...@@ -9164,7 +9166,7 @@ yyreduce: ...@@ -9164,7 +9166,7 @@ yyreduce:
break; break;
   
case 225: case 225:
#line 2695 "Gmsh.y" #line 2697 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){
double d; double d;
...@@ -9178,7 +9180,7 @@ yyreduce: ...@@ -9178,7 +9180,7 @@ yyreduce:
break; break;
   
case 226: case 226:
#line 2711 "Gmsh.y" #line 2713 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
if(List_Nbr((yyvsp[(7) - (8)].l)) == 4){ if(List_Nbr((yyvsp[(7) - (8)].l)) == 4){
...@@ -9203,7 +9205,7 @@ yyreduce: ...@@ -9203,7 +9205,7 @@ yyreduce:
break; break;
   
case 227: case 227:
#line 2733 "Gmsh.y" #line 2735 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
int t = (int)(yyvsp[(4) - (10)].d); int t = (int)(yyvsp[(4) - (10)].d);
...@@ -9232,7 +9234,7 @@ yyreduce: ...@@ -9232,7 +9234,7 @@ yyreduce:
break; break;
   
case 228: case 228:
#line 2760 "Gmsh.y" #line 2762 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
if(List_Nbr((yyvsp[(12) - (14)].l)) == 0){ if(List_Nbr((yyvsp[(12) - (14)].l)) == 0){
...@@ -9256,7 +9258,7 @@ yyreduce: ...@@ -9256,7 +9258,7 @@ yyreduce:
break; break;
   
case 229: case 229:
#line 2782 "Gmsh.y" #line 2784 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
if(List_Nbr((yyvsp[(14) - (16)].l)) == 0){ if(List_Nbr((yyvsp[(14) - (16)].l)) == 0){
...@@ -9281,7 +9283,7 @@ yyreduce: ...@@ -9281,7 +9283,7 @@ yyreduce:
break; break;
   
case 230: case 230:
#line 2804 "Gmsh.y" #line 2806 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
if(List_Nbr((yyvsp[(10) - (12)].l)) == 1){ if(List_Nbr((yyvsp[(10) - (12)].l)) == 1){
...@@ -9305,7 +9307,7 @@ yyreduce: ...@@ -9305,7 +9307,7 @@ yyreduce:
break; break;
   
case 231: case 231:
#line 2826 "Gmsh.y" #line 2828 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
if(List_Nbr((yyvsp[(12) - (14)].l)) == 1){ if(List_Nbr((yyvsp[(12) - (14)].l)) == 1){
...@@ -9363,7 +9365,7 @@ yyreduce: ...@@ -9363,7 +9365,7 @@ yyreduce:
break; break;
   
case 232: case 232:
#line 2882 "Gmsh.y" #line 2884 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
if(List_Nbr((yyvsp[(12) - (14)].l)) == 1){ if(List_Nbr((yyvsp[(12) - (14)].l)) == 1){
...@@ -9389,7 +9391,7 @@ yyreduce: ...@@ -9389,7 +9391,7 @@ yyreduce:
break; break;
   
case 233: case 233:
#line 2906 "Gmsh.y" #line 2908 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
if(List_Nbr((yyvsp[(12) - (14)].l)) == 3){ if(List_Nbr((yyvsp[(12) - (14)].l)) == 3){
...@@ -9416,7 +9418,7 @@ yyreduce: ...@@ -9416,7 +9418,7 @@ yyreduce:
break; break;
   
case 234: case 234:
#line 2931 "Gmsh.y" #line 2933 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
if(List_Nbr((yyvsp[(12) - (14)].l)) == 5){ if(List_Nbr((yyvsp[(12) - (14)].l)) == 5){
...@@ -9444,7 +9446,7 @@ yyreduce: ...@@ -9444,7 +9446,7 @@ yyreduce:
break; break;
   
case 235: case 235:
#line 2956 "Gmsh.y" #line 2958 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
if(!strcmp((yyvsp[(2) - (8)].c), "Union")){ if(!strcmp((yyvsp[(2) - (8)].c), "Union")){
...@@ -9560,7 +9562,7 @@ yyreduce: ...@@ -9560,7 +9562,7 @@ yyreduce:
break; break;
   
case 236: case 236:
#line 3069 "Gmsh.y" #line 3071 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
if(!strcmp((yyvsp[(2) - (8)].c), "MathEval")){ if(!strcmp((yyvsp[(2) - (8)].c), "MathEval")){
...@@ -9582,7 +9584,7 @@ yyreduce: ...@@ -9582,7 +9584,7 @@ yyreduce:
break; break;
   
case 237: case 237:
#line 3088 "Gmsh.y" #line 3090 "Gmsh.y"
{ {
#if defined(HAVE_DINTEGRATION) #if defined(HAVE_DINTEGRATION)
if(!strcmp((yyvsp[(2) - (6)].c), "CutMesh")){ if(!strcmp((yyvsp[(2) - (6)].c), "CutMesh")){
...@@ -9623,7 +9625,7 @@ yyreduce: ...@@ -9623,7 +9625,7 @@ yyreduce:
break; break;
   
case 238: case 238:
#line 3131 "Gmsh.y" #line 3133 "Gmsh.y"
{ {
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
std::vector<int> in[4]; std::vector<int> in[4];
...@@ -9647,7 +9649,7 @@ yyreduce: ...@@ -9647,7 +9649,7 @@ yyreduce:
break; break;
   
case 239: case 239:
#line 3152 "Gmsh.y" #line 3154 "Gmsh.y"
{ {
#if defined(HAVE_MESH) #if defined(HAVE_MESH)
GModel::current()->getFields()->deleteField((int)(yyvsp[(4) - (6)].d)); GModel::current()->getFields()->deleteField((int)(yyvsp[(4) - (6)].d));
...@@ -9656,7 +9658,7 @@ yyreduce: ...@@ -9656,7 +9658,7 @@ yyreduce:
break; break;
   
case 240: case 240:
#line 3158 "Gmsh.y" #line 3160 "Gmsh.y"
{ {
#if defined(HAVE_POST) #if defined(HAVE_POST)
if(!strcmp((yyvsp[(2) - (6)].c), "View")){ if(!strcmp((yyvsp[(2) - (6)].c), "View")){
...@@ -9674,7 +9676,7 @@ yyreduce: ...@@ -9674,7 +9676,7 @@ yyreduce:
break; break;
   
case 241: case 241:
#line 3173 "Gmsh.y" #line 3175 "Gmsh.y"
{ {
if(!strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){ if(!strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){
ClearProject(); ClearProject();
...@@ -9705,7 +9707,7 @@ yyreduce: ...@@ -9705,7 +9707,7 @@ yyreduce:
break; break;
   
case 242: case 242:
#line 3201 "Gmsh.y" #line 3203 "Gmsh.y"
{ {
#if defined(HAVE_POST) #if defined(HAVE_POST)
if(!strcmp((yyvsp[(2) - (4)].c), "Empty") && !strcmp((yyvsp[(3) - (4)].c), "Views")){ if(!strcmp((yyvsp[(2) - (4)].c), "Empty") && !strcmp((yyvsp[(3) - (4)].c), "Views")){
...@@ -9720,7 +9722,7 @@ yyreduce: ...@@ -9720,7 +9722,7 @@ yyreduce:
break; break;
   
case 243: case 243:
#line 3218 "Gmsh.y" #line 3220 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){
Shape TheShape; Shape TheShape;
...@@ -9732,7 +9734,7 @@ yyreduce: ...@@ -9732,7 +9734,7 @@ yyreduce:
break; break;
   
case 244: case 244:
#line 3227 "Gmsh.y" #line 3229 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(5) - (6)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(5) - (6)].l)); i++){
Shape TheShape; Shape TheShape;
...@@ -9744,7 +9746,7 @@ yyreduce: ...@@ -9744,7 +9746,7 @@ yyreduce:
break; break;
   
case 245: case 245:
#line 3241 "Gmsh.y" #line 3243 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){
Shape TheShape; Shape TheShape;
...@@ -9756,7 +9758,7 @@ yyreduce: ...@@ -9756,7 +9758,7 @@ yyreduce:
break; break;
   
case 246: case 246:
#line 3255 "Gmsh.y" #line 3257 "Gmsh.y"
{ {
for(int i = 0; i < 4; i++) for(int i = 0; i < 4; i++)
VisibilityShape((yyvsp[(2) - (3)].c), i, 1, false); VisibilityShape((yyvsp[(2) - (3)].c), i, 1, false);
...@@ -9765,7 +9767,7 @@ yyreduce: ...@@ -9765,7 +9767,7 @@ yyreduce:
break; break;
   
case 247: case 247:
#line 3261 "Gmsh.y" #line 3263 "Gmsh.y"
{ {
for(int i = 0; i < 4; i++) for(int i = 0; i < 4; i++)
VisibilityShape((yyvsp[(2) - (3)].c), i, 0, false); VisibilityShape((yyvsp[(2) - (3)].c), i, 0, false);
...@@ -9774,7 +9776,7 @@ yyreduce: ...@@ -9774,7 +9776,7 @@ yyreduce:
break; break;
   
case 248: case 248:
#line 3267 "Gmsh.y" #line 3269 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){
Shape TheShape; Shape TheShape;
...@@ -9786,7 +9788,7 @@ yyreduce: ...@@ -9786,7 +9788,7 @@ yyreduce:
break; break;
   
case 249: case 249:
#line 3276 "Gmsh.y" #line 3278 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){
Shape TheShape; Shape TheShape;
...@@ -9798,7 +9800,7 @@ yyreduce: ...@@ -9798,7 +9800,7 @@ yyreduce:
break; break;
   
case 250: case 250:
#line 3285 "Gmsh.y" #line 3287 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){
Shape TheShape; Shape TheShape;
...@@ -9810,7 +9812,7 @@ yyreduce: ...@@ -9810,7 +9812,7 @@ yyreduce:
break; break;
   
case 251: case 251:
#line 3294 "Gmsh.y" #line 3296 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){
Shape TheShape; Shape TheShape;
...@@ -9822,7 +9824,7 @@ yyreduce: ...@@ -9822,7 +9824,7 @@ yyreduce:
break; break;
   
case 252: case 252:
#line 3308 "Gmsh.y" #line 3310 "Gmsh.y"
{ {
if(!strcmp((yyvsp[(1) - (3)].c), "Include")){ if(!strcmp((yyvsp[(1) - (3)].c), "Include")){
std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c)); std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c));
...@@ -9895,7 +9897,7 @@ yyreduce: ...@@ -9895,7 +9897,7 @@ yyreduce:
break; break;
   
case 253: case 253:
#line 3378 "Gmsh.y" #line 3380 "Gmsh.y"
{ {
int n = List_Nbr((yyvsp[(3) - (5)].l)); int n = List_Nbr((yyvsp[(3) - (5)].l));
if(n == 1){ if(n == 1){
...@@ -9916,7 +9918,7 @@ yyreduce: ...@@ -9916,7 +9918,7 @@ yyreduce:
break; break;
   
case 254: case 254:
#line 3396 "Gmsh.y" #line 3398 "Gmsh.y"
{ {
#if defined(HAVE_POST) #if defined(HAVE_POST)
if(!strcmp((yyvsp[(1) - (7)].c), "Save") && !strcmp((yyvsp[(2) - (7)].c), "View")){ if(!strcmp((yyvsp[(1) - (7)].c), "Save") && !strcmp((yyvsp[(2) - (7)].c), "View")){
...@@ -9936,7 +9938,7 @@ yyreduce: ...@@ -9936,7 +9938,7 @@ yyreduce:
break; break;
   
case 255: case 255:
#line 3413 "Gmsh.y" #line 3415 "Gmsh.y"
{ {
#if defined(HAVE_POST) && defined(HAVE_MESH) #if defined(HAVE_POST) && defined(HAVE_MESH)
if(!strcmp((yyvsp[(1) - (7)].c), "Background") && !strcmp((yyvsp[(2) - (7)].c), "Mesh") && !strcmp((yyvsp[(3) - (7)].c), "View")){ if(!strcmp((yyvsp[(1) - (7)].c), "Background") && !strcmp((yyvsp[(2) - (7)].c), "Mesh") && !strcmp((yyvsp[(3) - (7)].c), "View")){
...@@ -9954,7 +9956,7 @@ yyreduce: ...@@ -9954,7 +9956,7 @@ yyreduce:
break; break;
   
case 256: case 256:
#line 3428 "Gmsh.y" #line 3430 "Gmsh.y"
{ {
if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){ if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){
SleepInSeconds((yyvsp[(2) - (3)].d)); SleepInSeconds((yyvsp[(2) - (3)].d));
...@@ -9989,7 +9991,7 @@ yyreduce: ...@@ -9989,7 +9991,7 @@ yyreduce:
break; break;
   
case 257: case 257:
#line 3460 "Gmsh.y" #line 3462 "Gmsh.y"
{ {
#if defined(HAVE_PLUGINS) #if defined(HAVE_PLUGINS)
try { try {
...@@ -10004,7 +10006,7 @@ yyreduce: ...@@ -10004,7 +10006,7 @@ yyreduce:
break; break;
   
case 258: case 258:
#line 3472 "Gmsh.y" #line 3474 "Gmsh.y"
{ {
#if defined(HAVE_POST) #if defined(HAVE_POST)
if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromAllViews")) if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromAllViews"))
...@@ -10031,14 +10033,14 @@ yyreduce: ...@@ -10031,14 +10033,14 @@ yyreduce:
break; break;
   
case 259: case 259:
#line 3496 "Gmsh.y" #line 3498 "Gmsh.y"
{ {
Msg::Exit(0); Msg::Exit(0);
;} ;}
break; break;
   
case 260: case 260:
#line 3500 "Gmsh.y" #line 3502 "Gmsh.y"
{ {
gmsh_yyerrorstate = 999; // this will be checked when yyparse returns gmsh_yyerrorstate = 999; // this will be checked when yyparse returns
YYABORT; YYABORT;
...@@ -10046,7 +10048,7 @@ yyreduce: ...@@ -10046,7 +10048,7 @@ yyreduce:
break; break;
   
case 261: case 261:
#line 3505 "Gmsh.y" #line 3507 "Gmsh.y"
{ {
// force sync // force sync
GModel::current()->getOCCInternals()->synchronize(GModel::current()); GModel::current()->getOCCInternals()->synchronize(GModel::current());
...@@ -10055,7 +10057,7 @@ yyreduce: ...@@ -10055,7 +10057,7 @@ yyreduce:
break; break;
   
case 262: case 262:
#line 3511 "Gmsh.y" #line 3513 "Gmsh.y"
{ {
new GModel(); new GModel();
GModel::current(GModel::list.size() - 1); GModel::current(GModel::list.size() - 1);
...@@ -10063,7 +10065,7 @@ yyreduce: ...@@ -10063,7 +10065,7 @@ yyreduce:
break; break;
   
case 263: case 263:
#line 3516 "Gmsh.y" #line 3518 "Gmsh.y"
{ {
CTX::instance()->forcedBBox = 0; CTX::instance()->forcedBBox = 0;
if(GModel::current()->getOCCInternals()->getChanged()) if(GModel::current()->getOCCInternals()->getChanged())
...@@ -10075,7 +10077,7 @@ yyreduce: ...@@ -10075,7 +10077,7 @@ yyreduce:
break; break;
   
case 264: case 264:
#line 3525 "Gmsh.y" #line 3527 "Gmsh.y"
{ {
CTX::instance()->forcedBBox = 1; CTX::instance()->forcedBBox = 1;
SetBoundingBox((yyvsp[(3) - (15)].d), (yyvsp[(5) - (15)].d), (yyvsp[(7) - (15)].d), (yyvsp[(9) - (15)].d), (yyvsp[(11) - (15)].d), (yyvsp[(13) - (15)].d)); SetBoundingBox((yyvsp[(3) - (15)].d), (yyvsp[(5) - (15)].d), (yyvsp[(7) - (15)].d), (yyvsp[(9) - (15)].d), (yyvsp[(11) - (15)].d), (yyvsp[(13) - (15)].d));
...@@ -10083,7 +10085,7 @@ yyreduce: ...@@ -10083,7 +10085,7 @@ yyreduce:
break; break;
   
case 265: case 265:
#line 3530 "Gmsh.y" #line 3532 "Gmsh.y"
{ {
#if defined(HAVE_OPENGL) #if defined(HAVE_OPENGL)
drawContext::global()->draw(); drawContext::global()->draw();
...@@ -10092,7 +10094,7 @@ yyreduce: ...@@ -10092,7 +10094,7 @@ yyreduce:
break; break;
   
case 266: case 266:
#line 3536 "Gmsh.y" #line 3538 "Gmsh.y"
{ {
#if defined(HAVE_OPENGL) #if defined(HAVE_OPENGL)
CTX::instance()->mesh.changed = ENT_ALL; CTX::instance()->mesh.changed = ENT_ALL;
...@@ -10103,21 +10105,21 @@ yyreduce: ...@@ -10103,21 +10105,21 @@ yyreduce:
break; break;
   
case 267: case 267:
#line 3544 "Gmsh.y" #line 3546 "Gmsh.y"
{ {
GModel::current()->createTopologyFromMesh(); GModel::current()->createTopologyFromMesh();
;} ;}
break; break;
   
case 268: case 268:
#line 3548 "Gmsh.y" #line 3550 "Gmsh.y"
{ {
GModel::current()->createTopologyFromMesh(1); GModel::current()->createTopologyFromMesh(1);
;} ;}
break; break;
   
case 269: case 269:
#line 3552 "Gmsh.y" #line 3554 "Gmsh.y"
{ {
if(GModel::current()->getOCCInternals()->getChanged()) if(GModel::current()->getOCCInternals()->getChanged())
GModel::current()->getOCCInternals()->synchronize(GModel::current()); GModel::current()->getOCCInternals()->synchronize(GModel::current());
...@@ -10128,7 +10130,7 @@ yyreduce: ...@@ -10128,7 +10130,7 @@ yyreduce:
break; break;
   
case 270: case 270:
#line 3561 "Gmsh.y" #line 3563 "Gmsh.y"
{ {
int lock = CTX::instance()->lock; int lock = CTX::instance()->lock;
CTX::instance()->lock = 0; CTX::instance()->lock = 0;
...@@ -10188,7 +10190,7 @@ yyreduce: ...@@ -10188,7 +10190,7 @@ yyreduce:
break; break;
   
case 271: case 271:
#line 3623 "Gmsh.y" #line 3625 "Gmsh.y"
{ {
#if defined(HAVE_POPPLER) #if defined(HAVE_POPPLER)
std::vector<int> is; std::vector<int> is;
...@@ -10203,7 +10205,7 @@ yyreduce: ...@@ -10203,7 +10205,7 @@ yyreduce:
break; break;
   
case 272: case 272:
#line 3639 "Gmsh.y" #line 3641 "Gmsh.y"
{ {
LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d); LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d);
LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (6)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (6)].d);
...@@ -10223,7 +10225,7 @@ yyreduce: ...@@ -10223,7 +10225,7 @@ yyreduce:
break; break;
   
case 273: case 273:
#line 3656 "Gmsh.y" #line 3658 "Gmsh.y"
{ {
LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (8)].d);
LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (8)].d);
...@@ -10243,7 +10245,7 @@ yyreduce: ...@@ -10243,7 +10245,7 @@ yyreduce:
break; break;
   
case 274: case 274:
#line 3673 "Gmsh.y" #line 3675 "Gmsh.y"
{ {
LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d);
LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (8)].d);
...@@ -10268,7 +10270,7 @@ yyreduce: ...@@ -10268,7 +10270,7 @@ yyreduce:
break; break;
   
case 275: case 275:
#line 3695 "Gmsh.y" #line 3697 "Gmsh.y"
{ {
LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (10)].d); LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (10)].d);
LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (10)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (10)].d);
...@@ -10293,7 +10295,7 @@ yyreduce: ...@@ -10293,7 +10295,7 @@ yyreduce:
break; break;
   
case 276: case 276:
#line 3717 "Gmsh.y" #line 3719 "Gmsh.y"
{ {
if(ImbricatedLoop <= 0){ if(ImbricatedLoop <= 0){
yymsg(0, "Invalid For/EndFor loop"); yymsg(0, "Invalid For/EndFor loop");
...@@ -10331,7 +10333,7 @@ yyreduce: ...@@ -10331,7 +10333,7 @@ yyreduce:
break; break;
   
case 277: case 277:
#line 3752 "Gmsh.y" #line 3754 "Gmsh.y"
{ {
if(!FunctionManager::Instance()->createFunction if(!FunctionManager::Instance()->createFunction
(std::string((yyvsp[(2) - (2)].c)), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) (std::string((yyvsp[(2) - (2)].c)), gmsh_yyin, gmsh_yyname, gmsh_yylineno))
...@@ -10342,7 +10344,7 @@ yyreduce: ...@@ -10342,7 +10344,7 @@ yyreduce:
break; break;
   
case 278: case 278:
#line 3760 "Gmsh.y" #line 3762 "Gmsh.y"
{ {
if(!FunctionManager::Instance()->createFunction if(!FunctionManager::Instance()->createFunction
(std::string((yyvsp[(2) - (2)].c)), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) (std::string((yyvsp[(2) - (2)].c)), gmsh_yyin, gmsh_yyname, gmsh_yylineno))
...@@ -10353,7 +10355,7 @@ yyreduce: ...@@ -10353,7 +10355,7 @@ yyreduce:
break; break;
   
case 279: case 279:
#line 3768 "Gmsh.y" #line 3770 "Gmsh.y"
{ {
if(!FunctionManager::Instance()->leaveFunction if(!FunctionManager::Instance()->leaveFunction
(&gmsh_yyin, gmsh_yyname, gmsh_yylineno)) (&gmsh_yyin, gmsh_yyname, gmsh_yylineno))
...@@ -10362,7 +10364,7 @@ yyreduce: ...@@ -10362,7 +10364,7 @@ yyreduce:
break; break;
   
case 280: case 280:
#line 3774 "Gmsh.y" #line 3776 "Gmsh.y"
{ {
if(!FunctionManager::Instance()->enterFunction if(!FunctionManager::Instance()->enterFunction
(std::string((yyvsp[(2) - (3)].c)), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) (std::string((yyvsp[(2) - (3)].c)), &gmsh_yyin, gmsh_yyname, gmsh_yylineno))
...@@ -10372,7 +10374,7 @@ yyreduce: ...@@ -10372,7 +10374,7 @@ yyreduce:
break; break;
   
case 281: case 281:
#line 3781 "Gmsh.y" #line 3783 "Gmsh.y"
{ {
if(!FunctionManager::Instance()->enterFunction if(!FunctionManager::Instance()->enterFunction
(std::string((yyvsp[(2) - (3)].c)), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) (std::string((yyvsp[(2) - (3)].c)), &gmsh_yyin, gmsh_yyname, gmsh_yylineno))
...@@ -10382,7 +10384,7 @@ yyreduce: ...@@ -10382,7 +10384,7 @@ yyreduce:
break; break;
   
case 282: case 282:
#line 3788 "Gmsh.y" #line 3790 "Gmsh.y"
{ {
ImbricatedTest++; ImbricatedTest++;
if(ImbricatedTest > MAX_RECUR_TESTS-1){ if(ImbricatedTest > MAX_RECUR_TESTS-1){
...@@ -10405,7 +10407,7 @@ yyreduce: ...@@ -10405,7 +10407,7 @@ yyreduce:
break; break;
   
case 283: case 283:
#line 3808 "Gmsh.y" #line 3810 "Gmsh.y"
{ {
if(ImbricatedTest > 0){ if(ImbricatedTest > 0){
if (statusImbricatedTests[ImbricatedTest]){ if (statusImbricatedTests[ImbricatedTest]){
...@@ -10434,7 +10436,7 @@ yyreduce: ...@@ -10434,7 +10436,7 @@ yyreduce:
break; break;
   
case 284: case 284:
#line 3834 "Gmsh.y" #line 3836 "Gmsh.y"
{ {
if(ImbricatedTest > 0){ if(ImbricatedTest > 0){
if(statusImbricatedTests[ImbricatedTest]){ if(statusImbricatedTests[ImbricatedTest]){
...@@ -10449,7 +10451,7 @@ yyreduce: ...@@ -10449,7 +10451,7 @@ yyreduce:
break; break;
   
case 285: case 285:
#line 3846 "Gmsh.y" #line 3848 "Gmsh.y"
{ {
ImbricatedTest--; ImbricatedTest--;
if(ImbricatedTest < 0) if(ImbricatedTest < 0)
...@@ -10458,7 +10460,7 @@ yyreduce: ...@@ -10458,7 +10460,7 @@ yyreduce:
break; break;
   
case 286: case 286:
#line 3858 "Gmsh.y" #line 3860 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
...@@ -10491,7 +10493,7 @@ yyreduce: ...@@ -10491,7 +10493,7 @@ yyreduce:
break; break;
   
case 287: case 287:
#line 3888 "Gmsh.y" #line 3890 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
...@@ -10525,7 +10527,7 @@ yyreduce: ...@@ -10525,7 +10527,7 @@ yyreduce:
break; break;
   
case 288: case 288:
#line 3919 "Gmsh.y" #line 3921 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (13)].l), ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (13)].l),
...@@ -10536,7 +10538,7 @@ yyreduce: ...@@ -10536,7 +10538,7 @@ yyreduce:
break; break;
   
case 289: case 289:
#line 3927 "Gmsh.y" #line 3929 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10545,7 +10547,7 @@ yyreduce: ...@@ -10545,7 +10547,7 @@ yyreduce:
break; break;
   
case 290: case 290:
#line 3933 "Gmsh.y" #line 3935 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (7)].l), ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (7)].l),
...@@ -10556,7 +10558,7 @@ yyreduce: ...@@ -10556,7 +10558,7 @@ yyreduce:
break; break;
   
case 291: case 291:
#line 3941 "Gmsh.y" #line 3943 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10565,7 +10567,7 @@ yyreduce: ...@@ -10565,7 +10567,7 @@ yyreduce:
break; break;
   
case 292: case 292:
#line 3947 "Gmsh.y" #line 3949 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShapes(ROTATE, (yyvsp[(10) - (13)].l), ExtrudeShapes(ROTATE, (yyvsp[(10) - (13)].l),
...@@ -10576,7 +10578,7 @@ yyreduce: ...@@ -10576,7 +10578,7 @@ yyreduce:
break; break;
   
case 293: case 293:
#line 3955 "Gmsh.y" #line 3957 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10585,7 +10587,7 @@ yyreduce: ...@@ -10585,7 +10587,7 @@ yyreduce:
break; break;
   
case 294: case 294:
#line 3961 "Gmsh.y" #line 3963 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (15)].l), ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (15)].l),
...@@ -10596,7 +10598,7 @@ yyreduce: ...@@ -10596,7 +10598,7 @@ yyreduce:
break; break;
   
case 295: case 295:
#line 3969 "Gmsh.y" #line 3971 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10605,7 +10607,7 @@ yyreduce: ...@@ -10605,7 +10607,7 @@ yyreduce:
break; break;
   
case 296: case 296:
#line 3975 "Gmsh.y" #line 3977 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (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., ExtrudeShapes(BOUNDARY_LAYER, (yyvsp[(3) - (6)].l), 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
...@@ -10615,7 +10617,7 @@ yyreduce: ...@@ -10615,7 +10617,7 @@ yyreduce:
break; break;
   
case 297: case 297:
#line 3982 "Gmsh.y" #line 3984 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
...@@ -10645,7 +10647,7 @@ yyreduce: ...@@ -10645,7 +10647,7 @@ yyreduce:
break; break;
   
case 298: case 298:
#line 4009 "Gmsh.y" #line 4011 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
...@@ -10667,7 +10669,7 @@ yyreduce: ...@@ -10667,7 +10669,7 @@ yyreduce:
break; break;
   
case 299: case 299:
#line 4028 "Gmsh.y" #line 4030 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
...@@ -10689,7 +10691,7 @@ yyreduce: ...@@ -10689,7 +10691,7 @@ yyreduce:
break; break;
   
case 300: case 300:
#line 4047 "Gmsh.y" #line 4049 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
...@@ -10717,7 +10719,7 @@ yyreduce: ...@@ -10717,7 +10719,7 @@ yyreduce:
break; break;
   
case 301: case 301:
#line 4073 "Gmsh.y" #line 4075 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d), ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d),
...@@ -10727,7 +10729,7 @@ yyreduce: ...@@ -10727,7 +10729,7 @@ yyreduce:
break; break;
   
case 302: case 302:
#line 4080 "Gmsh.y" #line 4082 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d), ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d),
...@@ -10737,7 +10739,7 @@ yyreduce: ...@@ -10737,7 +10739,7 @@ yyreduce:
break; break;
   
case 303: case 303:
#line 4087 "Gmsh.y" #line 4089 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d), ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d),
...@@ -10747,7 +10749,7 @@ yyreduce: ...@@ -10747,7 +10749,7 @@ yyreduce:
break; break;
   
case 304: case 304:
#line 4094 "Gmsh.y" #line 4096 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d),
...@@ -10757,7 +10759,7 @@ yyreduce: ...@@ -10757,7 +10759,7 @@ yyreduce:
break; break;
   
case 305: case 305:
#line 4101 "Gmsh.y" #line 4103 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d),
...@@ -10767,7 +10769,7 @@ yyreduce: ...@@ -10767,7 +10769,7 @@ yyreduce:
break; break;
   
case 306: case 306:
#line 4108 "Gmsh.y" #line 4110 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d),
...@@ -10777,7 +10779,7 @@ yyreduce: ...@@ -10777,7 +10779,7 @@ yyreduce:
break; break;
   
case 307: case 307:
#line 4115 "Gmsh.y" #line 4117 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d), ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d),
...@@ -10787,7 +10789,7 @@ yyreduce: ...@@ -10787,7 +10789,7 @@ yyreduce:
break; break;
   
case 308: case 308:
#line 4122 "Gmsh.y" #line 4124 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d), ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d),
...@@ -10797,7 +10799,7 @@ yyreduce: ...@@ -10797,7 +10799,7 @@ yyreduce:
break; break;
   
case 309: case 309:
#line 4129 "Gmsh.y" #line 4131 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d), ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d),
...@@ -10807,7 +10809,7 @@ yyreduce: ...@@ -10807,7 +10809,7 @@ yyreduce:
break; break;
   
case 310: case 310:
#line 4136 "Gmsh.y" #line 4138 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10816,7 +10818,7 @@ yyreduce: ...@@ -10816,7 +10818,7 @@ yyreduce:
break; break;
   
case 311: case 311:
#line 4142 "Gmsh.y" #line 4144 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d),
...@@ -10826,7 +10828,7 @@ yyreduce: ...@@ -10826,7 +10828,7 @@ yyreduce:
break; break;
   
case 312: case 312:
#line 4149 "Gmsh.y" #line 4151 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10835,7 +10837,7 @@ yyreduce: ...@@ -10835,7 +10837,7 @@ yyreduce:
break; break;
   
case 313: case 313:
#line 4155 "Gmsh.y" #line 4157 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d),
...@@ -10845,7 +10847,7 @@ yyreduce: ...@@ -10845,7 +10847,7 @@ yyreduce:
break; break;
   
case 314: case 314:
#line 4162 "Gmsh.y" #line 4164 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10854,7 +10856,7 @@ yyreduce: ...@@ -10854,7 +10856,7 @@ yyreduce:
break; break;
   
case 315: case 315:
#line 4168 "Gmsh.y" #line 4170 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d),
...@@ -10864,7 +10866,7 @@ yyreduce: ...@@ -10864,7 +10866,7 @@ yyreduce:
break; break;
   
case 316: case 316:
#line 4175 "Gmsh.y" #line 4177 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10873,7 +10875,7 @@ yyreduce: ...@@ -10873,7 +10875,7 @@ yyreduce:
break; break;
   
case 317: case 317:
#line 4181 "Gmsh.y" #line 4183 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d), ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d),
...@@ -10883,7 +10885,7 @@ yyreduce: ...@@ -10883,7 +10885,7 @@ yyreduce:
break; break;
   
case 318: case 318:
#line 4188 "Gmsh.y" #line 4190 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10892,7 +10894,7 @@ yyreduce: ...@@ -10892,7 +10894,7 @@ yyreduce:
break; break;
   
case 319: case 319:
#line 4194 "Gmsh.y" #line 4196 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d), ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d),
...@@ -10902,7 +10904,7 @@ yyreduce: ...@@ -10902,7 +10904,7 @@ yyreduce:
break; break;
   
case 320: case 320:
#line 4201 "Gmsh.y" #line 4203 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10911,7 +10913,7 @@ yyreduce: ...@@ -10911,7 +10913,7 @@ yyreduce:
break; break;
   
case 321: case 321:
#line 4207 "Gmsh.y" #line 4209 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d), ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d),
...@@ -10921,7 +10923,7 @@ yyreduce: ...@@ -10921,7 +10923,7 @@ yyreduce:
break; break;
   
case 322: case 322:
#line 4214 "Gmsh.y" #line 4216 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10930,7 +10932,7 @@ yyreduce: ...@@ -10930,7 +10932,7 @@ yyreduce:
break; break;
   
case 323: case 323:
#line 4220 "Gmsh.y" #line 4222 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d), ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d),
...@@ -10940,7 +10942,7 @@ yyreduce: ...@@ -10940,7 +10942,7 @@ yyreduce:
break; break;
   
case 324: case 324:
#line 4227 "Gmsh.y" #line 4229 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10949,7 +10951,7 @@ yyreduce: ...@@ -10949,7 +10951,7 @@ yyreduce:
break; break;
   
case 325: case 325:
#line 4233 "Gmsh.y" #line 4235 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d), ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d),
...@@ -10959,7 +10961,7 @@ yyreduce: ...@@ -10959,7 +10961,7 @@ yyreduce:
break; break;
   
case 326: case 326:
#line 4240 "Gmsh.y" #line 4242 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false;
extr.mesh.QuadToTri = NO_QUADTRI; extr.mesh.QuadToTri = NO_QUADTRI;
...@@ -10968,7 +10970,7 @@ yyreduce: ...@@ -10968,7 +10970,7 @@ yyreduce:
break; break;
   
case 327: case 327:
#line 4246 "Gmsh.y" #line 4248 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d), ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d),
...@@ -10978,19 +10980,19 @@ yyreduce: ...@@ -10978,19 +10980,19 @@ yyreduce:
break; break;
   
case 328: case 328:
#line 4257 "Gmsh.y" #line 4259 "Gmsh.y"
{ {
;} ;}
break; break;
   
case 329: case 329:
#line 4260 "Gmsh.y" #line 4262 "Gmsh.y"
{ {
;} ;}
break; break;
   
case 330: case 330:
#line 4266 "Gmsh.y" #line 4268 "Gmsh.y"
{ {
int n = (int)fabs((yyvsp[(3) - (5)].d)); int n = (int)fabs((yyvsp[(3) - (5)].d));
if(n){ // we accept n==0 to easily disable layers if(n){ // we accept n==0 to easily disable layers
...@@ -11005,7 +11007,7 @@ yyreduce: ...@@ -11005,7 +11007,7 @@ yyreduce:
break; break;
   
case 331: case 331:
#line 4278 "Gmsh.y" #line 4280 "Gmsh.y"
{ {
extr.mesh.ExtrudeMesh = true; extr.mesh.ExtrudeMesh = true;
extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l)); extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l));
...@@ -11028,7 +11030,7 @@ yyreduce: ...@@ -11028,7 +11030,7 @@ yyreduce:
break; break;
   
case 332: case 332:
#line 4298 "Gmsh.y" #line 4300 "Gmsh.y"
{ {
yymsg(1, "Explicit region numbers in layers are deprecated"); yymsg(1, "Explicit region numbers in layers are deprecated");
extr.mesh.ExtrudeMesh = true; extr.mesh.ExtrudeMesh = true;
...@@ -11054,42 +11056,42 @@ yyreduce: ...@@ -11054,42 +11056,42 @@ yyreduce:
break; break;
   
case 333: case 333:
#line 4322 "Gmsh.y" #line 4324 "Gmsh.y"
{ {
extr.mesh.ScaleLast = true; extr.mesh.ScaleLast = true;
;} ;}
break; break;
   
case 334: case 334:
#line 4326 "Gmsh.y" #line 4328 "Gmsh.y"
{ {
extr.mesh.Recombine = true; extr.mesh.Recombine = true;
;} ;}
break; break;
   
case 335: case 335:
#line 4330 "Gmsh.y" #line 4332 "Gmsh.y"
{ {
extr.mesh.Recombine = (yyvsp[(2) - (3)].d) ? true : false; extr.mesh.Recombine = (yyvsp[(2) - (3)].d) ? true : false;
;} ;}
break; break;
   
case 336: case 336:
#line 4334 "Gmsh.y" #line 4336 "Gmsh.y"
{ {
yymsg(0, "Keyword 'QuadTriSngl' deprecated. Use 'QuadTriNoNewVerts' instead."); yymsg(0, "Keyword 'QuadTriSngl' deprecated. Use 'QuadTriNoNewVerts' instead.");
;} ;}
break; break;
   
case 337: case 337:
#line 4338 "Gmsh.y" #line 4340 "Gmsh.y"
{ {
yymsg(0, "Keyword 'QuadTriSngl' deprecated. Use 'QuadTriNoNewVerts' instead."); yymsg(0, "Keyword 'QuadTriSngl' deprecated. Use 'QuadTriNoNewVerts' instead.");
;} ;}
break; break;
   
case 338: case 338:
#line 4342 "Gmsh.y" #line 4344 "Gmsh.y"
{ {
yymsg(0, "Method 'QuadTriDbl' deprecated. Use 'QuadTriAddVerts' instead, " yymsg(0, "Method 'QuadTriDbl' deprecated. Use 'QuadTriAddVerts' instead, "
"which has no requirement for the number of extrusion layers and meshes " "which has no requirement for the number of extrusion layers and meshes "
...@@ -11098,7 +11100,7 @@ yyreduce: ...@@ -11098,7 +11100,7 @@ yyreduce:
break; break;
   
case 339: case 339:
#line 4348 "Gmsh.y" #line 4350 "Gmsh.y"
{ {
yymsg(0, "Method 'QuadTriDbl' deprecated. Use 'QuadTriAddVerts' instead, " yymsg(0, "Method 'QuadTriDbl' deprecated. Use 'QuadTriAddVerts' instead, "
"which has no requirement for the number of extrusion layers and meshes " "which has no requirement for the number of extrusion layers and meshes "
...@@ -11107,35 +11109,35 @@ yyreduce: ...@@ -11107,35 +11109,35 @@ yyreduce:
break; break;
   
case 340: case 340:
#line 4354 "Gmsh.y" #line 4356 "Gmsh.y"
{ {
extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1; extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1;
;} ;}
break; break;
   
case 341: case 341:
#line 4358 "Gmsh.y" #line 4360 "Gmsh.y"
{ {
extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1_RECOMB; extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1_RECOMB;
;} ;}
break; break;
   
case 342: case 342:
#line 4362 "Gmsh.y" #line 4364 "Gmsh.y"
{ {
extr.mesh.QuadToTri = QUADTRI_NOVERTS_1; extr.mesh.QuadToTri = QUADTRI_NOVERTS_1;
;} ;}
break; break;
   
case 343: case 343:
#line 4366 "Gmsh.y" #line 4368 "Gmsh.y"
{ {
extr.mesh.QuadToTri = QUADTRI_NOVERTS_1_RECOMB; extr.mesh.QuadToTri = QUADTRI_NOVERTS_1_RECOMB;
;} ;}
break; break;
   
case 344: case 344:
#line 4370 "Gmsh.y" #line 4372 "Gmsh.y"
{ {
int num = (int)(yyvsp[(3) - (9)].d); int num = (int)(yyvsp[(3) - (9)].d);
if(FindSurface(num)){ if(FindSurface(num)){
...@@ -11157,7 +11159,7 @@ yyreduce: ...@@ -11157,7 +11159,7 @@ yyreduce:
break; break;
   
case 345: case 345:
#line 4389 "Gmsh.y" #line 4391 "Gmsh.y"
{ {
if(!strcmp((yyvsp[(2) - (6)].c), "Index")) if(!strcmp((yyvsp[(2) - (6)].c), "Index"))
extr.mesh.BoundaryLayerIndex = (yyvsp[(4) - (6)].d); extr.mesh.BoundaryLayerIndex = (yyvsp[(4) - (6)].d);
...@@ -11168,47 +11170,47 @@ yyreduce: ...@@ -11168,47 +11170,47 @@ yyreduce:
break; break;
   
case 346: case 346:
#line 4401 "Gmsh.y" #line 4403 "Gmsh.y"
{ (yyval.i) = OCC_Internals::Union; ;} { (yyval.i) = OCC_Internals::Union; ;}
break; break;
   
case 347: case 347:
#line 4402 "Gmsh.y" #line 4404 "Gmsh.y"
{ (yyval.i) = OCC_Internals::Intersection; ;} { (yyval.i) = OCC_Internals::Intersection; ;}
break; break;
   
case 348: case 348:
#line 4403 "Gmsh.y" #line 4405 "Gmsh.y"
{ (yyval.i) = OCC_Internals::Difference; ;} { (yyval.i) = OCC_Internals::Difference; ;}
break; break;
   
case 349: case 349:
#line 4404 "Gmsh.y" #line 4406 "Gmsh.y"
{ (yyval.i) = OCC_Internals::Section; ;} { (yyval.i) = OCC_Internals::Section; ;}
break; break;
   
case 350: case 350:
#line 4405 "Gmsh.y" #line 4407 "Gmsh.y"
{ (yyval.i) = OCC_Internals::Fragments; ;} { (yyval.i) = OCC_Internals::Fragments; ;}
break; break;
   
case 351: case 351:
#line 4409 "Gmsh.y" #line 4411 "Gmsh.y"
{ (yyval.i) = 0; ;} { (yyval.i) = 0; ;}
break; break;
   
case 352: case 352:
#line 4410 "Gmsh.y" #line 4412 "Gmsh.y"
{ (yyval.i) = 1; ;} { (yyval.i) = 1; ;}
break; break;
   
case 353: case 353:
#line 4411 "Gmsh.y" #line 4413 "Gmsh.y"
{ (yyval.i) = (yyvsp[(2) - (3)].d); ;} { (yyval.i) = (yyvsp[(2) - (3)].d); ;}
break; break;
   
case 354: case 354:
#line 4416 "Gmsh.y" #line 4418 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
...@@ -11244,7 +11246,7 @@ yyreduce: ...@@ -11244,7 +11246,7 @@ yyreduce:
break; break;
   
case 355: case 355:
#line 4449 "Gmsh.y" #line 4451 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(Shape)); (yyval.l) = List_Create(2, 1, sizeof(Shape));
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
...@@ -11270,7 +11272,7 @@ yyreduce: ...@@ -11270,7 +11272,7 @@ yyreduce:
break; break;
   
case 356: case 356:
#line 4476 "Gmsh.y" #line 4478 "Gmsh.y"
{ {
if(factory == "OpenCASCADE"){ if(factory == "OpenCASCADE"){
std::vector<int> shape[4], tool[4]; std::vector<int> shape[4], tool[4];
...@@ -11292,14 +11294,14 @@ yyreduce: ...@@ -11292,14 +11294,14 @@ yyreduce:
break; break;
   
case 357: case 357:
#line 4498 "Gmsh.y" #line 4500 "Gmsh.y"
{ {
(yyval.v)[0] = (yyval.v)[1] = 1.; (yyval.v)[0] = (yyval.v)[1] = 1.;
;} ;}
break; break;
   
case 358: case 358:
#line 4502 "Gmsh.y" #line 4504 "Gmsh.y"
{ {
if(!strcmp((yyvsp[(2) - (3)].c), "Progression") || !strcmp((yyvsp[(2) - (3)].c), "Power")) if(!strcmp((yyvsp[(2) - (3)].c), "Progression") || !strcmp((yyvsp[(2) - (3)].c), "Power"))
(yyval.v)[0] = 1.; (yyval.v)[0] = 1.;
...@@ -11315,14 +11317,14 @@ yyreduce: ...@@ -11315,14 +11317,14 @@ yyreduce:
break; break;
   
case 359: case 359:
#line 4517 "Gmsh.y" #line 4519 "Gmsh.y"
{ {
(yyval.i) = -1; // left (yyval.i) = -1; // left
;} ;}
break; break;
   
case 360: case 360:
#line 4521 "Gmsh.y" #line 4523 "Gmsh.y"
{ {
if(!strcmp((yyvsp[(1) - (1)].c), "Right")) if(!strcmp((yyvsp[(1) - (1)].c), "Right"))
(yyval.i) = 1; (yyval.i) = 1;
...@@ -11339,49 +11341,49 @@ yyreduce: ...@@ -11339,49 +11341,49 @@ yyreduce:
break; break;
   
case 361: case 361:
#line 4537 "Gmsh.y" #line 4539 "Gmsh.y"
{ {
(yyval.l) = List_Create(1, 1, sizeof(double)); (yyval.l) = List_Create(1, 1, sizeof(double));
;} ;}
break; break;
   
case 362: case 362:
#line 4541 "Gmsh.y" #line 4543 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(2) - (2)].l); (yyval.l) = (yyvsp[(2) - (2)].l);
;} ;}
break; break;
   
case 363: case 363:
#line 4546 "Gmsh.y" #line 4548 "Gmsh.y"
{ {
(yyval.i) = 45; (yyval.i) = 45;
;} ;}
break; break;
   
case 364: case 364:
#line 4550 "Gmsh.y" #line 4552 "Gmsh.y"
{ {
(yyval.i) = (int)(yyvsp[(2) - (2)].d); (yyval.i) = (int)(yyvsp[(2) - (2)].d);
;} ;}
break; break;
   
case 365: case 365:
#line 4556 "Gmsh.y" #line 4558 "Gmsh.y"
{ {
(yyval.l) = List_Create(1, 1, sizeof(double)); (yyval.l) = List_Create(1, 1, sizeof(double));
;} ;}
break; break;
   
case 366: case 366:
#line 4560 "Gmsh.y" #line 4562 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(2) - (2)].l); (yyval.l) = (yyvsp[(2) - (2)].l);
;} ;}
break; break;
   
case 367: case 367:
#line 4567 "Gmsh.y" #line 4569 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){
double d; double d;
...@@ -11397,7 +11399,7 @@ yyreduce: ...@@ -11397,7 +11399,7 @@ yyreduce:
break; break;
   
case 368: case 368:
#line 4580 "Gmsh.y" #line 4582 "Gmsh.y"
{ {
int type = (int)(yyvsp[(6) - (7)].v)[0]; int type = (int)(yyvsp[(6) - (7)].v)[0];
double coef = fabs((yyvsp[(6) - (7)].v)[1]); double coef = fabs((yyvsp[(6) - (7)].v)[1]);
...@@ -11456,7 +11458,7 @@ yyreduce: ...@@ -11456,7 +11458,7 @@ yyreduce:
break; break;
   
case 369: case 369:
#line 4636 "Gmsh.y" #line 4638 "Gmsh.y"
{ {
int k = List_Nbr((yyvsp[(4) - (6)].l)); int k = List_Nbr((yyvsp[(4) - (6)].l));
if(k != 0 && k != 3 && k != 4){ if(k != 0 && k != 3 && k != 4){
...@@ -11529,7 +11531,7 @@ yyreduce: ...@@ -11529,7 +11531,7 @@ yyreduce:
break; break;
   
case 370: case 370:
#line 4706 "Gmsh.y" #line 4708 "Gmsh.y"
{ {
yymsg(1, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)"); yymsg(1, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)");
List_Delete((yyvsp[(7) - (8)].l)); List_Delete((yyvsp[(7) - (8)].l));
...@@ -11537,7 +11539,7 @@ yyreduce: ...@@ -11537,7 +11539,7 @@ yyreduce:
break; break;
   
case 371: case 371:
#line 4711 "Gmsh.y" #line 4713 "Gmsh.y"
{ {
int k = List_Nbr((yyvsp[(4) - (5)].l)); int k = List_Nbr((yyvsp[(4) - (5)].l));
if(k != 0 && k != 6 && k != 8){ if(k != 0 && k != 6 && k != 8){
...@@ -11607,7 +11609,7 @@ yyreduce: ...@@ -11607,7 +11609,7 @@ yyreduce:
break; break;
   
case 372: case 372:
#line 4778 "Gmsh.y" #line 4780 "Gmsh.y"
{ {
if(!(yyvsp[(2) - (3)].l)){ if(!(yyvsp[(2) - (3)].l)){
List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Volumes); List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Volumes);
...@@ -11646,7 +11648,7 @@ yyreduce: ...@@ -11646,7 +11648,7 @@ yyreduce:
break; break;
   
case 373: case 373:
#line 4814 "Gmsh.y" #line 4816 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(4) - (8)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(4) - (8)].l)); i++){
double d; double d;
...@@ -11657,7 +11659,7 @@ yyreduce: ...@@ -11657,7 +11659,7 @@ yyreduce:
break; break;
   
case 374: case 374:
#line 4822 "Gmsh.y" #line 4824 "Gmsh.y"
{ {
if(!(yyvsp[(3) - (5)].l)){ if(!(yyvsp[(3) - (5)].l)){
List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Surfaces); List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Surfaces);
...@@ -11703,7 +11705,7 @@ yyreduce: ...@@ -11703,7 +11705,7 @@ yyreduce:
break; break;
   
case 375: case 375:
#line 4865 "Gmsh.y" #line 4867 "Gmsh.y"
{ {
if(!(yyvsp[(3) - (4)].l)){ if(!(yyvsp[(3) - (4)].l)){
List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Volumes); List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Volumes);
...@@ -11745,7 +11747,7 @@ yyreduce: ...@@ -11745,7 +11747,7 @@ yyreduce:
break; break;
   
case 376: case 376:
#line 4904 "Gmsh.y" #line 4906 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){
double d; double d;
...@@ -11768,7 +11770,7 @@ yyreduce: ...@@ -11768,7 +11770,7 @@ yyreduce:
break; break;
   
case 377: case 377:
#line 4925 "Gmsh.y" #line 4927 "Gmsh.y"
{ {
if (List_Nbr((yyvsp[(4) - (11)].l)) != List_Nbr((yyvsp[(8) - (11)].l))){ if (List_Nbr((yyvsp[(4) - (11)].l)) != List_Nbr((yyvsp[(8) - (11)].l))){
yymsg(0, "Number of master lines (%d) different from number of " yymsg(0, "Number of master lines (%d) different from number of "
...@@ -11802,7 +11804,7 @@ yyreduce: ...@@ -11802,7 +11804,7 @@ yyreduce:
break; break;
   
case 378: case 378:
#line 4957 "Gmsh.y" #line 4959 "Gmsh.y"
{ {
if (List_Nbr((yyvsp[(4) - (11)].l)) != List_Nbr((yyvsp[(8) - (11)].l))){ if (List_Nbr((yyvsp[(4) - (11)].l)) != List_Nbr((yyvsp[(8) - (11)].l))){
yymsg(0, "Number of master faces (%d) different from number of " yymsg(0, "Number of master faces (%d) different from number of "
...@@ -11831,7 +11833,7 @@ yyreduce: ...@@ -11831,7 +11833,7 @@ yyreduce:
break; break;
   
case 379: case 379:
#line 4984 "Gmsh.y" #line 4986 "Gmsh.y"
{ {
if (List_Nbr((yyvsp[(4) - (18)].l)) != List_Nbr((yyvsp[(8) - (18)].l))){ if (List_Nbr((yyvsp[(4) - (18)].l)) != List_Nbr((yyvsp[(8) - (18)].l))){
yymsg(0, "Number of master edges (%d) different from number of " yymsg(0, "Number of master edges (%d) different from number of "
...@@ -11859,7 +11861,7 @@ yyreduce: ...@@ -11859,7 +11861,7 @@ yyreduce:
break; break;
   
case 380: case 380:
#line 5010 "Gmsh.y" #line 5012 "Gmsh.y"
{ {
if (List_Nbr((yyvsp[(4) - (18)].l)) != List_Nbr((yyvsp[(8) - (18)].l))){ if (List_Nbr((yyvsp[(4) - (18)].l)) != List_Nbr((yyvsp[(8) - (18)].l))){
yymsg(0, "Number of master faces (%d) different from number of " yymsg(0, "Number of master faces (%d) different from number of "
...@@ -11887,7 +11889,7 @@ yyreduce: ...@@ -11887,7 +11889,7 @@ yyreduce:
break; break;
   
case 381: case 381:
#line 5036 "Gmsh.y" #line 5038 "Gmsh.y"
{ {
if (List_Nbr((yyvsp[(4) - (12)].l)) != List_Nbr((yyvsp[(8) - (12)].l))){ if (List_Nbr((yyvsp[(4) - (12)].l)) != List_Nbr((yyvsp[(8) - (12)].l))){
yymsg(0, "Number of master edges (%d) different from number of " yymsg(0, "Number of master edges (%d) different from number of "
...@@ -11915,7 +11917,7 @@ yyreduce: ...@@ -11915,7 +11917,7 @@ yyreduce:
break; break;
   
case 382: case 382:
#line 5062 "Gmsh.y" #line 5064 "Gmsh.y"
{ {
if (List_Nbr((yyvsp[(4) - (12)].l)) != List_Nbr((yyvsp[(8) - (12)].l))){ if (List_Nbr((yyvsp[(4) - (12)].l)) != List_Nbr((yyvsp[(8) - (12)].l))){
yymsg(0, "Number of master faces (%d) different from number of " yymsg(0, "Number of master faces (%d) different from number of "
...@@ -11943,7 +11945,7 @@ yyreduce: ...@@ -11943,7 +11945,7 @@ yyreduce:
break; break;
   
case 383: case 383:
#line 5088 "Gmsh.y" #line 5090 "Gmsh.y"
{ {
if (List_Nbr((yyvsp[(5) - (12)].l)) != List_Nbr((yyvsp[(10) - (12)].l))){ if (List_Nbr((yyvsp[(5) - (12)].l)) != List_Nbr((yyvsp[(10) - (12)].l))){
yymsg(0, "Number of master surface edges (%d) different from number of " yymsg(0, "Number of master surface edges (%d) different from number of "
...@@ -11967,7 +11969,7 @@ yyreduce: ...@@ -11967,7 +11969,7 @@ yyreduce:
break; break;
   
case 384: case 384:
#line 5109 "Gmsh.y" #line 5111 "Gmsh.y"
{ {
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags);
addEmbedded(0, tags, 2, (int)(yyvsp[(8) - (10)].d)); addEmbedded(0, tags, 2, (int)(yyvsp[(8) - (10)].d));
...@@ -11976,7 +11978,7 @@ yyreduce: ...@@ -11976,7 +11978,7 @@ yyreduce:
break; break;
   
case 385: case 385:
#line 5115 "Gmsh.y" #line 5117 "Gmsh.y"
{ {
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags);
addEmbedded(1, tags, 2, (int)(yyvsp[(8) - (10)].d)); addEmbedded(1, tags, 2, (int)(yyvsp[(8) - (10)].d));
...@@ -11985,7 +11987,7 @@ yyreduce: ...@@ -11985,7 +11987,7 @@ yyreduce:
break; break;
   
case 386: case 386:
#line 5121 "Gmsh.y" #line 5123 "Gmsh.y"
{ {
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags);
addEmbedded(0, tags, 3, (int)(yyvsp[(8) - (10)].d)); addEmbedded(0, tags, 3, (int)(yyvsp[(8) - (10)].d));
...@@ -11994,7 +11996,7 @@ yyreduce: ...@@ -11994,7 +11996,7 @@ yyreduce:
break; break;
   
case 387: case 387:
#line 5127 "Gmsh.y" #line 5129 "Gmsh.y"
{ {
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags);
addEmbedded(1, tags, 3, (int)(yyvsp[(8) - (10)].d)); addEmbedded(1, tags, 3, (int)(yyvsp[(8) - (10)].d));
...@@ -12003,7 +12005,7 @@ yyreduce: ...@@ -12003,7 +12005,7 @@ yyreduce:
break; break;
   
case 388: case 388:
#line 5133 "Gmsh.y" #line 5135 "Gmsh.y"
{ {
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags);
addEmbedded(2, tags, 3, (int)(yyvsp[(8) - (10)].d)); addEmbedded(2, tags, 3, (int)(yyvsp[(8) - (10)].d));
...@@ -12012,7 +12014,7 @@ yyreduce: ...@@ -12012,7 +12014,7 @@ yyreduce:
break; break;
   
case 389: case 389:
#line 5139 "Gmsh.y" #line 5141 "Gmsh.y"
{ {
if(!(yyvsp[(3) - (4)].l)){ if(!(yyvsp[(3) - (4)].l)){
List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Surfaces); List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Surfaces);
...@@ -12054,7 +12056,7 @@ yyreduce: ...@@ -12054,7 +12056,7 @@ yyreduce:
break; break;
   
case 390: case 390:
#line 5178 "Gmsh.y" #line 5180 "Gmsh.y"
{ {
if(!(yyvsp[(3) - (4)].l)){ if(!(yyvsp[(3) - (4)].l)){
List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Curves); List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Curves);
...@@ -12096,7 +12098,7 @@ yyreduce: ...@@ -12096,7 +12098,7 @@ yyreduce:
break; break;
   
case 391: case 391:
#line 5217 "Gmsh.y" #line 5219 "Gmsh.y"
{ {
if(!(yyvsp[(3) - (4)].l)){ if(!(yyvsp[(3) - (4)].l)){
for(GModel::viter it = GModel::current()->firstVertex(); for(GModel::viter it = GModel::current()->firstVertex();
...@@ -12116,7 +12118,7 @@ yyreduce: ...@@ -12116,7 +12118,7 @@ yyreduce:
break; break;
   
case 392: case 392:
#line 5234 "Gmsh.y" #line 5236 "Gmsh.y"
{ {
if(!(yyvsp[(3) - (4)].l)){ if(!(yyvsp[(3) - (4)].l)){
for(GModel::eiter it = GModel::current()->firstEdge(); for(GModel::eiter it = GModel::current()->firstEdge();
...@@ -12136,7 +12138,7 @@ yyreduce: ...@@ -12136,7 +12138,7 @@ yyreduce:
break; break;
   
case 393: case 393:
#line 5251 "Gmsh.y" #line 5253 "Gmsh.y"
{ {
if(!(yyvsp[(3) - (4)].l)){ if(!(yyvsp[(3) - (4)].l)){
for(GModel::fiter it = GModel::current()->firstFace(); for(GModel::fiter it = GModel::current()->firstFace();
...@@ -12156,7 +12158,7 @@ yyreduce: ...@@ -12156,7 +12158,7 @@ yyreduce:
break; break;
   
case 394: case 394:
#line 5268 "Gmsh.y" #line 5270 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){
double dnum; double dnum;
...@@ -12171,7 +12173,7 @@ yyreduce: ...@@ -12171,7 +12173,7 @@ yyreduce:
break; break;
   
case 395: case 395:
#line 5280 "Gmsh.y" #line 5282 "Gmsh.y"
{ {
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags);
GModel::current()->getGEOInternals()->setCompoundMesh(1, tags); GModel::current()->getGEOInternals()->setCompoundMesh(1, tags);
...@@ -12180,7 +12182,7 @@ yyreduce: ...@@ -12180,7 +12182,7 @@ yyreduce:
break; break;
   
case 396: case 396:
#line 5286 "Gmsh.y" #line 5288 "Gmsh.y"
{ {
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags);
GModel::current()->getGEOInternals()->setCompoundMesh(2, tags); GModel::current()->getGEOInternals()->setCompoundMesh(2, tags);
...@@ -12189,7 +12191,7 @@ yyreduce: ...@@ -12189,7 +12191,7 @@ yyreduce:
break; break;
   
case 397: case 397:
#line 5292 "Gmsh.y" #line 5294 "Gmsh.y"
{ {
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags);
GModel::current()->getGEOInternals()->setCompoundMesh(3, tags); GModel::current()->getGEOInternals()->setCompoundMesh(3, tags);
...@@ -12198,14 +12200,14 @@ yyreduce: ...@@ -12198,14 +12200,14 @@ yyreduce:
break; break;
   
case 398: case 398:
#line 5304 "Gmsh.y" #line 5306 "Gmsh.y"
{ {
GModel::current()->getGEOInternals()->removeAllDuplicates(); GModel::current()->getGEOInternals()->removeAllDuplicates();
;} ;}
break; break;
   
case 399: case 399:
#line 5308 "Gmsh.y" #line 5310 "Gmsh.y"
{ {
if(!strcmp((yyvsp[(2) - (3)].c), "Geometry")) if(!strcmp((yyvsp[(2) - (3)].c), "Geometry"))
GModel::current()->getGEOInternals()->removeAllDuplicates(); GModel::current()->getGEOInternals()->removeAllDuplicates();
...@@ -12218,7 +12220,7 @@ yyreduce: ...@@ -12218,7 +12220,7 @@ yyreduce:
break; break;
   
case 400: case 400:
#line 5318 "Gmsh.y" #line 5320 "Gmsh.y"
{ {
std::vector<int> tags; ListOfDouble2Vector((yyvsp[(4) - (6)].l), tags); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(4) - (6)].l), tags);
GModel::current()->getGEOInternals()->mergeVertices(tags); GModel::current()->getGEOInternals()->mergeVertices(tags);
...@@ -12227,22 +12229,22 @@ yyreduce: ...@@ -12227,22 +12229,22 @@ yyreduce:
break; break;
   
case 401: case 401:
#line 5328 "Gmsh.y" #line 5330 "Gmsh.y"
{ (yyval.c) = (char*)"Homology"; ;} { (yyval.c) = (char*)"Homology"; ;}
break; break;
   
case 402: case 402:
#line 5329 "Gmsh.y" #line 5331 "Gmsh.y"
{ (yyval.c) = (char*)"Cohomology"; ;} { (yyval.c) = (char*)"Cohomology"; ;}
break; break;
   
case 403: case 403:
#line 5330 "Gmsh.y" #line 5332 "Gmsh.y"
{ (yyval.c) = (char*)"Betti"; ;} { (yyval.c) = (char*)"Betti"; ;}
break; break;
   
case 404: case 404:
#line 5335 "Gmsh.y" #line 5337 "Gmsh.y"
{ {
std::vector<int> domain, subdomain, dim; std::vector<int> domain, subdomain, dim;
for(int i = 0; i < 4; i++) dim.push_back(i); for(int i = 0; i < 4; i++) dim.push_back(i);
...@@ -12251,7 +12253,7 @@ yyreduce: ...@@ -12251,7 +12253,7 @@ yyreduce:
break; break;
   
case 405: case 405:
#line 5341 "Gmsh.y" #line 5343 "Gmsh.y"
{ {
std::vector<int> domain, subdomain, dim; std::vector<int> domain, subdomain, dim;
for(int i = 0; i < List_Nbr((yyvsp[(3) - (5)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(3) - (5)].l)); i++){
...@@ -12266,7 +12268,7 @@ yyreduce: ...@@ -12266,7 +12268,7 @@ yyreduce:
break; break;
   
case 406: case 406:
#line 5353 "Gmsh.y" #line 5355 "Gmsh.y"
{ {
std::vector<int> domain, subdomain, dim; std::vector<int> domain, subdomain, dim;
for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){
...@@ -12287,7 +12289,7 @@ yyreduce: ...@@ -12287,7 +12289,7 @@ yyreduce:
break; break;
   
case 407: case 407:
#line 5371 "Gmsh.y" #line 5373 "Gmsh.y"
{ {
std::vector<int> domain, subdomain, dim; std::vector<int> domain, subdomain, dim;
for(int i = 0; i < List_Nbr((yyvsp[(6) - (10)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(6) - (10)].l)); i++){
...@@ -12313,47 +12315,47 @@ yyreduce: ...@@ -12313,47 +12315,47 @@ yyreduce:
break; break;
   
case 408: case 408:
#line 5398 "Gmsh.y" #line 5400 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (1)].d); ;} { (yyval.d) = (yyvsp[(1) - (1)].d); ;}
break; break;
   
case 409: case 409:
#line 5399 "Gmsh.y" #line 5401 "Gmsh.y"
{ (yyval.d) = (yyvsp[(2) - (3)].d); ;} { (yyval.d) = (yyvsp[(2) - (3)].d); ;}
break; break;
   
case 410: case 410:
#line 5400 "Gmsh.y" #line 5402 "Gmsh.y"
{ (yyval.d) = -(yyvsp[(2) - (2)].d); ;} { (yyval.d) = -(yyvsp[(2) - (2)].d); ;}
break; break;
   
case 411: case 411:
#line 5401 "Gmsh.y" #line 5403 "Gmsh.y"
{ (yyval.d) = (yyvsp[(2) - (2)].d); ;} { (yyval.d) = (yyvsp[(2) - (2)].d); ;}
break; break;
   
case 412: case 412:
#line 5402 "Gmsh.y" #line 5404 "Gmsh.y"
{ (yyval.d) = !(yyvsp[(2) - (2)].d); ;} { (yyval.d) = !(yyvsp[(2) - (2)].d); ;}
break; break;
   
case 413: case 413:
#line 5403 "Gmsh.y" #line 5405 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;}
break; break;
   
case 414: case 414:
#line 5404 "Gmsh.y" #line 5406 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;}
break; break;
   
case 415: case 415:
#line 5405 "Gmsh.y" #line 5407 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;}
break; break;
   
case 416: case 416:
#line 5407 "Gmsh.y" #line 5409 "Gmsh.y"
{ {
if(!(yyvsp[(3) - (3)].d)) if(!(yyvsp[(3) - (3)].d))
yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d));
...@@ -12363,232 +12365,232 @@ yyreduce: ...@@ -12363,232 +12365,232 @@ yyreduce:
break; break;
   
case 417: case 417:
#line 5413 "Gmsh.y" #line 5415 "Gmsh.y"
{ (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;}
break; break;
   
case 418: case 418:
#line 5414 "Gmsh.y" #line 5416 "Gmsh.y"
{ (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;}
break; break;
   
case 419: case 419:
#line 5415 "Gmsh.y" #line 5417 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;}
break; break;
   
case 420: case 420:
#line 5416 "Gmsh.y" #line 5418 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;}
break; break;
   
case 421: case 421:
#line 5417 "Gmsh.y" #line 5419 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;}
break; break;
   
case 422: case 422:
#line 5418 "Gmsh.y" #line 5420 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;}
break; break;
   
case 423: case 423:
#line 5419 "Gmsh.y" #line 5421 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;}
break; break;
   
case 424: case 424:
#line 5420 "Gmsh.y" #line 5422 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;}
break; break;
   
case 425: case 425:
#line 5421 "Gmsh.y" #line 5423 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;}
break; break;
   
case 426: case 426:
#line 5422 "Gmsh.y" #line 5424 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;}
break; break;
   
case 427: case 427:
#line 5423 "Gmsh.y" #line 5425 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;}
break; break;
   
case 428: case 428:
#line 5424 "Gmsh.y" #line 5426 "Gmsh.y"
{ (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 429: case 429:
#line 5425 "Gmsh.y" #line 5427 "Gmsh.y"
{ (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 430: case 430:
#line 5426 "Gmsh.y" #line 5428 "Gmsh.y"
{ (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 431: case 431:
#line 5427 "Gmsh.y" #line 5429 "Gmsh.y"
{ (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 432: case 432:
#line 5428 "Gmsh.y" #line 5430 "Gmsh.y"
{ (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 433: case 433:
#line 5429 "Gmsh.y" #line 5431 "Gmsh.y"
{ (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 434: case 434:
#line 5430 "Gmsh.y" #line 5432 "Gmsh.y"
{ (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 435: case 435:
#line 5431 "Gmsh.y" #line 5433 "Gmsh.y"
{ (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 436: case 436:
#line 5432 "Gmsh.y" #line 5434 "Gmsh.y"
{ (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 437: case 437:
#line 5433 "Gmsh.y" #line 5435 "Gmsh.y"
{ (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 438: case 438:
#line 5434 "Gmsh.y" #line 5436 "Gmsh.y"
{ (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;}
break; break;
   
case 439: case 439:
#line 5435 "Gmsh.y" #line 5437 "Gmsh.y"
{ (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 440: case 440:
#line 5436 "Gmsh.y" #line 5438 "Gmsh.y"
{ (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 441: case 441:
#line 5437 "Gmsh.y" #line 5439 "Gmsh.y"
{ (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 442: case 442:
#line 5438 "Gmsh.y" #line 5440 "Gmsh.y"
{ (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 443: case 443:
#line 5439 "Gmsh.y" #line 5441 "Gmsh.y"
{ (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 444: case 444:
#line 5440 "Gmsh.y" #line 5442 "Gmsh.y"
{ (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;}
break; break;
   
case 445: case 445:
#line 5441 "Gmsh.y" #line 5443 "Gmsh.y"
{ (yyval.d) = floor((yyvsp[(3) - (4)].d) + 0.5); ;} { (yyval.d) = floor((yyvsp[(3) - (4)].d) + 0.5); ;}
break; break;
   
case 446: case 446:
#line 5442 "Gmsh.y" #line 5444 "Gmsh.y"
{ (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;}
break; break;
   
case 447: case 447:
#line 5443 "Gmsh.y" #line 5445 "Gmsh.y"
{ (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;}
break; break;
   
case 448: case 448:
#line 5444 "Gmsh.y" #line 5446 "Gmsh.y"
{ (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;}
break; break;
   
case 449: case 449:
#line 5445 "Gmsh.y" #line 5447 "Gmsh.y"
{ (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;}
break; break;
   
case 450: case 450:
#line 5454 "Gmsh.y" #line 5456 "Gmsh.y"
{ (yyval.d) = (yyvsp[(1) - (1)].d); ;} { (yyval.d) = (yyvsp[(1) - (1)].d); ;}
break; break;
   
case 451: case 451:
#line 5455 "Gmsh.y" #line 5457 "Gmsh.y"
{ (yyval.d) = 3.141592653589793; ;} { (yyval.d) = 3.141592653589793; ;}
break; break;
   
case 452: case 452:
#line 5456 "Gmsh.y" #line 5458 "Gmsh.y"
{ (yyval.d) = (double)ImbricatedTest; ;} { (yyval.d) = (double)ImbricatedTest; ;}
break; break;
   
case 453: case 453:
#line 5457 "Gmsh.y" #line 5459 "Gmsh.y"
{ (yyval.d) = Msg::GetCommRank(); ;} { (yyval.d) = Msg::GetCommRank(); ;}
break; break;
   
case 454: case 454:
#line 5458 "Gmsh.y" #line 5460 "Gmsh.y"
{ (yyval.d) = Msg::GetCommSize(); ;} { (yyval.d) = Msg::GetCommSize(); ;}
break; break;
   
case 455: case 455:
#line 5459 "Gmsh.y" #line 5461 "Gmsh.y"
{ (yyval.d) = GetGmshMajorVersion(); ;} { (yyval.d) = GetGmshMajorVersion(); ;}
break; break;
   
case 456: case 456:
#line 5460 "Gmsh.y" #line 5462 "Gmsh.y"
{ (yyval.d) = GetGmshMinorVersion(); ;} { (yyval.d) = GetGmshMinorVersion(); ;}
break; break;
   
case 457: case 457:
#line 5461 "Gmsh.y" #line 5463 "Gmsh.y"
{ (yyval.d) = GetGmshPatchVersion(); ;} { (yyval.d) = GetGmshPatchVersion(); ;}
break; break;
   
case 458: case 458:
#line 5462 "Gmsh.y" #line 5464 "Gmsh.y"
{ (yyval.d) = Cpu(); ;} { (yyval.d) = Cpu(); ;}
break; break;
   
case 459: case 459:
#line 5463 "Gmsh.y" #line 5465 "Gmsh.y"
{ (yyval.d) = GetMemoryUsage()/1024./1024.; ;} { (yyval.d) = GetMemoryUsage()/1024./1024.; ;}
break; break;
   
case 460: case 460:
#line 5464 "Gmsh.y" #line 5466 "Gmsh.y"
{ (yyval.d) = TotalRam(); ;} { (yyval.d) = TotalRam(); ;}
break; break;
   
case 461: case 461:
#line 5469 "Gmsh.y" #line 5471 "Gmsh.y"
{ floatOptions.clear(); charOptions.clear(); ;} { floatOptions.clear(); charOptions.clear(); ;}
break; break;
   
case 462: case 462:
#line 5471 "Gmsh.y" #line 5473 "Gmsh.y"
{ {
std::vector<double> val(1, (yyvsp[(3) - (6)].d)); std::vector<double> val(1, (yyvsp[(3) - (6)].d));
Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions); Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions);
...@@ -12597,7 +12599,7 @@ yyreduce: ...@@ -12597,7 +12599,7 @@ yyreduce:
break; break;
   
case 463: case 463:
#line 5477 "Gmsh.y" #line 5479 "Gmsh.y"
{ {
(yyval.d) = Msg::GetOnelabNumber((yyvsp[(3) - (4)].c)); (yyval.d) = Msg::GetOnelabNumber((yyvsp[(3) - (4)].c));
Free((yyvsp[(3) - (4)].c)); Free((yyvsp[(3) - (4)].c));
...@@ -12605,7 +12607,7 @@ yyreduce: ...@@ -12605,7 +12607,7 @@ yyreduce:
break; break;
   
case 464: case 464:
#line 5482 "Gmsh.y" #line 5484 "Gmsh.y"
{ {
(yyval.d) = Msg::GetOnelabNumber((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); (yyval.d) = Msg::GetOnelabNumber((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d));
Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(3) - (6)].c));
...@@ -12613,7 +12615,7 @@ yyreduce: ...@@ -12613,7 +12615,7 @@ yyreduce:
break; break;
   
case 465: case 465:
#line 5487 "Gmsh.y" #line 5489 "Gmsh.y"
{ {
if(!gmsh_yysymbols.count((yyvsp[(1) - (1)].c))){ if(!gmsh_yysymbols.count((yyvsp[(1) - (1)].c))){
yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (1)].c)); yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (1)].c));
...@@ -12633,7 +12635,7 @@ yyreduce: ...@@ -12633,7 +12635,7 @@ yyreduce:
break; break;
   
case 466: case 466:
#line 5504 "Gmsh.y" #line 5506 "Gmsh.y"
{ {
int index = (int)(yyvsp[(3) - (4)].d); int index = (int)(yyvsp[(3) - (4)].d);
if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){
...@@ -12654,7 +12656,7 @@ yyreduce: ...@@ -12654,7 +12656,7 @@ yyreduce:
break; break;
   
case 467: case 467:
#line 5522 "Gmsh.y" #line 5524 "Gmsh.y"
{ {
int index = (int)(yyvsp[(3) - (4)].d); int index = (int)(yyvsp[(3) - (4)].d);
if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){
...@@ -12675,7 +12677,7 @@ yyreduce: ...@@ -12675,7 +12677,7 @@ yyreduce:
break; break;
   
case 468: case 468:
#line 5540 "Gmsh.y" #line 5542 "Gmsh.y"
{ {
int index = (int)(yyvsp[(3) - (4)].d); int index = (int)(yyvsp[(3) - (4)].d);
if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){
...@@ -12696,7 +12698,7 @@ yyreduce: ...@@ -12696,7 +12698,7 @@ yyreduce:
break; break;
   
case 469: case 469:
#line 5558 "Gmsh.y" #line 5560 "Gmsh.y"
{ {
int index = (int)(yyvsp[(3) - (4)].d); int index = (int)(yyvsp[(3) - (4)].d);
if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){
...@@ -12717,7 +12719,7 @@ yyreduce: ...@@ -12717,7 +12719,7 @@ yyreduce:
break; break;
   
case 470: case 470:
#line 5576 "Gmsh.y" #line 5578 "Gmsh.y"
{ {
(yyval.d) = gmsh_yysymbols.count((yyvsp[(3) - (4)].c)); (yyval.d) = gmsh_yysymbols.count((yyvsp[(3) - (4)].c));
Free((yyvsp[(3) - (4)].c)); Free((yyvsp[(3) - (4)].c));
...@@ -12725,7 +12727,7 @@ yyreduce: ...@@ -12725,7 +12727,7 @@ yyreduce:
break; break;
   
case 471: case 471:
#line 5581 "Gmsh.y" #line 5583 "Gmsh.y"
{ {
std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c)); std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c));
(yyval.d) = !StatFile(tmp); (yyval.d) = !StatFile(tmp);
...@@ -12734,7 +12736,7 @@ yyreduce: ...@@ -12734,7 +12736,7 @@ yyreduce:
break; break;
   
case 472: case 472:
#line 5587 "Gmsh.y" #line 5589 "Gmsh.y"
{ {
if(gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){ if(gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){
gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(2) - (4)].c)]); gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(2) - (4)].c)]);
...@@ -12752,7 +12754,7 @@ yyreduce: ...@@ -12752,7 +12754,7 @@ yyreduce:
break; break;
   
case 473: case 473:
#line 5602 "Gmsh.y" #line 5604 "Gmsh.y"
{ {
if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){ if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){
yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (2)].c)); yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (2)].c));
...@@ -12774,7 +12776,7 @@ yyreduce: ...@@ -12774,7 +12776,7 @@ yyreduce:
break; break;
   
case 474: case 474:
#line 5621 "Gmsh.y" #line 5623 "Gmsh.y"
{ {
int index = (int)(yyvsp[(3) - (5)].d); int index = (int)(yyvsp[(3) - (5)].d);
if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){
...@@ -12797,7 +12799,7 @@ yyreduce: ...@@ -12797,7 +12799,7 @@ yyreduce:
break; break;
   
case 475: case 475:
#line 5641 "Gmsh.y" #line 5643 "Gmsh.y"
{ {
int index = (int)(yyvsp[(3) - (5)].d); int index = (int)(yyvsp[(3) - (5)].d);
if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){
...@@ -12820,7 +12822,7 @@ yyreduce: ...@@ -12820,7 +12822,7 @@ yyreduce:
break; break;
   
case 476: case 476:
#line 5661 "Gmsh.y" #line 5663 "Gmsh.y"
{ {
int index = (int)(yyvsp[(3) - (5)].d); int index = (int)(yyvsp[(3) - (5)].d);
if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){
...@@ -12843,7 +12845,7 @@ yyreduce: ...@@ -12843,7 +12845,7 @@ yyreduce:
break; break;
   
case 477: case 477:
#line 5681 "Gmsh.y" #line 5683 "Gmsh.y"
{ {
int index = (int)(yyvsp[(3) - (5)].d); int index = (int)(yyvsp[(3) - (5)].d);
if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){
...@@ -12866,7 +12868,7 @@ yyreduce: ...@@ -12866,7 +12868,7 @@ yyreduce:
break; break;
   
case 478: case 478:
#line 5704 "Gmsh.y" #line 5706 "Gmsh.y"
{ {
NumberOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), (yyval.d)); NumberOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), (yyval.d));
Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c));
...@@ -12874,7 +12876,7 @@ yyreduce: ...@@ -12874,7 +12876,7 @@ yyreduce:
break; break;
   
case 479: case 479:
#line 5709 "Gmsh.y" #line 5711 "Gmsh.y"
{ {
NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), (yyval.d)); NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), (yyval.d));
Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c));
...@@ -12882,7 +12884,7 @@ yyreduce: ...@@ -12882,7 +12884,7 @@ yyreduce:
break; break;
   
case 480: case 480:
#line 5714 "Gmsh.y" #line 5716 "Gmsh.y"
{ {
double d = 0.; double d = 0.;
if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){ if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){
...@@ -12895,7 +12897,7 @@ yyreduce: ...@@ -12895,7 +12897,7 @@ yyreduce:
break; break;
   
case 481: case 481:
#line 5724 "Gmsh.y" #line 5726 "Gmsh.y"
{ {
double d = 0.; double d = 0.;
if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){ if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){
...@@ -12908,7 +12910,7 @@ yyreduce: ...@@ -12908,7 +12910,7 @@ yyreduce:
break; break;
   
case 482: case 482:
#line 5734 "Gmsh.y" #line 5736 "Gmsh.y"
{ {
(yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d));
Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(3) - (6)].c));
...@@ -12916,7 +12918,7 @@ yyreduce: ...@@ -12916,7 +12918,7 @@ yyreduce:
break; break;
   
case 483: case 483:
#line 5739 "Gmsh.y" #line 5741 "Gmsh.y"
{ {
int matches = 0; int matches = 0;
for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){
...@@ -12930,7 +12932,7 @@ yyreduce: ...@@ -12930,7 +12932,7 @@ yyreduce:
break; break;
   
case 484: case 484:
#line 5750 "Gmsh.y" #line 5752 "Gmsh.y"
{ {
std::string s((yyvsp[(3) - (6)].c)), substr((yyvsp[(5) - (6)].c)); std::string s((yyvsp[(3) - (6)].c)), substr((yyvsp[(5) - (6)].c));
if(s.find(substr) != std::string::npos) if(s.find(substr) != std::string::npos)
...@@ -12942,7 +12944,7 @@ yyreduce: ...@@ -12942,7 +12944,7 @@ yyreduce:
break; break;
   
case 485: case 485:
#line 5759 "Gmsh.y" #line 5761 "Gmsh.y"
{ {
(yyval.d) = strlen((yyvsp[(3) - (4)].c)); (yyval.d) = strlen((yyvsp[(3) - (4)].c));
Free((yyvsp[(3) - (4)].c)); Free((yyvsp[(3) - (4)].c));
...@@ -12950,7 +12952,7 @@ yyreduce: ...@@ -12950,7 +12952,7 @@ yyreduce:
break; break;
   
case 486: case 486:
#line 5764 "Gmsh.y" #line 5766 "Gmsh.y"
{ {
(yyval.d) = strcmp((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); (yyval.d) = strcmp((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c));
Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c));
...@@ -12958,7 +12960,7 @@ yyreduce: ...@@ -12958,7 +12960,7 @@ yyreduce:
break; break;
   
case 487: case 487:
#line 5769 "Gmsh.y" #line 5771 "Gmsh.y"
{ {
int align = 0, font = 0, fontsize = CTX::instance()->glFontSize; int align = 0, font = 0, fontsize = CTX::instance()->glFontSize;
if(List_Nbr((yyvsp[(3) - (4)].l)) % 2){ if(List_Nbr((yyvsp[(3) - (4)].l)) % 2){
...@@ -12985,70 +12987,70 @@ yyreduce: ...@@ -12985,70 +12987,70 @@ yyreduce:
break; break;
   
case 488: case 488:
#line 5796 "Gmsh.y" #line 5798 "Gmsh.y"
{ {
memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double));
;} ;}
break; break;
   
case 489: case 489:
#line 5800 "Gmsh.y" #line 5802 "Gmsh.y"
{ {
for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i];
;} ;}
break; break;
   
case 490: case 490:
#line 5804 "Gmsh.y" #line 5806 "Gmsh.y"
{ {
for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i];
;} ;}
break; break;
   
case 491: case 491:
#line 5808 "Gmsh.y" #line 5810 "Gmsh.y"
{ {
for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i];
;} ;}
break; break;
   
case 492: case 492:
#line 5812 "Gmsh.y" #line 5814 "Gmsh.y"
{ {
for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i];
;} ;}
break; break;
   
case 493: case 493:
#line 5819 "Gmsh.y" #line 5821 "Gmsh.y"
{ {
(yyval.v)[0] = (yyvsp[(2) - (11)].d); (yyval.v)[1] = (yyvsp[(4) - (11)].d); (yyval.v)[2] = (yyvsp[(6) - (11)].d); (yyval.v)[3] = (yyvsp[(8) - (11)].d); (yyval.v)[4] = (yyvsp[(10) - (11)].d); (yyval.v)[0] = (yyvsp[(2) - (11)].d); (yyval.v)[1] = (yyvsp[(4) - (11)].d); (yyval.v)[2] = (yyvsp[(6) - (11)].d); (yyval.v)[3] = (yyvsp[(8) - (11)].d); (yyval.v)[4] = (yyvsp[(10) - (11)].d);
;} ;}
break; break;
   
case 494: case 494:
#line 5823 "Gmsh.y" #line 5825 "Gmsh.y"
{ {
(yyval.v)[0] = (yyvsp[(2) - (9)].d); (yyval.v)[1] = (yyvsp[(4) - (9)].d); (yyval.v)[2] = (yyvsp[(6) - (9)].d); (yyval.v)[3] = (yyvsp[(8) - (9)].d); (yyval.v)[4] = 1.0; (yyval.v)[0] = (yyvsp[(2) - (9)].d); (yyval.v)[1] = (yyvsp[(4) - (9)].d); (yyval.v)[2] = (yyvsp[(6) - (9)].d); (yyval.v)[3] = (yyvsp[(8) - (9)].d); (yyval.v)[4] = 1.0;
;} ;}
break; break;
   
case 495: case 495:
#line 5827 "Gmsh.y" #line 5829 "Gmsh.y"
{ {
(yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0;
;} ;}
break; break;
   
case 496: case 496:
#line 5831 "Gmsh.y" #line 5833 "Gmsh.y"
{ {
(yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0;
;} ;}
break; break;
   
case 497: case 497:
#line 5838 "Gmsh.y" #line 5840 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(List_T*)); (yyval.l) = List_Create(2, 1, sizeof(List_T*));
List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); List_Add((yyval.l), &((yyvsp[(1) - (1)].l)));
...@@ -13056,14 +13058,14 @@ yyreduce: ...@@ -13056,14 +13058,14 @@ yyreduce:
break; break;
   
case 498: case 498:
#line 5843 "Gmsh.y" #line 5845 "Gmsh.y"
{ {
List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); List_Add((yyval.l), &((yyvsp[(3) - (3)].l)));
;} ;}
break; break;
   
case 499: case 499:
#line 5850 "Gmsh.y" #line 5852 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(double)); (yyval.l) = List_Create(2, 1, sizeof(double));
List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); List_Add((yyval.l), &((yyvsp[(1) - (1)].d)));
...@@ -13071,14 +13073,14 @@ yyreduce: ...@@ -13071,14 +13073,14 @@ yyreduce:
break; break;
   
case 500: case 500:
#line 5855 "Gmsh.y" #line 5857 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(1) - (1)].l); (yyval.l) = (yyvsp[(1) - (1)].l);
;} ;}
break; break;
   
case 501: case 501:
#line 5859 "Gmsh.y" #line 5861 "Gmsh.y"
{ {
// creates an empty list // creates an empty list
(yyval.l) = List_Create(2, 1, sizeof(double)); (yyval.l) = List_Create(2, 1, sizeof(double));
...@@ -13086,14 +13088,14 @@ yyreduce: ...@@ -13086,14 +13088,14 @@ yyreduce:
break; break;
   
case 502: case 502:
#line 5864 "Gmsh.y" #line 5866 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(2) - (3)].l); (yyval.l) = (yyvsp[(2) - (3)].l);
;} ;}
break; break;
   
case 503: case 503:
#line 5868 "Gmsh.y" #line 5870 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(3) - (4)].l); (yyval.l) = (yyvsp[(3) - (4)].l);
for(int i = 0; i < List_Nbr((yyval.l)); i++){ for(int i = 0; i < List_Nbr((yyval.l)); i++){
...@@ -13104,7 +13106,7 @@ yyreduce: ...@@ -13104,7 +13106,7 @@ yyreduce:
break; break;
   
case 504: case 504:
#line 5876 "Gmsh.y" #line 5878 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(4) - (5)].l); (yyval.l) = (yyvsp[(4) - (5)].l);
for(int i = 0; i < List_Nbr((yyval.l)); i++){ for(int i = 0; i < List_Nbr((yyval.l)); i++){
...@@ -13115,14 +13117,14 @@ yyreduce: ...@@ -13115,14 +13117,14 @@ yyreduce:
break; break;
   
case 505: case 505:
#line 5887 "Gmsh.y" #line 5889 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(1) - (1)].l); (yyval.l) = (yyvsp[(1) - (1)].l);
;} ;}
break; break;
   
case 506: case 506:
#line 5891 "Gmsh.y" #line 5893 "Gmsh.y"
{ {
if(!strcmp((yyvsp[(1) - (1)].c), "*") || !strcmp((yyvsp[(1) - (1)].c), "all")) if(!strcmp((yyvsp[(1) - (1)].c), "*") || !strcmp((yyvsp[(1) - (1)].c), "all"))
(yyval.l) = 0; (yyval.l) = 0;
...@@ -13134,7 +13136,7 @@ yyreduce: ...@@ -13134,7 +13136,7 @@ yyreduce:
break; break;
   
case 507: case 507:
#line 5903 "Gmsh.y" #line 5905 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(2) - (2)].l); (yyval.l) = (yyvsp[(2) - (2)].l);
for(int i = 0; i < List_Nbr((yyval.l)); i++){ for(int i = 0; i < List_Nbr((yyval.l)); i++){
...@@ -13145,7 +13147,7 @@ yyreduce: ...@@ -13145,7 +13147,7 @@ yyreduce:
break; break;
   
case 508: case 508:
#line 5911 "Gmsh.y" #line 5913 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(3) - (3)].l); (yyval.l) = (yyvsp[(3) - (3)].l);
for(int i = 0; i < List_Nbr((yyval.l)); i++){ for(int i = 0; i < List_Nbr((yyval.l)); i++){
...@@ -13156,7 +13158,7 @@ yyreduce: ...@@ -13156,7 +13158,7 @@ yyreduce:
break; break;
   
case 509: case 509:
#line 5919 "Gmsh.y" #line 5921 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(double)); (yyval.l) = List_Create(2, 1, sizeof(double));
for(double d = (yyvsp[(1) - (3)].d); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d <= (yyvsp[(3) - (3)].d)) : (d >= (yyvsp[(3) - (3)].d)); for(double d = (yyvsp[(1) - (3)].d); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d <= (yyvsp[(3) - (3)].d)) : (d >= (yyvsp[(3) - (3)].d));
...@@ -13166,7 +13168,7 @@ yyreduce: ...@@ -13166,7 +13168,7 @@ yyreduce:
break; break;
   
case 510: case 510:
#line 5926 "Gmsh.y" #line 5928 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(double)); (yyval.l) = List_Create(2, 1, sizeof(double));
if(!(yyvsp[(5) - (5)].d)){ //|| ($1 < $3 && $5 < 0) || ($1 > $3 && $5 > 0) if(!(yyvsp[(5) - (5)].d)){ //|| ($1 < $3 && $5 < 0) || ($1 > $3 && $5 > 0)
...@@ -13179,7 +13181,7 @@ yyreduce: ...@@ -13179,7 +13181,7 @@ yyreduce:
break; break;
   
case 511: case 511:
#line 5936 "Gmsh.y" #line 5938 "Gmsh.y"
{ {
(yyval.l) = List_Create(3, 1, sizeof(double)); (yyval.l) = List_Create(3, 1, sizeof(double));
int tag = (int)(yyvsp[(3) - (4)].d); int tag = (int)(yyvsp[(3) - (4)].d);
...@@ -13204,63 +13206,63 @@ yyreduce: ...@@ -13204,63 +13206,63 @@ yyreduce:
break; break;
   
case 512: case 512:
#line 5958 "Gmsh.y" #line 5960 "Gmsh.y"
{ {
(yyval.l) = GetAllElementaryEntityNumbers(0); (yyval.l) = GetAllElementaryEntityNumbers(0);
;} ;}
break; break;
   
case 513: case 513:
#line 5962 "Gmsh.y" #line 5964 "Gmsh.y"
{ {
(yyval.l) = GetAllElementaryEntityNumbers(1); (yyval.l) = GetAllElementaryEntityNumbers(1);
;} ;}
break; break;
   
case 514: case 514:
#line 5966 "Gmsh.y" #line 5968 "Gmsh.y"
{ {
(yyval.l) = GetAllElementaryEntityNumbers(2); (yyval.l) = GetAllElementaryEntityNumbers(2);
;} ;}
break; break;
   
case 515: case 515:
#line 5970 "Gmsh.y" #line 5972 "Gmsh.y"
{ {
(yyval.l) = GetAllElementaryEntityNumbers(3); (yyval.l) = GetAllElementaryEntityNumbers(3);
;} ;}
break; break;
   
case 516: case 516:
#line 5974 "Gmsh.y" #line 5976 "Gmsh.y"
{ {
(yyval.l) = GetAllPhysicalEntityNumbers(0); (yyval.l) = GetAllPhysicalEntityNumbers(0);
;} ;}
break; break;
   
case 517: case 517:
#line 5978 "Gmsh.y" #line 5980 "Gmsh.y"
{ {
(yyval.l) = GetAllPhysicalEntityNumbers(1); (yyval.l) = GetAllPhysicalEntityNumbers(1);
;} ;}
break; break;
   
case 518: case 518:
#line 5982 "Gmsh.y" #line 5984 "Gmsh.y"
{ {
(yyval.l) = GetAllPhysicalEntityNumbers(2); (yyval.l) = GetAllPhysicalEntityNumbers(2);
;} ;}
break; break;
   
case 519: case 519:
#line 5986 "Gmsh.y" #line 5988 "Gmsh.y"
{ {
(yyval.l) = GetAllPhysicalEntityNumbers(3); (yyval.l) = GetAllPhysicalEntityNumbers(3);
;} ;}
break; break;
   
case 520: case 520:
#line 5990 "Gmsh.y" #line 5992 "Gmsh.y"
{ {
// FIXME: physical groups should not be stored in GEO_Internals, but // FIXME: physical groups should not be stored in GEO_Internals, but
// directly in GModel // directly in GModel
...@@ -13294,7 +13296,7 @@ yyreduce: ...@@ -13294,7 +13296,7 @@ yyreduce:
break; break;
   
case 521: case 521:
#line 6021 "Gmsh.y" #line 6023 "Gmsh.y"
{ {
// FIXME: physical groups should not be stored in GEO_Internals, but // FIXME: physical groups should not be stored in GEO_Internals, but
// directly in GModel // directly in GModel
...@@ -13328,7 +13330,7 @@ yyreduce: ...@@ -13328,7 +13330,7 @@ yyreduce:
break; break;
   
case 522: case 522:
#line 6052 "Gmsh.y" #line 6054 "Gmsh.y"
{ {
// FIXME: physical groups should not be stored in GEO_Internals, but // FIXME: physical groups should not be stored in GEO_Internals, but
// directly in GModel // directly in GModel
...@@ -13362,7 +13364,7 @@ yyreduce: ...@@ -13362,7 +13364,7 @@ yyreduce:
break; break;
   
case 523: case 523:
#line 6083 "Gmsh.y" #line 6085 "Gmsh.y"
{ {
// FIXME: physical groups should not be stored in GEO_Internals, but // FIXME: physical groups should not be stored in GEO_Internals, but
// directly in GModel // directly in GModel
...@@ -13396,7 +13398,7 @@ yyreduce: ...@@ -13396,7 +13398,7 @@ yyreduce:
break; break;
   
case 524: case 524:
#line 6115 "Gmsh.y" #line 6117 "Gmsh.y"
{ {
if(GModel::current()->getOCCInternals()->getChanged()) if(GModel::current()->getOCCInternals()->getChanged())
GModel::current()->getOCCInternals()->synchronize(GModel::current()); GModel::current()->getOCCInternals()->synchronize(GModel::current());
...@@ -13414,7 +13416,7 @@ yyreduce: ...@@ -13414,7 +13416,7 @@ yyreduce:
break; break;
   
case 525: case 525:
#line 6131 "Gmsh.y" #line 6133 "Gmsh.y"
{ {
if(GModel::current()->getOCCInternals()->getChanged()) if(GModel::current()->getOCCInternals()->getChanged())
GModel::current()->getOCCInternals()->synchronize(GModel::current()); GModel::current()->getOCCInternals()->synchronize(GModel::current());
...@@ -13432,7 +13434,7 @@ yyreduce: ...@@ -13432,7 +13434,7 @@ yyreduce:
break; break;
   
case 526: case 526:
#line 6147 "Gmsh.y" #line 6149 "Gmsh.y"
{ {
if(GModel::current()->getOCCInternals()->getChanged()) if(GModel::current()->getOCCInternals()->getChanged())
GModel::current()->getOCCInternals()->synchronize(GModel::current()); GModel::current()->getOCCInternals()->synchronize(GModel::current());
...@@ -13450,7 +13452,7 @@ yyreduce: ...@@ -13450,7 +13452,7 @@ yyreduce:
break; break;
   
case 527: case 527:
#line 6163 "Gmsh.y" #line 6165 "Gmsh.y"
{ {
if(GModel::current()->getOCCInternals()->getChanged()) if(GModel::current()->getOCCInternals()->getChanged())
GModel::current()->getOCCInternals()->synchronize(GModel::current()); GModel::current()->getOCCInternals()->synchronize(GModel::current());
...@@ -13468,7 +13470,7 @@ yyreduce: ...@@ -13468,7 +13470,7 @@ yyreduce:
break; break;
   
case 528: case 528:
#line 6178 "Gmsh.y" #line 6180 "Gmsh.y"
{ {
(yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double));
for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){
...@@ -13481,7 +13483,7 @@ yyreduce: ...@@ -13481,7 +13483,7 @@ yyreduce:
break; break;
   
case 529: case 529:
#line 6188 "Gmsh.y" #line 6190 "Gmsh.y"
{ {
(yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double));
for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){
...@@ -13494,7 +13496,7 @@ yyreduce: ...@@ -13494,7 +13496,7 @@ yyreduce:
break; break;
   
case 530: case 530:
#line 6198 "Gmsh.y" #line 6200 "Gmsh.y"
{ {
(yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double));
for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){
...@@ -13507,7 +13509,7 @@ yyreduce: ...@@ -13507,7 +13509,7 @@ yyreduce:
break; break;
   
case 531: case 531:
#line 6208 "Gmsh.y" #line 6210 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(double)); (yyval.l) = List_Create(2, 1, sizeof(double));
if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c)))
...@@ -13522,7 +13524,7 @@ yyreduce: ...@@ -13522,7 +13524,7 @@ yyreduce:
break; break;
   
case 532: case 532:
#line 6220 "Gmsh.y" #line 6222 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(double)); (yyval.l) = List_Create(2, 1, sizeof(double));
if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c)))
...@@ -13537,7 +13539,7 @@ yyreduce: ...@@ -13537,7 +13539,7 @@ yyreduce:
break; break;
   
case 533: case 533:
#line 6233 "Gmsh.y" #line 6235 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(double)); (yyval.l) = List_Create(2, 1, sizeof(double));
if(!gmsh_yysymbols.count((yyvsp[(3) - (4)].c))) if(!gmsh_yysymbols.count((yyvsp[(3) - (4)].c)))
...@@ -13552,35 +13554,35 @@ yyreduce: ...@@ -13552,35 +13554,35 @@ yyreduce:
break; break;
   
case 534: case 534:
#line 6245 "Gmsh.y" #line 6247 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(3) - (4)].l); (yyval.l) = (yyvsp[(3) - (4)].l);
;} ;}
break; break;
   
case 535: case 535:
#line 6249 "Gmsh.y" #line 6251 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(3) - (4)].l); (yyval.l) = (yyvsp[(3) - (4)].l);
;} ;}
break; break;
   
case 536: case 536:
#line 6253 "Gmsh.y" #line 6255 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(4) - (6)].l); (yyval.l) = (yyvsp[(4) - (6)].l);
;} ;}
break; break;
   
case 537: case 537:
#line 6257 "Gmsh.y" #line 6259 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(4) - (6)].l); (yyval.l) = (yyvsp[(4) - (6)].l);
;} ;}
break; break;
   
case 538: case 538:
#line 6261 "Gmsh.y" #line 6263 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(double)); (yyval.l) = List_Create(2, 1, sizeof(double));
if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c)))
...@@ -13601,7 +13603,7 @@ yyreduce: ...@@ -13601,7 +13603,7 @@ yyreduce:
break; break;
   
case 539: case 539:
#line 6279 "Gmsh.y" #line 6281 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(double)); (yyval.l) = List_Create(2, 1, sizeof(double));
if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c)))
...@@ -13622,7 +13624,7 @@ yyreduce: ...@@ -13622,7 +13624,7 @@ yyreduce:
break; break;
   
case 540: case 540:
#line 6297 "Gmsh.y" #line 6299 "Gmsh.y"
{ {
(yyval.l) = List_Create(20,20,sizeof(double)); (yyval.l) = List_Create(20,20,sizeof(double));
for(int i = 0; i < (int)(yyvsp[(7) - (8)].d); i++) { for(int i = 0; i < (int)(yyvsp[(7) - (8)].d); i++) {
...@@ -13633,7 +13635,7 @@ yyreduce: ...@@ -13633,7 +13635,7 @@ yyreduce:
break; break;
   
case 541: case 541:
#line 6305 "Gmsh.y" #line 6307 "Gmsh.y"
{ {
(yyval.l) = List_Create(20,20,sizeof(double)); (yyval.l) = List_Create(20,20,sizeof(double));
for(int i = 0; i < (int)(yyvsp[(7) - (8)].d); i++) { for(int i = 0; i < (int)(yyvsp[(7) - (8)].d); i++) {
...@@ -13644,7 +13646,7 @@ yyreduce: ...@@ -13644,7 +13646,7 @@ yyreduce:
break; break;
   
case 542: case 542:
#line 6313 "Gmsh.y" #line 6315 "Gmsh.y"
{ {
Msg::Barrier(); Msg::Barrier();
FILE *File; FILE *File;
...@@ -13676,7 +13678,7 @@ yyreduce: ...@@ -13676,7 +13678,7 @@ yyreduce:
break; break;
   
case 543: case 543:
#line 6342 "Gmsh.y" #line 6344 "Gmsh.y"
{ {
double x0 = (yyvsp[(3) - (14)].d), x1 = (yyvsp[(5) - (14)].d), y0 = (yyvsp[(7) - (14)].d), y1 = (yyvsp[(9) - (14)].d), ys = (yyvsp[(11) - (14)].d); double x0 = (yyvsp[(3) - (14)].d), x1 = (yyvsp[(5) - (14)].d), y0 = (yyvsp[(7) - (14)].d), y1 = (yyvsp[(9) - (14)].d), ys = (yyvsp[(11) - (14)].d);
int N = (int)(yyvsp[(13) - (14)].d); int N = (int)(yyvsp[(13) - (14)].d);
...@@ -13689,7 +13691,7 @@ yyreduce: ...@@ -13689,7 +13691,7 @@ yyreduce:
break; break;
   
case 544: case 544:
#line 6352 "Gmsh.y" #line 6354 "Gmsh.y"
{ {
std::vector<double> tmp; std::vector<double> tmp;
for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){
...@@ -13708,7 +13710,7 @@ yyreduce: ...@@ -13708,7 +13710,7 @@ yyreduce:
break; break;
   
case 545: case 545:
#line 6371 "Gmsh.y" #line 6373 "Gmsh.y"
{ {
(yyval.l) = List_Create(2, 1, sizeof(double)); (yyval.l) = List_Create(2, 1, sizeof(double));
List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); List_Add((yyval.l), &((yyvsp[(1) - (1)].d)));
...@@ -13716,21 +13718,21 @@ yyreduce: ...@@ -13716,21 +13718,21 @@ yyreduce:
break; break;
   
case 546: case 546:
#line 6376 "Gmsh.y" #line 6378 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(1) - (1)].l); (yyval.l) = (yyvsp[(1) - (1)].l);
;} ;}
break; break;
   
case 547: case 547:
#line 6380 "Gmsh.y" #line 6382 "Gmsh.y"
{ {
List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); List_Add((yyval.l), &((yyvsp[(3) - (3)].d)));
;} ;}
break; break;
   
case 548: case 548:
#line 6384 "Gmsh.y" #line 6386 "Gmsh.y"
{ {
for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){
double d; double d;
...@@ -13742,21 +13744,21 @@ yyreduce: ...@@ -13742,21 +13744,21 @@ yyreduce:
break; break;
   
case 549: case 549:
#line 6396 "Gmsh.y" #line 6398 "Gmsh.y"
{ {
(yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d));
;} ;}
break; break;
   
case 550: case 550:
#line 6400 "Gmsh.y" #line 6402 "Gmsh.y"
{ {
(yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255);
;} ;}
break; break;
   
case 551: case 551:
#line 6412 "Gmsh.y" #line 6414 "Gmsh.y"
{ {
int flag = 0; int flag = 0;
if(gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){ if(gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){
...@@ -13776,7 +13778,7 @@ yyreduce: ...@@ -13776,7 +13778,7 @@ yyreduce:
break; break;
   
case 552: case 552:
#line 6429 "Gmsh.y" #line 6431 "Gmsh.y"
{ {
unsigned int val = 0; unsigned int val = 0;
ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val);
...@@ -13786,14 +13788,14 @@ yyreduce: ...@@ -13786,14 +13788,14 @@ yyreduce:
break; break;
   
case 553: case 553:
#line 6439 "Gmsh.y" #line 6441 "Gmsh.y"
{ {
(yyval.l) = (yyvsp[(2) - (3)].l); (yyval.l) = (yyvsp[(2) - (3)].l);
;} ;}
break; break;
   
case 554: case 554:
#line 6443 "Gmsh.y" #line 6445 "Gmsh.y"
{ {
(yyval.l) = List_Create(256, 10, sizeof(unsigned int)); (yyval.l) = List_Create(256, 10, sizeof(unsigned int));
GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (6)].d)); GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (6)].d));
...@@ -13808,7 +13810,7 @@ yyreduce: ...@@ -13808,7 +13810,7 @@ yyreduce:
break; break;
   
case 555: case 555:
#line 6458 "Gmsh.y" #line 6460 "Gmsh.y"
{ {
(yyval.l) = List_Create(256, 10, sizeof(unsigned int)); (yyval.l) = List_Create(256, 10, sizeof(unsigned int));
List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); List_Add((yyval.l), &((yyvsp[(1) - (1)].u)));
...@@ -13816,21 +13818,21 @@ yyreduce: ...@@ -13816,21 +13818,21 @@ yyreduce:
break; break;
   
case 556: case 556:
#line 6463 "Gmsh.y" #line 6465 "Gmsh.y"
{ {
List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); List_Add((yyval.l), &((yyvsp[(3) - (3)].u)));
;} ;}
break; break;
   
case 557: case 557:
#line 6470 "Gmsh.y" #line 6472 "Gmsh.y"
{ {
(yyval.c) = (yyvsp[(1) - (1)].c); (yyval.c) = (yyvsp[(1) - (1)].c);
;} ;}
break; break;
   
case 558: case 558:
#line 6474 "Gmsh.y" #line 6476 "Gmsh.y"
{ {
std::string val; std::string val;
if(!gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))) if(!gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c)))
...@@ -13846,7 +13848,7 @@ yyreduce: ...@@ -13846,7 +13848,7 @@ yyreduce:
break; break;
   
case 559: case 559:
#line 6487 "Gmsh.y" #line 6489 "Gmsh.y"
{ {
std::string val; std::string val;
int j = (int)(yyvsp[(3) - (4)].d); int j = (int)(yyvsp[(3) - (4)].d);
...@@ -13863,7 +13865,7 @@ yyreduce: ...@@ -13863,7 +13865,7 @@ yyreduce:
break; break;
   
case 560: case 560:
#line 6501 "Gmsh.y" #line 6503 "Gmsh.y"
{ {
std::string val; std::string val;
int j = (int)(yyvsp[(3) - (4)].d); int j = (int)(yyvsp[(3) - (4)].d);
...@@ -13880,7 +13882,7 @@ yyreduce: ...@@ -13880,7 +13882,7 @@ yyreduce:
break; break;
   
case 561: case 561:
#line 6515 "Gmsh.y" #line 6517 "Gmsh.y"
{ {
std::string val; std::string val;
int j = (int)(yyvsp[(3) - (4)].d); int j = (int)(yyvsp[(3) - (4)].d);
...@@ -13897,7 +13899,7 @@ yyreduce: ...@@ -13897,7 +13899,7 @@ yyreduce:
break; break;
   
case 562: case 562:
#line 6529 "Gmsh.y" #line 6531 "Gmsh.y"
{ {
std::string val; std::string val;
int j = (int)(yyvsp[(3) - (4)].d); int j = (int)(yyvsp[(3) - (4)].d);
...@@ -13914,7 +13916,7 @@ yyreduce: ...@@ -13914,7 +13916,7 @@ yyreduce:
break; break;
   
case 563: case 563:
#line 6543 "Gmsh.y" #line 6545 "Gmsh.y"
{ {
std::string out; std::string out;
StringOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), out); StringOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), out);
...@@ -13925,7 +13927,7 @@ yyreduce: ...@@ -13925,7 +13927,7 @@ yyreduce:
break; break;
   
case 564: case 564:
#line 6551 "Gmsh.y" #line 6553 "Gmsh.y"
{ {
std::string out; std::string out;
StringOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), out); StringOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), out);
...@@ -13936,21 +13938,21 @@ yyreduce: ...@@ -13936,21 +13938,21 @@ yyreduce:
break; break;
   
case 565: case 565:
#line 6562 "Gmsh.y" #line 6564 "Gmsh.y"
{ {
(yyval.c) = (yyvsp[(1) - (1)].c); (yyval.c) = (yyvsp[(1) - (1)].c);
;} ;}
break; break;
   
case 566: case 566:
#line 6566 "Gmsh.y" #line 6568 "Gmsh.y"
{ {
(yyval.c) = (yyvsp[(3) - (4)].c); (yyval.c) = (yyvsp[(3) - (4)].c);
;} ;}
break; break;
   
case 567: case 567:
#line 6570 "Gmsh.y" #line 6572 "Gmsh.y"
{ {
(yyval.c) = (char *)Malloc(32 * sizeof(char)); (yyval.c) = (char *)Malloc(32 * sizeof(char));
time_t now; time_t now;
...@@ -13961,7 +13963,7 @@ yyreduce: ...@@ -13961,7 +13963,7 @@ yyreduce:
break; break;
   
case 568: case 568:
#line 6578 "Gmsh.y" #line 6580 "Gmsh.y"
{ {
std::string exe = Msg::GetExecutableName(); std::string exe = Msg::GetExecutableName();
(yyval.c) = (char *)Malloc(exe.size() + 1); (yyval.c) = (char *)Malloc(exe.size() + 1);
...@@ -13970,7 +13972,7 @@ yyreduce: ...@@ -13970,7 +13972,7 @@ yyreduce:
break; break;
   
case 569: case 569:
#line 6584 "Gmsh.y" #line 6586 "Gmsh.y"
{ {
std::string action = Msg::GetOnelabAction(); std::string action = Msg::GetOnelabAction();
(yyval.c) = (char *)Malloc(action.size() + 1); (yyval.c) = (char *)Malloc(action.size() + 1);
...@@ -13979,7 +13981,7 @@ yyreduce: ...@@ -13979,7 +13981,7 @@ yyreduce:
break; break;
   
case 570: case 570:
#line 6590 "Gmsh.y" #line 6592 "Gmsh.y"
{ {
const char *env = GetEnvironmentVar((yyvsp[(3) - (4)].c)); const char *env = GetEnvironmentVar((yyvsp[(3) - (4)].c));
if(!env) env = ""; if(!env) env = "";
...@@ -13990,7 +13992,7 @@ yyreduce: ...@@ -13990,7 +13992,7 @@ yyreduce:
break; break;
   
case 571: case 571:
#line 6598 "Gmsh.y" #line 6600 "Gmsh.y"
{ {
std::string s = Msg::GetString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); std::string s = Msg::GetString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c));
(yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char));
...@@ -14001,7 +14003,7 @@ yyreduce: ...@@ -14001,7 +14003,7 @@ yyreduce:
break; break;
   
case 572: case 572:
#line 6606 "Gmsh.y" #line 6608 "Gmsh.y"
{ {
std::string s = Msg::GetOnelabString((yyvsp[(3) - (4)].c)); std::string s = Msg::GetOnelabString((yyvsp[(3) - (4)].c));
(yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char));
...@@ -14011,7 +14013,7 @@ yyreduce: ...@@ -14011,7 +14013,7 @@ yyreduce:
break; break;
   
case 573: case 573:
#line 6613 "Gmsh.y" #line 6615 "Gmsh.y"
{ {
std::string s = Msg::GetOnelabString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); std::string s = Msg::GetOnelabString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c));
(yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char));
...@@ -14022,7 +14024,7 @@ yyreduce: ...@@ -14022,7 +14024,7 @@ yyreduce:
break; break;
   
case 574: case 574:
#line 6621 "Gmsh.y" #line 6623 "Gmsh.y"
{ {
int size = 1; int size = 1;
for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++) for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++)
...@@ -14040,7 +14042,7 @@ yyreduce: ...@@ -14040,7 +14042,7 @@ yyreduce:
break; break;
   
case 575: case 575:
#line 6636 "Gmsh.y" #line 6638 "Gmsh.y"
{ {
(yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char));
int i; int i;
...@@ -14057,7 +14059,7 @@ yyreduce: ...@@ -14057,7 +14059,7 @@ yyreduce:
break; break;
   
case 576: case 576:
#line 6650 "Gmsh.y" #line 6652 "Gmsh.y"
{ {
(yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char));
int i; int i;
...@@ -14074,7 +14076,7 @@ yyreduce: ...@@ -14074,7 +14076,7 @@ yyreduce:
break; break;
   
case 577: case 577:
#line 6664 "Gmsh.y" #line 6666 "Gmsh.y"
{ {
std::string input = (yyvsp[(3) - (8)].c); std::string input = (yyvsp[(3) - (8)].c);
std::string substr_old = (yyvsp[(5) - (8)].c); std::string substr_old = (yyvsp[(5) - (8)].c);
...@@ -14089,7 +14091,7 @@ yyreduce: ...@@ -14089,7 +14091,7 @@ yyreduce:
break; break;
   
case 578: case 578:
#line 6676 "Gmsh.y" #line 6678 "Gmsh.y"
{ {
int size = 1; int size = 1;
for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++) for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++)
...@@ -14108,7 +14110,7 @@ yyreduce: ...@@ -14108,7 +14110,7 @@ yyreduce:
break; break;
   
case 579: case 579:
#line 6692 "Gmsh.y" #line 6694 "Gmsh.y"
{ {
int i = 0; int i = 0;
while ((yyvsp[(3) - (4)].c)[i]) { while ((yyvsp[(3) - (4)].c)[i]) {
...@@ -14120,7 +14122,7 @@ yyreduce: ...@@ -14120,7 +14122,7 @@ yyreduce:
break; break;
   
case 580: case 580:
#line 6701 "Gmsh.y" #line 6703 "Gmsh.y"
{ {
int i = 0; int i = 0;
while ((yyvsp[(3) - (4)].c)[i]) { while ((yyvsp[(3) - (4)].c)[i]) {
...@@ -14132,7 +14134,7 @@ yyreduce: ...@@ -14132,7 +14134,7 @@ yyreduce:
break; break;
   
case 581: case 581:
#line 6710 "Gmsh.y" #line 6712 "Gmsh.y"
{ {
int i = 0; int i = 0;
while ((yyvsp[(3) - (4)].c)[i]) { while ((yyvsp[(3) - (4)].c)[i]) {
...@@ -14145,7 +14147,7 @@ yyreduce: ...@@ -14145,7 +14147,7 @@ yyreduce:
break; break;
   
case 582: case 582:
#line 6720 "Gmsh.y" #line 6722 "Gmsh.y"
{ {
if((yyvsp[(3) - (8)].d)){ if((yyvsp[(3) - (8)].d)){
(yyval.c) = (yyvsp[(5) - (8)].c); (yyval.c) = (yyvsp[(5) - (8)].c);
...@@ -14159,7 +14161,7 @@ yyreduce: ...@@ -14159,7 +14161,7 @@ yyreduce:
break; break;
   
case 583: case 583:
#line 6731 "Gmsh.y" #line 6733 "Gmsh.y"
{ {
std::string in = (yyvsp[(3) - (8)].c); std::string in = (yyvsp[(3) - (8)].c);
std::string out = in.substr((int)(yyvsp[(5) - (8)].d), (int)(yyvsp[(7) - (8)].d)); std::string out = in.substr((int)(yyvsp[(5) - (8)].d), (int)(yyvsp[(7) - (8)].d));
...@@ -14170,7 +14172,7 @@ yyreduce: ...@@ -14170,7 +14172,7 @@ yyreduce:
break; break;
   
case 584: case 584:
#line 6739 "Gmsh.y" #line 6741 "Gmsh.y"
{ {
std::string in = (yyvsp[(3) - (6)].c); std::string in = (yyvsp[(3) - (6)].c);
std::string out = in.substr((int)(yyvsp[(5) - (6)].d), std::string::npos); std::string out = in.substr((int)(yyvsp[(5) - (6)].d), std::string::npos);
...@@ -14181,14 +14183,14 @@ yyreduce: ...@@ -14181,14 +14183,14 @@ yyreduce:
break; break;
   
case 585: case 585:
#line 6747 "Gmsh.y" #line 6749 "Gmsh.y"
{ {
(yyval.c) = (yyvsp[(3) - (4)].c); (yyval.c) = (yyvsp[(3) - (4)].c);
;} ;}
break; break;
   
case 586: case 586:
#line 6751 "Gmsh.y" #line 6753 "Gmsh.y"
{ {
char tmpstring[5000]; char tmpstring[5000];
int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring);
...@@ -14210,7 +14212,7 @@ yyreduce: ...@@ -14210,7 +14212,7 @@ yyreduce:
break; break;
   
case 587: case 587:
#line 6770 "Gmsh.y" #line 6772 "Gmsh.y"
{ {
std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c)); std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c));
(yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char));
...@@ -14220,7 +14222,7 @@ yyreduce: ...@@ -14220,7 +14222,7 @@ yyreduce:
break; break;
   
case 588: case 588:
#line 6777 "Gmsh.y" #line 6779 "Gmsh.y"
{ {
std::string tmp = SplitFileName(GetAbsolutePath(gmsh_yyname))[0]; std::string tmp = SplitFileName(GetAbsolutePath(gmsh_yyname))[0];
(yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char));
...@@ -14229,7 +14231,7 @@ yyreduce: ...@@ -14229,7 +14231,7 @@ yyreduce:
break; break;
   
case 589: case 589:
#line 6783 "Gmsh.y" #line 6785 "Gmsh.y"
{ {
std::string tmp = SplitFileName((yyvsp[(3) - (4)].c))[0]; std::string tmp = SplitFileName((yyvsp[(3) - (4)].c))[0];
(yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char));
...@@ -14239,7 +14241,7 @@ yyreduce: ...@@ -14239,7 +14241,7 @@ yyreduce:
break; break;
   
case 590: case 590:
#line 6790 "Gmsh.y" #line 6792 "Gmsh.y"
{ {
std::string tmp = GetAbsolutePath((yyvsp[(3) - (4)].c)); std::string tmp = GetAbsolutePath((yyvsp[(3) - (4)].c));
(yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char));
...@@ -14249,12 +14251,12 @@ yyreduce: ...@@ -14249,12 +14251,12 @@ yyreduce:
break; break;
   
case 591: case 591:
#line 6797 "Gmsh.y" #line 6799 "Gmsh.y"
{ floatOptions.clear(); charOptions.clear(); ;} { floatOptions.clear(); charOptions.clear(); ;}
break; break;
   
case 592: case 592:
#line 6799 "Gmsh.y" #line 6801 "Gmsh.y"
{ {
std::string val((yyvsp[(3) - (6)].c)); std::string val((yyvsp[(3) - (6)].c));
Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions); Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions);
...@@ -14265,7 +14267,7 @@ yyreduce: ...@@ -14265,7 +14267,7 @@ yyreduce:
break; break;
   
case 593: case 593:
#line 6810 "Gmsh.y" #line 6812 "Gmsh.y"
{ {
(yyval.l) = List_Create(20,20,sizeof(char*)); (yyval.l) = List_Create(20,20,sizeof(char*));
List_Add((yyval.l), &((yyvsp[(1) - (1)].c))); List_Add((yyval.l), &((yyvsp[(1) - (1)].c)));
...@@ -14273,12 +14275,12 @@ yyreduce: ...@@ -14273,12 +14275,12 @@ yyreduce:
break; break;
   
case 594: case 594:
#line 6815 "Gmsh.y" #line 6817 "Gmsh.y"
{ List_Add((yyval.l), &((yyvsp[(3) - (3)].c))); ;} { List_Add((yyval.l), &((yyvsp[(3) - (3)].c))); ;}
break; break;
   
case 595: case 595:
#line 6821 "Gmsh.y" #line 6823 "Gmsh.y"
{ {
char tmpstr[256]; char tmpstr[256];
sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d)); sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d));
...@@ -14289,7 +14291,7 @@ yyreduce: ...@@ -14289,7 +14291,7 @@ yyreduce:
break; break;
   
case 596: case 596:
#line 6830 "Gmsh.y" #line 6832 "Gmsh.y"
{ {
char tmpstr[256]; char tmpstr[256];
sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d)); sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d));
...@@ -14300,23 +14302,23 @@ yyreduce: ...@@ -14300,23 +14302,23 @@ yyreduce:
break; break;
   
case 597: case 597:
#line 6843 "Gmsh.y" #line 6845 "Gmsh.y"
{ (yyval.c) = (yyvsp[(1) - (1)].c); ;} { (yyval.c) = (yyvsp[(1) - (1)].c); ;}
break; break;
   
case 598: case 598:
#line 6846 "Gmsh.y" #line 6848 "Gmsh.y"
{ (yyval.c) = (yyvsp[(1) - (1)].c); ;} { (yyval.c) = (yyvsp[(1) - (1)].c); ;}
break; break;
   
case 599: case 599:
#line 6850 "Gmsh.y" #line 6852 "Gmsh.y"
{ (yyval.c) = (yyvsp[(3) - (4)].c); ;} { (yyval.c) = (yyvsp[(3) - (4)].c); ;}
break; break;
   
   
/* Line 1267 of yacc.c. */ /* Line 1267 of yacc.c. */
#line 14320 "Gmsh.tab.cpp" #line 14322 "Gmsh.tab.cpp"
default: break; default: break;
} }
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
...@@ -14530,7 +14532,7 @@ yyreturn: ...@@ -14530,7 +14532,7 @@ yyreturn:
} }
   
   
#line 6853 "Gmsh.y" #line 6855 "Gmsh.y"
   
   
void assignVariable(const std::string &name, int index, int assignType, void assignVariable(const std::string &name, int index, int assignType,
...@@ -14980,7 +14982,7 @@ int NEWLINELOOP(void) ...@@ -14980,7 +14982,7 @@ int NEWLINELOOP(void)
if(CTX::instance()->geom.oldNewreg) if(CTX::instance()->geom.oldNewreg)
tag = NEWREG(); tag = NEWREG();
else else
tag = GModel::current()->getGEOInternals()->MaxLineLoopNum + 1; tag = GModel::current()->getGEOInternals()->getMaxTag(-1) + 1;
tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(-1) + 1); tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(-1) + 1);
return tag; return tag;
} }
......
...@@ -1780,8 +1780,9 @@ Shape : ...@@ -1780,8 +1780,9 @@ Shape :
} }
else if(param.size() >= 4 && param.size() <= 6){ else if(param.size() >= 4 && param.size() <= 6){
double r = param[3]; double r = param[3];
double a1 = (param.size() >= 5) ? param[4] : 0.; double a1 = (param.size() == 6) ? param[4] : 0.;
double a2 = (param.size() >= 6) ? param[5] : 2.*M_PI; double a2 = (param.size() == 6) ? param[5] :
(param.size() == 5) ? param[4] : 2.*M_PI;
GModel::current()->getOCCInternals()->addCircle GModel::current()->getOCCInternals()->addCircle
(num, param[0], param[1], param[2], r, a1, a2); (num, param[0], param[1], param[2], r, a1, a2);
} }
...@@ -1817,8 +1818,9 @@ Shape : ...@@ -1817,8 +1818,9 @@ Shape :
(num, tags[0], tags[1], tags[3]); (num, tags[0], tags[1], tags[3]);
} }
else if(param.size() >= 5 && param.size() <= 7){ else if(param.size() >= 5 && param.size() <= 7){
double a1 = (param.size() >= 6) ? param[5] : 0.; double a1 = (param.size() == 7) ? param[5] : 0.;
double a2 = (param.size() >= 7) ? param[6] : 2.*M_PI; double a2 = (param.size() == 7) ? param[6] :
(param.size() == 6) ? param[5] : 2.*M_PI;
GModel::current()->getOCCInternals()->addEllipse GModel::current()->getOCCInternals()->addEllipse
(num, param[0], param[1], param[2], param[3], param[4], a1, a2); (num, param[0], param[1], param[2], param[3], param[4], a1, a2);
} }
...@@ -7299,7 +7301,7 @@ int NEWLINELOOP(void) ...@@ -7299,7 +7301,7 @@ int NEWLINELOOP(void)
if(CTX::instance()->geom.oldNewreg) if(CTX::instance()->geom.oldNewreg)
tag = NEWREG(); tag = NEWREG();
else else
tag = GModel::current()->getGEOInternals()->MaxLineLoopNum + 1; tag = GModel::current()->getGEOInternals()->getMaxTag(-1) + 1;
tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(-1) + 1); tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(-1) + 1);
return tag; return tag;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment