Syntax
- extrude(distance)
- extrude(extrusionType, distance)
Parameters
- distance—floatHow many units to extrude.
- extrusionType—selector
- world.up—Extrudes faces along the world coordinates system's y-axis.
- world.up.flatTop—Same as world.up but creates a flat top surface.
- face.normal—Each face is extruded along its normal. face.normal is the default.
- vertex.normal—Extrudes face vertices along their normals.
Note:
Vertex normals are always calculated from the geometry of the current shape; existing vertex normals are discarded. If faces are disconnected, duplicate vertices must be merged in order to compute vertex normals using adjacent face normals.
Description
The extrude operation extrudes the shape. Each face polygon of all meshes in the geometry asset is taken and extruded along the face normal or a given direction as specified by the extrusion type. The scope orientation is set in the following way:
- x-axis direction is kept as much as possible (old x-axis is projected to the plane orthogonal to extrusion direction).
- y-axis along the extrusion direction.
- z-axis normal to the two above.
The scope's sizes are adjusted to tightly fit the extruded geometry. If distance is negative, the scope.sy attribute will be negative. Texture coordinates are inherited from the shape.
Component tags
The operation automatically applies semantic component tags to the resulting face components:
"extrude.bottom" "extrude.side.outer" "extrude.side.inner" "extrude.top" | Blue: original face. Yellow: side faces. Red: side faces from holes. Green: extruded face. |
For more information on working with component tags, refer to:
Related
Examples
Extrusion along normals
On the right, an initial shape consisting of 2 faces and the initial scope is shown. | |
The extrude operation extrudes all faces along their normals and combines the results. No internal lamina faces are created. The scope's y-axis is set to the extrusion direction.
| |
For uneven shapes the extrusion is performed for each face individually and internal faces are created. The scope's y-axis is set to the normal of the first face.
Using face.normal is the default and the same as extrude(10). | |
The extrusion along vertex normals keeps faces together and no internal faces are created. The scope's y-axis is set to the normal of the first vertex.
|
Extrusion along a world coordinate axis
Each face is extruded along the world coordinate's y-axis. No internal lamina faces are created. The scope's y-axis is set to the world's y-axis.
| |
A flat top surface is created. The extrusion distance is measured from the lowest vertex of each shape wrt. to the world's y-axis.
| |
The extrusion distance is set to at least the maximum extent of the shape along the world's y-axis. If the distance is zero the extrusion is positive.
| |
If the distance is negative the extrusion is measured from the highest vertex of each shape wrt. to the world's y-axis. The scope's y-size becomes negative.
|