[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
5.1.5 Extrusions
Lines, surfaces and volumes can also be created through extrusion of points, lines and surfaces, respectively. Here is the syntax of the geometrical extrusion commands (go to Structured grids, to see how these commands can be extended in order to also extrude the mesh):
extrude:
-
Extrude { expression-list } { extrude-list }
Extrudes all elementary entities (points, lines or surfaces) in extrude-list using a translation. The expression-list should contain three expressions giving the X, Y and Z components of the translation vector.
-
Extrude { { expression-list }, { expression-list }, expression } { extrude-list }
Extrudes all elementary entities (points, lines or surfaces) in extrude-list using a rotation. The first expression-list should contain three expressions giving the X, Y and Z direction of the rotation axis; the second expression-list should contain three expressions giving the X, Y and Z components of any point on this axis; the last expression should contain the rotation angle (in radians).
-
Extrude { { expression-list }, { expression-list }, { expression-list }, expression } { extrude-list }
Extrudes all elementary entities (points, lines or surfaces) in extrude-list using a translation combined with a rotation. The first expression-list should contain three expressions giving the X, Y and Z components of the translation vector; the second expression-list should contain three expressions giving the X, Y and Z direction of the rotation axis; the third expression-list should contain three expressions giving the X, Y and Z components of any point on this axis; the last expression should contain the rotation angle (in radians).
with
extrude-list: Point | Line | Surface { expression-list }; … |
As explained in 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. For example:
Point(1) = {0,0,0}; Point(2) = {1,0,0}; Line(1) = {1, 2}; out[] = Extrude{0,1,0}{ Line{1}; }; Printf("top line = %g", out[0]); Printf("surface = %g", out[1]); Printf("side lines = %g and %g", out[2], out[3]); |
This behaviour can be changed with the
Geometry.ExtrudeReturnLateralEntities
option (see section Geometry options list).
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |