// Define parameters lc=1; // Cicle radius l=1; // Gap d=0.1; // Angle width a=1.5; // Step s=Sqrt(2)/2*d; // Midpoint m=0.5*a; // Frame height h=1; Point(1)={0, -(l+a), 0, lc}; Point(2)={l, -(l+a), 0, lc}; Point(3)={l+s, -(l+a)+s, 0, lc}; Point(4)={l+m, -(l+m), 0, lc}; Point(5)={l+a-s, -(l+s), 0, lc}; Point(6)={l+a, -l, 0, lc}; Point(7)={l+a, 0, 0, lc}; Point(8)={l+a, l, 0, lc}; Point(9)={l+a-s, l+s, 0, lc}; Point(10)={l+m, l+m, 0, lc}; Point(11)={l+s, l+a-s, 0, lc}; Point(12)={l, l+a, 0, lc}; Point(13)={0, l+a, 0, lc}; Point(14)={-l, l+a, 0, lc}; Point(15)={-(l+s), l+a-s, 0, lc}; Point(16)={-(l+m), l+m, 0, lc}; Point(17)={-(l+a)+s, l+s, 0, lc}; Point(18)={-(l+a), l, 0, lc}; Point(19)={-(l+a), 0, 0, lc}; Point(20)={-(l+a), -l, 0, lc}; Point(21)={-(l+a)+s, -(l+s), 0, lc}; Point(22)={-(l+m), -(l+m), 0, lc}; Point(23)={-(l+s), -(l+a)+s, 0, lc}; Point(24)={-l, -(l+a), 0, lc}; // Outer frame Point(25)={-(l+a+h), -(l+a+h), 0, lc}; Point(26)={(l+a+h), -(l+a+h), 0, lc}; Point(27)={(l+a+h), (l+a+h), 0, lc}; Point(28)={-(l+a+h), (l+a+h), 0, lc}; //+ Circle(1) = {2, 1, 24}; //+ Circle(2) = {3, 1, 23}; //+ Circle(3) = {3, 4, 5}; //+ Circle(4) = {2, 4, 6}; //+ Circle(5) = {8, 7, 6}; //+ Circle(6) = {9, 7, 5}; //+ Circle(7) = {8, 10, 12}; //+ Circle(8) = {9, 10, 11}; //+ Circle(9) = {14, 13, 12}; //+ Circle(10) = {15, 13, 11}; //+ Circle(11) = {15, 16, 17}; //+ Circle(12) = {14, 16, 18}; //+ Circle(13) = {20, 19, 18}; //+ Circle(14) = {21, 19, 17}; //+ Circle(15) = {21, 22, 23}; //+ Circle(16) = {20, 22, 24}; //+ Line(17) = {25, 26}; //+ Line(18) = {26, 27}; //+ Line(19) = {27, 28}; //+ Line(20) = {28, 25}; //+ Curve Loop(1) = {14, -11, 10, -8, 6, -3, 2, -15}; //+ Plane Surface(1) = {1}; //+ Curve Loop(2) = {17, 18, 19, 20}; //+ Curve Loop(3) = {16, -1, 4, -5, 7, -9, 12, -13}; //+ Plane Surface(2) = {2, 3}; //+ Physical Curve("inner_boundary", 21) = {2, 15, 14, 11, 10, 8, 6, 3}; //+ Physical Curve("outer_boundary", 22) = {13, 12, 9, 7, 5, 4, 1, 16}; //+ Physical Curve("bottom_edge", 23) = {17}; //+ Physical Curve("right_edge", 24) = {18}; //+ Physical Curve("top_edge", 25) = {19}; //+ Physical Curve("left_edge", 26) = {20}; //+ Physical Surface("outer_body", 27) = {2}; //+ Physical Surface("inner_body", 28) = {1};