Overview Of Convergent Modeling   

<<< Introduction To Convergent Modeling Chapters Facet Model Structure >>>

Contents

[back to top]


82.1 What is Convergent Modeling?

Parasolid provides the ability to perform topological operations, such as booleans, sectioning and offsetting, on bodies containing any combination of classic and facet geometry.

The different combinations of facet and “Classic Geometry” that may be found in a body are described below:

 

Type of body

Description

Classic body

A classic body is a body that contains only classic Parasolid surface and curve geometry.

Facet body

A facet body is a body that contains only facet geometry. Facet geometry comprises geometry composed of mesh and polyline data (often referred to collectively as facet data), rather than classic Parasolid surface and curve geometry.

  • A polyline is a curve consisting of a series of line segments. In a facet model, polylines are attached to model edges in place of classic curves.
  • A mesh is a type of facet surface consisting of a connected collection of triangular facets. In a facet model, meshes are attached to model faces in place of classic surfaces.

Mixed body

A mixed body is a body that contains a combination of both classic and facet geometry.

Within a mixed body you may find topology with combinations of facet or classic geometry as follows:

 

Geometry

Topology

Definition

Classic

Edge

A classic edge is an edge that has only classic geometry, and all of whose faces (if any) have only classic geometry.

Facet

Edge

A facet edge is an edge that has only facet geometry, and all of whose faces (if any) have only facet geometry.

Mixed

Edge

A mixed edge is an edge that has a mixture of facet and classic geometry, and/or whose faces (if any) have a mixture of facet and classic geometry.

Classic

Vertex

A classic vertex is a vertex whose faces (if any) and/or edges have only classic geometry.

Facet

Vertex

A facet vertex is a vertex whose faces (if any) and/or edges have only facet geometry.

Mixed

Vertex

A mixed vertex is a vertex whose faces (if any) and/or edges have a mixture of facet and classic geometry.

 

Note: In a mixed body, Parasolid still supports rubber topology (that is, topology that has no geometry attached), as an interim stage between modelling operations. For example:

  • An edge with a classic surface attached to one of its faces, and no geometry on the other face is considered a classic edge.
  • An edge with a mesh attached to one of its faces, and no geometry on the other face is considered a facet edge.

See Chapter 83, “Facet Model Structure” for more information on polylines and meshes.

See Chapter 84.6, “Creating a mixture of facet and classic geometry” for more information on combining mixed geometry.

 

Note: In the context of this volume, a mesh is not the same as a finite element mesh.

The following areas of Parasolid functionality can receive and operate on mesh data:

 

Figure 82-1 Performing a deformation operation on a mesh

 

Figure 82-2 Thickening and hollowing a facet body

82.1.1 Mesh and facet data requirements

Parasolid places some minimal requirements on the mesh and facet data that it can work with. This section explains what those requirements are.

 

Requirement

Notes

Triangular facets

All facets in a mesh must be triangular. Any attempt to pass mesh data that contains non-triangular facets to Parasolid will be unsuccessful.

Manifold meshes

All meshes must be manifold, that is, they must have only two facets meeting along each mfin. If your application needs to pass non-manifold models to Parasolid, then you should use non-manifold topology with individual meshes that are themselves manifold.

Vertex matched meshes

Meshes that are attached to models must be vertex matched.This means that along the polyline dividing the two meshes, the facet vertices of both meshes must lie in the same location as the position vectors on the polyline, so that they match one-to-one with those position vectors. Such models will always be watertight (i.e.there are no gaps between facets along the polyline), as shown in Figure 82-3 (a). Figure 82-3 (b) shows an example where some facet vertices along the polyline do not match one-to-one with the position vectors.

 

Figure 82-3 Ensuring face meshes are vertex matched with the polyline of the edge

Disjoint meshes, that is, meshes with separate components, can be passed to Parasolid. These components must be split up before attaching them to Parasolid faces.

Self-intersecting meshes can also be passed to Parasolid, but you should treat these in the same way that you would treat self-intersecting B-surfaces: leave them as orphan geometry until you need them, and clean up the self-intersections before you attempt to model with them.

“Crab-claw” meshes are supported. These are meshes made up of connected sets of facets where facets also share a single common position at a single vertex with more than two laminar mfins.

[back to top]


82.2 How to make use of Convergent Modeling in Parasolid

 

Note: There are additional royalty fees for distributing your Parasolid-based products with Convergent Modelling functionality enabled. If you have not licensed Convergent Modelling, your current maintenance fees cover the use of Convergent Modelling functionality in your development environment for evaluation and prototyping purposes. Your Parasolid Sales Representative can provide full information if you have any questions.

All calls to Parasolid functions must take place within a Parasolid session. By default, support for Convergent Modeling is disabled when you start a Parasolid session. Before you can enable this functionality and begin to perform Convergent Modeling in Parasolid, you should do the following:

 

Note: Not all Parasolid functions support Convergent Modeling.You should check the PK Interface Programming Reference Manual to see if the functions you wish to use support facet geometry. Interfaces that do not, are marked [NF] in the PK Interface Programming Reference Manual and need to be left at their default values. Those that offer partial support are marked [PF] and can be changed to values that support facet geometry. In general, Parasolid functions that are not supported will give the error PK_ERROR_facet_geometry to indicate that the model contains facet geometry but the function does not support facet geometry.

 

Related Topics:

82.2.1 Enabling support for facet geometry

Parasolid provides a number of functions that let you manage Convergent Modeling within your application:

 

Function

Description

PK_SESSION_set_facet_geometry

Allows you to enable or disable facet geometry within a session using facet_geometry , which has the following values:

Default: PK_facet_geometry_no_c

PK_SESSION_ask_facet_geometry

Allows you to enquire whether facet geometry is enabled within the session using facet_geometry as described in PK_SESSION_set_facet_geometry.

PK_PART_receive, PK_PART_receive_b and PK_PART_receive_u
PK_PARTITION_receive, PK_PARTITION_receive_b and PK_PARTITION_receive_u
PK_PARTITION_receive_deltas_2

The receive_mixed option within these functions allows you to control whether you want to receive mixed bodies in your application. On receiving any data into a Parasolid session, you can choose to either:

  • Generate an error on encountering a mixture of facet and classic geometry. This is the default.
  • Receive mixed parts into your application.

By default, facet geometry is disabled when you start a Parasolid session. To use mixed geometry you must have the facet_geometry and the receive_mixed options enabled as follows:

Figure 82-4 shows the typical workflow required to create and work in a Parasolid session.

 

Figure 82-4 Typical workflow in a session using Convergent Modeling

82.2.2 Enquiring if facet geometry is present

You can check to see if facet geometry is present in a partition using PK_PARTITION_ask_facet_geom. This function determines if facet geometry is present in a partition. In addition, it can optionally return those parts that have facet geometry, and their geometric category, and any orphan facet geometry in the partition.

See the PK Reference documentation for more information.

Parasolid also has two functions that provide information about the category of the geometric entities.

See the PK Reference documentation for more information on these functions.

82.2.3 Workflow for creating Parasolid meshes from foreign facet data

The following workflow describes the recommended best practice for creating Parasolid meshes from foreign facet data.

 

[back to top]

<<< Introduction To Convergent Modeling Chapters Facet Model Structure >>>