On this page:
4.8.1 Collapse Geometry
4.8.1.1 Collapse Angle
4.8.1.1.1 Simple
4.8.1.1.2 Complete
4.8.1.2 Collapse Curve
4.8.1.3 Collapse Surface
4.8.2 Composite Geometry
4.8.2.1 Composite Curves
4.8.2.2 Composite Surfaces
4.8.3 Partitioned Geometry
4.8.3.1 Partitioned Curves
4.8.3.2 Partitioned Surfaces
4.8.3.3 Partitioned Volumes
4.8.3.4 Using Mesh Intersections to Partition Surfaces
4.8.3.5 Removing Partitions
4.8.4 Deleting Virtual Geometry
4.8.5 Simplify Geometry
8.5

4.8 Virtual Geometry

The Virtual Geometry module in Cubit provides a way to modify the topology of the model without affecting the underlying ACIS geometry representation and without making changes to the actual solid model. Virtual Geometry includes the capability to composite or partition geometry as well as creates new virtual geometric entities. Virtual Geometry operations are most often used as a tool for adjusting the geometry to allow mapping, sub-mapping or sweeping mesh generation schemes to be applied.

The advantage to using Virtual Geometry is that all operations are reversible. With standard geometry modification commands, changes are made to the underlying geometry representation and cannot be changed once effected. With virtual geometry, the original solid model topology can be easily restored. This is useful when geometry modifications are made in order to apply a particular meshing scheme. Virtual geometry can be applied and later removed once the part has been meshed.

4.8.1 Collapse Geometry

The collapse geometry commands use virtual geometry to tweak small angles and curves to improve meshability of geometry models. The following options for collapsing geometry are available:

4.8.1.1 Collapse Angle

The collapse operation allows the user to collapse small angles using virtual geometry.

To collapse small angles

  1. On the Command Panel, click on Geometry and then Vertex.

  2. Click on the Modify action button.

  3. Select Collapse Angle from the drop-down menu.

  4. Enter in the appropriate settings for Vertex ID. This can also be done using the Pick Widget function.

  5. Enter in the appropriate setting on this menu for c1 and c2.

  6. Click Apply.

Collapse Angle at Vertex <id> [angle <degrees> ] Curve <id1> [Arc_length1 <length>] Curve <id2> [Arc_length2 <length> | Same_size | Perpendicular | Tangent] [Composite_vertex <angle>] [Preview]

The collapse angle command is used to eliminate small angles at vertices, where curves meet at a tangential point. The command will split each curve at a specified distance (?1 and ?2) as shown in Figure 187, and create two new vertices along those curves. The remaining small angle will be composited into its neighboring surface using virtual geometry.One of two methods may be used for specifying options for the collapse angle command: simple and complete as described below.

4.8.1.1.1 Simple

Curves are not specified for this option. Instead, Cubit will automatically identify the smallest angle at the vertex and collapse it using the tangent option described below (see Figure 190). An optional angle option may also be specified that controls the arc length (δ1) along curve C1 where the curve will be split. If not specified a value of 30 degrees will be used. For the simple option of this command, a range of vertices may be used. The complete version of the command requires exactly one vertex and two curves.

4.8.1.1.2 Complete

The complete options of the command allow you to specify which curves and where to split each curve. You must input a distance for the first curve (δ1), but the second location can be determined based on the length and direction of the first curve.

Figure 187: Collapse angle syntax

The arclength option will split each curve at a specified distance ?1 and ?2, (See Figure 187) measured from the vertex. You must input at least one arclength for each of the options listed below.

The same_size option will split curve 2 so that the two resulting curves, ?1 and ?2, are the same length as shown in Figure 188.

Figure 188: Collapse angle using the same-size option

The perpendicular option will split curve 2 so it is perpendicular to the split location on curve 1, as shown in Figure 189.

Figure 189: Collapse angle using the perpendicular option

The tangent option will split curve 2 where a line tangent to curve 1 at the split location intersects curve 2, as shown in Figure 190.

Figure 190: Collapse angle using the tangent option

The composite_vertex option automatically composites resulting surfaces if there are only two curves left at the vertex, and the angle is less than a specified tolerance.

The preview option will preview composited surface before applying changes.

Figure 191: An example of a meshed surface that is generated after using the collapse angle command.

4.8.1.2 Collapse Curve

The collapse curve command allows the user to collapse small curves using virtual geometry. It is intended to be used in cases where removing a small curve to simplify topology will facilitate meshing. The operation can be thought of as reconnecting curves from one vertex on the small curve to the other vertex. If the user doesn’t specify which vertex to keep during the operation Cubit will choose one of the vertices. The operation is performed using virtual partitions and composites on the curves and surfaces surrounding the small curve. The command syntax is:

To collapse a curve

  1. On the Command Panel, click on Geometry and then Curve.

  2. Click on the Modify action button.

  3. Select Collapse from the drop-down menu.

  4. Enter in the appropriate settings for Curve ID. This can also be done using the Pick Widget function.

  5. Optionally select Collapse To. If this is done, enter in the appropriate settings for Vertex ID. This can also be done using the Pick Widget function.

  6. Enter in any other appropriate setting on this menu.

  7. Click Apply.

Collapse Curve <id> [Vertex <id>] [Ignore] [Real_split]

The vertex keyword allows the user to specify which vertex on the small curve to keep during the operation or in other words which vertex to "collapse to". Depending on the surrounding topological configuration some vertices cannot currently be chosen so if the user specifies a vertex to collapse to that results in a complex topological configuration that Cubit can’t currently handle the user will be notified and encouraged to pick a different vertex. If the user doesn’t specify a vertex Cubit will attempt to choose the "best" vertex to keep based on surrounding topology and geometry. Currently, the collapse curve command only handles curves where the vertex that is NOT retained has a valence of 3 or 4.

The ignore keyword allows the user to specify whether or not small portions of surfaces that are partitioned off of one surface and composited with a neighboring surface during the collapse curve operation are considered when evaluating the new composite surface. By specifying the ignore option the user tells Cubit that these small surfaces will be ignored in future evaluations of the composite surface. This can be beneficial in cases where the small surface makes a sharp angle with the neighboring surface it is being composited with. These first derivative discontinuities of composite surfaces can make it difficult for the meshing algorithms to proceed and ignoring the small surfaces during evaluation can help remedy this problem. By default the small surfaces will not be ignored.

The real_split option tells Cubit to use the solid modeling kernel’s (ACIS) split surface functionality to do the splitting rather than using virtual partitioning. The result is that you only have virtual composites at the end and no virtual partitions. The main advantage of using this option is that the solid modeling kernel’s split operation is often more reliable than the virtual partition.

Figure 192 shows a typical example where the collapse curve command should be used to simplify the topology for meshing.

Figure 192: Example where the collapse curve operation is needed.

Figure 193 shows the above example after collapsing the small curve.

Figure 193: Above example after collapsing the small curve.

4.8.1.3 Collapse Surface

The collapse surface command allows the user to remove surface boundaries from the model. This is accomplished by splitting the surface at two given locations and combining it into two adjacent surfaces using virtual geometry operations. The command syntax is:

To collapse a surface

  1. On the Command Panel, click on Geometry and then Surface.

  2. Click on the Modify action button.

  3. Select Collapse from the drop-down menu.

  4. Enter in the appropriate settings for Surface ID and Into Surface ID(s). This can also be done using the Pick Widget function.

  5. Select Vertex, Position (X, Y, Z), Node or Location from the From Location menu and enter in the appropriate values.

  6. Select Vertex, Position (X, Y, Z), Node or Location from the To Location menu and enter in the appropriate values.

  7. Click Apply.

Collapse Surface <id> Across Location1 Location 2 With Surface <id_list> [Preview]

The locations option can use any of the general Cubit location commands. However, the vertex and curve options are among the most useful location options. For example, the command

collapse surface 15 across vertex 128 curve 40 with surface 26 117

would split surface 15 by the line that is formed between vertex 128 and the midpoint of curve 40. It would then composite the two parts of surface 15 that are adjacent to surfaces 26 and 117. The result is that three surfaces have been reduced to two.

The collapse surface command is most useful in removing blended surfaces (i.e. fillets and chamfers) from a model. For example, Figure 194 below shows a set of highlighted surfaces on a bracket. By collapsing all these surfaces the model shown in Figure 195 is created. Collapsing the surfaces for this model simplifies the model and allows for the creation of a higher quality mesh.

Figure 194: Bracket with chamfered edges.

Figure 195: Bracket after highlighted edges have been collapsed

4.8.2 Composite Geometry

The virtual geometry module has the capability to combine a set of connected curves into a single composite curve, or a set of connected surfaces into a single surface. The general purpose is to suppress or remove the child geometry common to those entities being composited. For example, compositing a set of curves suppresses the vertices common to those curves, thus removing the constraint that a node must be placed at that vertex location.

To use the composite create operation

  1. On the Command Panel, click on Geometry.

  2. Click on Surface or Curve.

  3. Click on the Modify action button.

  4. Select Composite from the drop-down menu.

  5. Enter in the appropriate settings for Surface ID(s) or Curve ID(s). This can also be done using the Pick Widget function.

  6. Select Create from the Select menu and enter in the appropriate settings.

  7. Click Apply.

Composite Create {Surface|Curve} <id_list>

This command will composite as many surfaces (or curves) as possible, in many cases creating multiple composites.

The entities combined to create the composite must either all be unmeshed or all be meshed. A meshed composite surface can not be removed unless the mesh is first deleted.

Care should be taken when compositing over large discontinuities as it may cause problems for the meshing algorithms and may result in poor quality elements. discontinuities are corners or abrupt changes in the surface normal.

To use the composite delete operation

  1. On the Command Panel, click on Geometry.

  2. Click on Surface or Curve.

  3. Click on the Modify action button.

  4. Select Composite from the drop-down menu.

  5. Enter in the appropriate settings for Surface ID(s) or Curve ID(s). This can also be done using the Pick Widget function.

  6. Select Delete from the Select menu.

  7. Click Apply.

Composite Delete {Surface|Curve} <id>

4.8.2.1 Composite Curves

To use the composite create operation for a curve

  1. On the Command Panel, click on Geometry and then Curve.

  2. Click on the Modify action button.

  3. Select Composite from the drop-down menu.

  4. Enter in the appropriate settings for Curve ID(s). This can also be done using the Pick Widget function.

  5. Select Create from the Select menu.

  6. Enter in the appropriate values for Keep Vertex ID and Max Curve Angle.

  7. Click Apply.

Composite Create Curve <id_range> [Keep Vertex <id_list>] [Angle <degrees>]

Related Commands

Composite delete curve <id_range> [force]

The additional arguments provide two methods to prevent vertices from being removed from the model or composited over. The first method, keep vertex explicitly specifies vertices which are not to be removed. This option can also be used to control which vertex is kept when compositing a set of curves results in a closed curve.

The angle option specifies vertices to keep by the angle between the tangents of the curves at that vertex. A value less than zero will result in no composite curves being created. A value of 180 or greater will result in all possible composites being created. The default behavior is an empty list of vertices to keep, and an angle of 180 degrees.

4.8.2.2 Composite Surfaces

To use the composite create operation for a surface

  1. On the Command Panel, click on Geometry and then Surface.

  2. Click on the Modify action button.

  3. Select Composite from the drop-down menu.

  4. Enter in the appropriate settings for Surface ID(s). This can also be done using the Pick Widget function.

  5. Select Create from the Select menu.

  6. Enter in the appropriate values for Max Surface Angle, Keep Vertex ID and Max Curve Angle.

  7. Click Apply.

Composite Create Surface <id_range> [Angle <degrees>] [Nocurves] [Keep [Angle <degrees>] [Vertex <id_list>]]

Composite delete surface <id_range> [force]

The angle argument prevents curves from being removed from the model or composited over. Composites will not be generated where the angle between surface normals adjacent to the curve is greater than the specified angle.

When a composite surface is created, the default behavior is also to composite curves on the boundary of the new composite surface.

Curves are automatically composited if the angle between tangents at the common vertex is less than 15 degrees. The nocurves option can be used to prevent any composite curves from being created.

The keep keyword can be used to change the default choice of which curves to composite. The arguments following the keep keyword behave the same as for explicit composite curve creation. The nocurves and keep arguments are mutually exclusive.

4.8.2.2.1 Controlling the Surface Evaluation Method for Composite Surfaces

It typically takes longer to mesh a single composite surface than to mesh the surfaces used in the creation of the composite. To improve speed, composite surfaces use an approximation method to evaluate the closest point to a trimmed surface. However, this evaluation method may give poor results for composites of highly convoluted surfaces.

The virtual geometry module provides a way to change the way surfaces are evaluated using the following command:

Composite Closest_pt Surface <id> {Gme|Emulate}

The default behavior is to use the emulate method, as it is typically considerably faster. Specifying the gme option will force the specified composite surface to use the exact calculation of the closest point to a trimmed surface, as provided by the solid modeler. The gme option, however, can be considerably slower.

4.8.2.2.2 Composite Determination

The composite create surface command is non-deterministic in some circumstances. When three or more adjacent surfaces are to be composited, all the surfaces may not be able to be composited into a single surface as illustrated in Figure 196. In this case different subsets of the surfaces may be composited and the command will choose arbitrary subsets to composite. As an example, there are three surfaces A, B, and C, all adjacent to each other. The common curve between A and B is AB, the common curve between B and C is BC, and the common curve between A and C is CA. If the curve BC cannot be removed, either due to the angle specified in the composite command, or because there is a fourth surface, D, also using that curve, the command will arbitrarily choose to either composite A and B or A and C.

composite.gif

Figure 196: In some cases, the program will make a determination of which surfaces to composite.

4.8.3 Partitioned Geometry