BUBBLE

This command takes a topologically 2d mesh (a planar or non-planar surface), extrudes it into three dimensions along either the normal to the surface (default) or along a user defined vector, and then takes the external surface of the volume created and returns that to the user. This operation will result in a closed surface.

FORMAT

bubble/mesh1/mesh2/onstmin/offset/[norm**x1,y1,z1]

The final argument is optional. It must either be the keyword norm, or a three valued vector (in cartesian space) specifying a direction. The default, if no argument is provided, is norm. If norm is chosen, the element weighted average normal to the surface or curve is computed, and the initial mesh is extruded in that direction. Otherwise, if a vector value is specified, the vector is normalized, and its direction used to extrude the initial mesh.

NOTES

This code works on meshes containing quads, triangles, or hybrid polygons.

It is very possible to create an invalid mesh object with this command, especially if the initial mesh is a multivalued surface, or if the extruding vector is in a direction parallel to the plane that contains the initial surface is in. You have been warned.

There is an analog to this code that creates the volume enclosed by the surface as opposed to the surface itself. It is called extrude.

This code is a wrapper for extrude. There are plans to integrate bubble’s functionality with extrude and to eliminate bubble from the commands recognized by LaGriT.

EXAMPLES

bubble/cmo_bigbox/cmo_quad/const/5.0/

This would result in a surface surrounding an amalgamation of parallelopipeds created from the initial quad sheet. First, since const is used the quads will be extruded a constant amount from each point in the quad sheet.

Second, since the extruding vector and norm are omitted, the extrusion will occur on the average normal to the plane. Therefore, this command will result in a mesh of tris that form the surface of a group of parallelopipeds extruded 5.0 units in an orthogonal direction.

bubble/cmo_arbshape/cmo_tri/min/7.5/3,-2.5,-6

This command would result in a mesh of tris that form a surface enclosing a volume of prisms being created out of the initial tri sheet. First, since min is used, the “bottom” of the surface would be a plane.

Second, because the vector 3, -2.5, -6 is specified, the extrusion will be in that direction (again the magnitude is not important, the vector is normalized to a unit vector), not in the direction of the average normal of the initial tri surface.