Edge Blending Overview   

<<< Creation of Extruded Bodies Chapters Edge Blending Functions and Options >>>

Contents

[back to top]


29.1 Introduction

Parasolid provides two forms of blending:

Edge blending smooths off an edge or list of edges, by introducing a new face or faces to a body. The resulting blend faces are usually tangent continuous with the adjoining faces.

[back to top]

29.1.1 Edge blending documentation

The edge blending documentation is split into four sections:

[back to top]

29.1.2 Face-face blends

Face-face blending is described in Chapter 33, "Face-Face Blending".

Edge blending and face-face blending should not be thought of as alternatives, but as two approaches which work together powerfully, because their strengths and weaknesses are complementary.

[back to top]


29.2 Fixed and unfixed edge blends

Edge blends are initially attached as attributes to the edges of a solid body. While attached to edges in this way the blends are referred to as unfixed. Unfixed blends can be sketched, checked and modified. They can then be incorporated into the body (fixed) as faces replacing the blended edges.

An unfixed blend can be deleted from an edge or its shape can be changed, until it is fixed into the body. The shape of an unfixed blend may be changed by altering its defining parameters or by changing the faces on either side of the edge. Once a blend has been fixed it may not be possible to restore the original edge, except by using roll-back to unwind the modeling operation or operations.

[back to top]

29.2.1 Type of blend

There are three type of edge blends:

Rolling ball blend

Function:

PK_EDGE_set_blend_constant

Rolling ball blends have a circular cross section, they are the result of rolling a sphere along the two surfaces adjoining the edge (see Figure 29-1). The extent of rolling ball blends is determined by specifying the radius of the sphere.

 

Figure 29-1 Rolling ball blend

Chamfer

Function:

PK_EDGE_set_blend_chamfer

Chamfers are blends which have a linear cross section (see Figure 29-2). In general, chamfer blends are not tangent continuous with the faces adjoining the original edge. The extent of chamfer blends is determined by the offset surfaces being intersected; the resulting curves being projected onto the underlying surface; between which the chamfer blend is constructed (see Figure 29-4).

 

Figure 29-2 Chamfer blend

Variable rolling ball blend

Function:

PK_EDGE_set_blend_variable

Variable rolling ball blends are those blends where the radius of the circular cross section of the blend varies along the blend (see Figure 29-3). Conic cross section variable rolling ball blends can also be constructed.

 

Figure 29-3 Variable rolling ball blend

[back to top]

29.2.2 Ranges

The range parameters range_1 , and range_2 are real values, for chamfer and variable blends they define where the blend surface meets the supporting surfaces.

Ranges on chamfer blends

For chamfer blends the following rule applies:

 

Figure 29-4 Extent of chamfer blends

This method of creating chamfer blends has the following results:

 

Figure 29-5 Resulting chamfer blends dependent on the angle between the faces

Ranges on variable rolling ball blends

If the two ranges for each point along the VRB are equal, and all rho values are zero, then the VRB has circular cross section.

If different ranges are specified on each side of the blend, and all rho values are zero, Parasolid fits a blend with an elliptical cross section.

 

Figure 29-6 Ranges for rolling ball blends

Further control of the shape of the cross section is obtained by setting the rho to a non-zero value:

 

Figure 29-7 Using different rho values to control the shape of a blend cross section

If a non-zero rho value is specified for any single point along the VRB, then a non-zero rho value must be specified for every point along the VRB.

See "Conic cross-section blends" in Chapter 32, "Face-Face Blending" for information on how to conic face-face blends.

[back to top]


29.3 Limitations on edge blending

There are a number of limitations which determine whether a particular edge can be blended. These limitations are based both on the underlying topology and geometry of the edge and the presence of blends on adjacent edges. Some limitations are general while others are related to the number of adjacent edges that are blended.

The geometry of blends can be extremely complex, and it is not possible to lay down hard and fast rules which can always be guaranteed to apply. The following sections give general rules of thumb which apply in the majority of cases.

[back to top]

29.3.1 General limitations on edge blending

Some general limitations are:

 

Figure 29-8 Exception to the previous rule

[back to top]

29.3.2 Specific limitations on edge blending

Blending One Edge at a Vertex

If three edges meet at the vertex, it is normally possible to blend one of them. The occasion when it is not possible to blend one of the edges is when the end surface is undefined. For example:

 

Figure 29-9 Limitation of blending one edge at a vertex

[back to top]


29.4 Edge blending rules, theories and tips

Although it is fairly straightforward to describe illegal blends it is much harder to generate rules of thumb which guarantee that blends are legal. In particular it is often difficult to avoid falling over the illegal overlap/intersection type errors caused by choosing too large blend radii. However, the following rules and tips are worth considering but always remember that it is best to make and fix blends in small groups:

[back to top]

29.4.1 Blending one edge at a vertex

If more than three edges meet at a vertex it is usually possible to blend one of them providing that:

[back to top]

29.4.2 Blending two edges at a three edge vertex

When two out of three edges at a vertex are blended the following apply:

 

Figure 29-10 Blends which add/remove material

[back to top]

29.4.3 Blending three edges at a three edge vertex

When all three edges of a three edge vertex are blended simultaneously (put them on and fix them as a group), an extra blend face is added to smooth out the vertex.

[back to top]

29.4.4 Blending two edges at a four edge vertex

When blending two edges of a four edge vertex with a rolling ball blend, the following constraints are applied:

 

Note: The two edges to be blended must both be picked before either blend is fixed.

Some common cases are illustrated in Figure 29-11. The illustrations show the "before" and "after" for each case; in the left hand picture of each example, the four-edge vertex is surrounded by a dotted circle.

 

Figure 29-11 Blending two edges at four edge vertices

[back to top]


29.5 Variable radius blends

When creating variable radius blends (VRBs) the following criteria must be satisfied:

 

Note: It is legal to put a variable radius blend on a loop edge with only one vertex, the radius value at this point need only be supplied, provided at least one other radius value is supplied at another position on the edge, otherwise it must be supplied twice. It is not legal to put a variable radius blend on an edge with no vertices.

[back to top]

29.5.1 Blends and B-surfaces

In principle edges at which one or both of the adjoining surfaces is parametric can be blended subject to the same restrictions as any other edge. However, the nature of B-surface definitions introduces extra restrictions on blending:

[back to top]


29.6 Outputting fixed blend surfaces

PK_BLENDSF_ask outputs the data describing a fixed blend surface. Internally there is only one type of blend surface, the blended edge, which is used for a face which smooths out an edge or a vertex, e.g. that which is used to smooth out a three edge vertex when two of the blends add material and the other removes material (or vice versa).

[back to top]

29.6.1 Blended edge

The data which is returned for a blended edge is:

The chamfer blend type is never returned, the surfaces introduced by fixing chamfers are always planes, cylinders, cones or B-surfaces.

[back to top]

29.6.2 Simplification of blend surfaces

Wherever possible, Parasolid simplifies fixed rolling ball blends to tori and cylinders.

PK_BLENDSF_ask can only be used to output a surface of type PK_CLASS_blend. PK_ENTITY_is_surf may be used to determine the type of surfaces created by fixing blends.

[back to top]


29.7 Deleting blend faces

PK_FACE_delete_blends is used to delete blend faces. The faces supplied must all come from the same body.

PK_FACE_delete_blends takes into account topological changes that occur during blending in order to provide a delete operation that is as close to an inverse blend as possible. Using this information, PK_FACE_delete_blends can delete a higher proportion of faces than PK_FACE_delete.

PK_FACE_delete_blends cannot recreate any topology that was completely destroyed by the blend operation.

 

Figure 29-12 Before and after deleting the faces created by a blend operation

 

Warning: PK_FACE_delete_blends assumes that the faces specified have been created by a blend operation. It is not suitable as a tool for general face deletion.

The check_fa_fa option is used to specify whether face-face consistency checking should be performed on the body resulting from the operation. The permitted values are:

 

Value Description

PK_check_fa_fa_yes_c

Check for face-face inconsistencies (the default)

PK_check_fa_fa_no_c

Do not check for face-face inconsistencies

If face-face consistency checking is performed, then altered faces are checked against each other and against unaltered faces.

You can also use PK_FACE_delete_facesets to delete constant radius rolling ball blends from a body. See Section 40.5, "Deleting facesets" for details.

 

[back to top]

<<< Creation of Extruded Bodies Chapters Edge Blending Functions and Options >>>