<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">Dear Gmsh users,<br><br>Can someone please confirm this:<br>I define a rectangle (planar surface) as Surface( 2 ) and then extrude it to a cuboid (please see full script below). However, meshing the cuboid fails. It seems the problem is with Extrude. From the Gmsh manual:<br>`As explained in 4.2.1 Floating point expressions, extrude can be used in an expression, in which case it returns a list of identification numbers. By default, the list contains the "top" of the extruded entity at index 0 and the extruded entity at index 1, followed by the "sides" of the extruded entity at indices 2, 3, etc.'<br><br>In the script I use<br>Plane Surface( 2 ) = {1};<br>z1[] = Extrude{ 0, 0, 3 }{ Surface{ 2 }; };<br><br>so z1 is the variable holding the indices of the surfaces created by extrusion. This means z1[0] should hold the index of the original planar surface, that is,
 2. However, it shows 1, which is a non-existing surface.<br><br>If the index of the original planar surface is 1 then meshing works, that is:<br>Plane Surface( 1 ) = {1};<br>z1[] = Extrude{ 0, 0, 3   }{ Surface{ 1 }; };<br><br><br>Here is the full script:<br><br>Point(1) = {-1, -1, -1};<br>Point(2) = {-1, 1, -1};<br>Point(3) = {1, 1, -1};<br>Point(4) = {1 ,-1, -1};<br>Line(1) = {1,2};<br>Line(2) = {2,3};<br>Line(3) = {3,4};<br>Line(4) = {4,1};<br>Line Loop(1) = {1,2,3,4};<br><br>Plane Surface( 2 ) = {1};<br>z1[] = Extrude{ 0, 0, 3 }{ Surface{ 2 }; };<br><br>// meshing works when commenting the above 2 lines and uncommenting the following 2 lines <br>//Plane Surface( 1 ) = {1};<br>//z1[] = Extrude{ 0, 0, 3 }{ Surface{ 1 }; };<br><br>Surface Loop( 2 ) = { z1[ 0 ], z1[ 1 ], z1[ 2 ], z1[ 3 ], z1[ 4 ], z1[ 5 ] };<br><br>Printf( "%g %g %g %g %g %g", z1[ 0 ], z1[ 1 ], z1[ 2 ], z1[ 3 ], z1[ 4 ], z1[ 5 ] );<br><br>Volume( 2 ) = { 2 };<br>Mesh
 3;<br><br>Thanks,<br>Mike.</td></tr></table><br>