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

New syntax

  Periodic Surface {list} = {list} Transform < Using {list} >

conflicts with options. New syntax:

  Periodic Surface {list} = {list} < Using {list} >
parent 39405f5c
No related branches found
No related tags found
No related merge requests found
......@@ -275,7 +275,6 @@ T3 return tText3D;
TextAttributes return tTextAttributes;
TIME return tTime;
Transfinite return tTransfinite;
Transform return tTransform;
Transf[qQ]uad[tT]ri return tTransfQuadTri;
Translate return tTranslate;
Tanh return tTanh;
......
This diff is collapsed.
......@@ -138,90 +138,89 @@ extern int gmsh_yydebug;
tPhysical = 347,
tCompound = 348,
tPeriodic = 349,
tTransform = 350,
tUsing = 351,
tPlugin = 352,
tDegenerated = 353,
tRecursive = 354,
tRotate = 355,
tTranslate = 356,
tSymmetry = 357,
tDilate = 358,
tExtrude = 359,
tLevelset = 360,
tRecombine = 361,
tSmoother = 362,
tSplit = 363,
tDelete = 364,
tCoherence = 365,
tIntersect = 366,
tMeshAlgorithm = 367,
tReverse = 368,
tLayers = 369,
tScaleLast = 370,
tHole = 371,
tAlias = 372,
tAliasWithOptions = 373,
tCopyOptions = 374,
tQuadTriAddVerts = 375,
tQuadTriNoNewVerts = 376,
tQuadTriSngl = 377,
tQuadTriDbl = 378,
tRecombLaterals = 379,
tTransfQuadTri = 380,
tText2D = 381,
tText3D = 382,
tInterpolationScheme = 383,
tTime = 384,
tCombine = 385,
tBSpline = 386,
tBezier = 387,
tNurbs = 388,
tNurbsOrder = 389,
tNurbsKnots = 390,
tColor = 391,
tColorTable = 392,
tFor = 393,
tIn = 394,
tEndFor = 395,
tIf = 396,
tEndIf = 397,
tExit = 398,
tAbort = 399,
tField = 400,
tReturn = 401,
tCall = 402,
tMacro = 403,
tShow = 404,
tHide = 405,
tGetValue = 406,
tGetEnv = 407,
tGetString = 408,
tGetNumber = 409,
tHomology = 410,
tCohomology = 411,
tBetti = 412,
tSetOrder = 413,
tExists = 414,
tFileExists = 415,
tGMSH_MAJOR_VERSION = 416,
tGMSH_MINOR_VERSION = 417,
tGMSH_PATCH_VERSION = 418,
tGmshExecutableName = 419,
tSetPartition = 420,
tAFFECTDIVIDE = 421,
tAFFECTTIMES = 422,
tAFFECTMINUS = 423,
tAFFECTPLUS = 424,
tOR = 425,
tAND = 426,
tNOTEQUAL = 427,
tEQUAL = 428,
tGREATEROREQUAL = 429,
tLESSOREQUAL = 430,
UNARYPREC = 431,
tMINUSMINUS = 432,
tPLUSPLUS = 433
tUsing = 350,
tPlugin = 351,
tDegenerated = 352,
tRecursive = 353,
tRotate = 354,
tTranslate = 355,
tSymmetry = 356,
tDilate = 357,
tExtrude = 358,
tLevelset = 359,
tRecombine = 360,
tSmoother = 361,
tSplit = 362,
tDelete = 363,
tCoherence = 364,
tIntersect = 365,
tMeshAlgorithm = 366,
tReverse = 367,
tLayers = 368,
tScaleLast = 369,
tHole = 370,
tAlias = 371,
tAliasWithOptions = 372,
tCopyOptions = 373,
tQuadTriAddVerts = 374,
tQuadTriNoNewVerts = 375,
tQuadTriSngl = 376,
tQuadTriDbl = 377,
tRecombLaterals = 378,
tTransfQuadTri = 379,
tText2D = 380,
tText3D = 381,
tInterpolationScheme = 382,
tTime = 383,
tCombine = 384,
tBSpline = 385,
tBezier = 386,
tNurbs = 387,
tNurbsOrder = 388,
tNurbsKnots = 389,
tColor = 390,
tColorTable = 391,
tFor = 392,
tIn = 393,
tEndFor = 394,
tIf = 395,
tEndIf = 396,
tExit = 397,
tAbort = 398,
tField = 399,
tReturn = 400,
tCall = 401,
tMacro = 402,
tShow = 403,
tHide = 404,
tGetValue = 405,
tGetEnv = 406,
tGetString = 407,
tGetNumber = 408,
tHomology = 409,
tCohomology = 410,
tBetti = 411,
tSetOrder = 412,
tExists = 413,
tFileExists = 414,
tGMSH_MAJOR_VERSION = 415,
tGMSH_MINOR_VERSION = 416,
tGMSH_PATCH_VERSION = 417,
tGmshExecutableName = 418,
tSetPartition = 419,
tAFFECTDIVIDE = 420,
tAFFECTTIMES = 421,
tAFFECTMINUS = 422,
tAFFECTPLUS = 423,
tOR = 424,
tAND = 425,
tNOTEQUAL = 426,
tEQUAL = 427,
tGREATEROREQUAL = 428,
tLESSOREQUAL = 429,
UNARYPREC = 430,
tMINUSMINUS = 431,
tPLUSPLUS = 432
};
#endif
......@@ -242,7 +241,7 @@ typedef union YYSTYPE
/* Line 2053 of yacc.c */
#line 246 "Gmsh.tab.hpp"
#line 245 "Gmsh.tab.hpp"
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
......
......@@ -132,7 +132,7 @@ struct doubleXstring{
%token tPoint tCircle tEllipse tLine tSphere tPolarSphere tSurface tSpline tVolume
%token tCharacteristic tLength tParametric tElliptic tRefineMesh tAdaptMesh
%token tRelocateMesh
%token tPlane tRuled tTransfinite tComplex tPhysical tCompound tPeriodic tTransform
%token tPlane tRuled tTransfinite tComplex tPhysical tCompound tPeriodic
%token tUsing tPlugin tDegenerated tRecursive
%token tRotate tTranslate tSymmetry tDilate tExtrude tLevelset
%token tRecombine tSmoother tSplit tDelete tCoherence
......@@ -4043,20 +4043,20 @@ Constraints :
List_Delete($3);
}
| tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT
'{' RecursiveListOfDouble '}' tTransform PeriodicTransform tEND
'{' RecursiveListOfDouble '}' PeriodicTransform tEND
{
if (List_Nbr($4) != List_Nbr($8)){
yymsg(0, "Number of master lines (%d) different from number of "
"slaves (%d) ", List_Nbr($8), List_Nbr($4));
}
else{
if (List_Nbr($11) < 12){
if (List_Nbr($10) < 12){
yymsg(0, "Affine transformation requires at least 12 entries");
}
else {
std::vector<double> transfo(16,0);
for(int i = 0; i < List_Nbr($11); i++) List_Read($11, i, &transfo[i]);
for(int i = 0; i < List_Nbr($10); i++) List_Read($10, i, &transfo[i]);
for(int i = 0; i < List_Nbr($4); i++){
double d_master, d_slave;
......@@ -4069,23 +4069,23 @@ Constraints :
}
}
}
List_Delete($8);
List_Delete($4);
List_Delete($8);
}
| tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT
'{' RecursiveListOfDouble '}' tTransform PeriodicTransform tEND
'{' RecursiveListOfDouble '}' PeriodicTransform tEND
{
if (List_Nbr($4) != List_Nbr($8)){
yymsg(0, "Number of master faces (%d) different from number of "
"slaves (%d) ", List_Nbr($8), List_Nbr($4));
}
else{
if (List_Nbr($11) < 12){
if (List_Nbr($10) < 12){
yymsg(0, "Affine transformation requires at least 12 entries");
}
else {
std::vector<double> transfo(16,0);
for(int i = 0; i < List_Nbr($11); i++) List_Read($11, i, &transfo[i]);
for(int i = 0; i < List_Nbr($10); i++) List_Read($10, i, &transfo[i]);
for(int i = 0; i < List_Nbr($4); i++){
double d_master, d_slave;
......
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment