**4.4.1** *Geomagic Studio v.11*

176 Reverse Engineering – Recent Advances and Applications

Fig. 16. Results of the sheet metal example tested using *Rapidform*, (a) polygon mesh (126,492

Based on the software evaluated and examples tested, we concluded that *Geomagic* and *Rapidform* are the only viable software tools for automated surface constructions. Between these two, *Geomagic* offers more flexible and easier to use capabilities in editing NURB curves and surfaces, as well as smoothing NURB surfaces. On the other hand, *Rapidform*  offers more quality measurement functions, such as continuity and surface reflection, on the constructed surface model. In addition, *Rapidform* provides feature tree that allows users to roll back and edit geometric entities created previously, which is extremely helpful in dealing with complex models. However, *Rapidform* tends to create larger NURB surfaces that could sometimes lead to problems. Overall, either tool would do a very good job for surface constructions; *Geomagic* has a slight edge in support of editing geometric entities.

Although NURB surface models represent the part geometry accurately, they are not parametric. There are no CAD-like geometric features, no section profiles, and no dimensions; therefore, design change is impractical with the NURB surface models. In some applications, geometry of the parts must be modified in order to achieve better product

In round 2, we focus on evaluating parametric modeling capabilities in four software tools, including *Geomagic*, *Rapidform*, *SolidWorks*, and *Wildfire*. More specifically, we are looking for

1. Can geometric primitives, such as cones, spheres, etc., be automatically recognized from

2. Whether a section sketch of a geometric feature can be created from a polygon mesh or point cloud (or segmented regions)? This is mainly for generating solid models

3. Whether a section sketch generated in (2) can be fully parameterized? Can dimensions and geometric constraints, such as concentric, equal radii, etc., be added to the section

Solid modeling capabilities in the context of reverse engineering for the four selected software are listed in Table 5, based on the first glance. Among these four, *Geomagic*, *Rapidform*, and *SolidWorks* are able to recognize basic primitives, such as plane, cylinder,

segmented regions? How many such primitives can be recognized?

triangles), (b) NURB surface model (43 patches), and (c) deviation analysis

**4.3.3** *Summary of round one evaluations*

**4.4 Round 2: Parametric solid modeling** 

performance, among other possible scenarios.

answers to the following three questions:

interactively.

profile conveniently?

*Geomagic* automatically recognizes primitive surfaces from segmented regions. If a primitive surface is misrecognized or unrecognizable, users are able to interactively choose the segmented region and assign a correct primitive type. Often, this interactive approach leads to a solid model with all bounding surfaces recognized. Unfortunately, there is no feature tree, and no CAD-like capabilities in *Geomagic*. Users are not able to see any sketch or dimensions in *Geomagic Studio* v.11. Therefore, users will not be able to edit or add any dimensions or constraints to parameterize the sketch profiles. Section sketches only become available to the users after exporting the solid model to a selected CAD package supported by *Geomagic*.

A Review on Shape Engineering and Design Parameterization in Reverse Engineering 179

sketch generated are non-planar spline curves that cannot be parameterized. Users can use

In general, there are six steps employed in using the sketch method, (1) creating reference sketch plane, (2) extracting sketch profile by intersecting the sketch plane with the polygon mesh, (3) converting extracted geometric entities (usually as planar spline curves) into regular line entities, such as arcs and straight lines, (4) parameterizing the sketch by adding dimensions and constraints, (5) extruding, revolving, or lofting the sketches to create solid features; and (6) employing Boolean operations to union, subtract, or intersect features if

*Rapidform* provides *Auto Sketch* capability that automatically converts extracted spline curves into lines, circles, arcs, and rectangles, with some constraints added. Most constraints and dimensions will have to be added interactively to fully parameterize the sketch profile. Steps 4 to 6 are similar to conventional CAD operations. With capabilities offered by

For the *block* example, a plane that is parallel to the top (or bottom) face of the base block was created first (by simply clicking more than three points on the surface). The plane is offset vertically to ensure a proper intersection between the sketch plane and the polygon mesh. The geometric entities obtained from the intersection are planar spline curves. The *Auto Sketch* capability of *Rapidform* can be used to extract a set of regular CAD-like line entities that best fit the spline curves. These standard line entities can be joined and parameterized by manually adding dimensions and constraints for a fully parameterized

Fig. 18. A parametric solid model of the *block* example created using *Rapidform*, (a) fully parameterized section sketch, (b) extrusion for the base block, and (c) design change

Once the sketch profile is parameterized, it can be extruded to generate an extrusion feature for the base block (Fig. 18b). The same steps can be followed to create more solid features, and Boolean operations can be employed to union, subtract, or intersect solid features for a fully parameterized solid model. The final solid model is analyzed by using *Accuracy* 

*Rapidform*, fully constrained parametric solid models can be created efficiently.

either or both methods to generate solid features for a single part.

**Method 1: Sketch** 

necessary.

section profile, as shown in Fig. 18a.

The *block* example (3in.×5in.×0.5in.) of 634,957 points shown in Fig. 4 is employed to illustrate the capabilities offered in *Geomagic*. As shown in Fig. 17a, primitive surfaces in most regions are recognized correctly. However, there are some regions incorrectly recognized; for example, the hole in the middle of the *block* was recognized as a free-form primitive, instead of a cylinder. There are also regions remained unrecognized; e.g., the middle slot surface.

Fig. 17. Primitive surfaces recognized in *Geomagic*, (a) recognized regions, and (b) extracted primitive surfaces in *SolidWorks* 

Although most primitives are recognized in *Geomagic*, there are still issues to address. One of them is misrepresented profile. One example is that a straight line in a sketch profile may be recognized as a circular arc with a very large radius, as shown in Fig. 17b (this was found only after exporting the solid model to *SolidWorks*). The sketch profile will have to be carefully inspected to make necessary corrections, as well as adding dimensions and constraints to parameterize the profile. Unfortunately, such inspections cannot be carried out unless the solid model is exported to supported CAD systems. Lack of CAD-like capability severely restricts the usability of the solid models in *Geomagic*, let alone the insufficient ability for primitive surface recognition.

#### **4.4.2** *Rapidform XOR3*

*Rapidform* offers much better capabilities than *Geomagic* for parametric solid modeling. Very good CAD-like capabilities, including feature tree, are available to the users. These capabilities allow users to create solid models and make design changes directly in *Rapidform*. For example, users will be able to create a sketch profile by intersecting a plane with the polygon mesh, and extrude the sketch profile to match the bounding polygon mesh for a solid feature. On the other hand, with the feature tree users can always roll back to previous entities and edit dimensions or redefine section profiles. These capabilities make *Rapidform* particularly suitable for parametric solid modeling. *Rapidform* offers two methods for solid modeling, *Sketch*, and *Wizard*, supporting fast and easy primitive recognition from segmented mesh. The major drawback of the *Wizard* is that some guide curves and profile sketch generated are non-planar spline curves that cannot be parameterized. Users can use either or both methods to generate solid features for a single part.

#### **Method 1: Sketch**

178 Reverse Engineering – Recent Advances and Applications

The *block* example (3in.×5in.×0.5in.) of 634,957 points shown in Fig. 4 is employed to illustrate the capabilities offered in *Geomagic*. As shown in Fig. 17a, primitive surfaces in most regions are recognized correctly. However, there are some regions incorrectly recognized; for example, the hole in the middle of the *block* was recognized as a free-form primitive, instead of a cylinder. There are also regions remained unrecognized; e.g., the

Fig. 17. Primitive surfaces recognized in *Geomagic*, (a) recognized regions, and (b) extracted

Although most primitives are recognized in *Geomagic*, there are still issues to address. One of them is misrepresented profile. One example is that a straight line in a sketch profile may be recognized as a circular arc with a very large radius, as shown in Fig. 17b (this was found only after exporting the solid model to *SolidWorks*). The sketch profile will have to be carefully inspected to make necessary corrections, as well as adding dimensions and constraints to parameterize the profile. Unfortunately, such inspections cannot be carried out unless the solid model is exported to supported CAD systems. Lack of CAD-like capability severely restricts the usability of the solid models in *Geomagic*, let alone the

*Rapidform* offers much better capabilities than *Geomagic* for parametric solid modeling. Very good CAD-like capabilities, including feature tree, are available to the users. These capabilities allow users to create solid models and make design changes directly in *Rapidform*. For example, users will be able to create a sketch profile by intersecting a plane with the polygon mesh, and extrude the sketch profile to match the bounding polygon mesh for a solid feature. On the other hand, with the feature tree users can always roll back to previous entities and edit dimensions or redefine section profiles. These capabilities make *Rapidform* particularly suitable for parametric solid modeling. *Rapidform* offers two methods for solid modeling, *Sketch*, and *Wizard*, supporting fast and easy primitive recognition from segmented mesh. The major drawback of the *Wizard* is that some guide curves and profile

middle slot surface.

primitive surfaces in *SolidWorks* 

**4.4.2** *Rapidform XOR3*

insufficient ability for primitive surface recognition.

In general, there are six steps employed in using the sketch method, (1) creating reference sketch plane, (2) extracting sketch profile by intersecting the sketch plane with the polygon mesh, (3) converting extracted geometric entities (usually as planar spline curves) into regular line entities, such as arcs and straight lines, (4) parameterizing the sketch by adding dimensions and constraints, (5) extruding, revolving, or lofting the sketches to create solid features; and (6) employing Boolean operations to union, subtract, or intersect features if necessary.

*Rapidform* provides *Auto Sketch* capability that automatically converts extracted spline curves into lines, circles, arcs, and rectangles, with some constraints added. Most constraints and dimensions will have to be added interactively to fully parameterize the sketch profile. Steps 4 to 6 are similar to conventional CAD operations. With capabilities offered by *Rapidform*, fully constrained parametric solid models can be created efficiently.

For the *block* example, a plane that is parallel to the top (or bottom) face of the base block was created first (by simply clicking more than three points on the surface). The plane is offset vertically to ensure a proper intersection between the sketch plane and the polygon mesh. The geometric entities obtained from the intersection are planar spline curves. The *Auto Sketch* capability of *Rapidform* can be used to extract a set of regular CAD-like line entities that best fit the spline curves. These standard line entities can be joined and parameterized by manually adding dimensions and constraints for a fully parameterized section profile, as shown in Fig. 18a.

Fig. 18. A parametric solid model of the *block* example created using *Rapidform*, (a) fully parameterized section sketch, (b) extrusion for the base block, and (c) design change

Once the sketch profile is parameterized, it can be extruded to generate an extrusion feature for the base block (Fig. 18b). The same steps can be followed to create more solid features, and Boolean operations can be employed to union, subtract, or intersect solid features for a fully parameterized solid model. The final solid model is analyzed by using *Accuracy* 

A Review on Shape Engineering and Design Parameterization in Reverse Engineering 181

features, as indicated in Fig. 20. This is not a valid solid model. It is inflexible to edit and make changes to the *Wizard* features since the sketch profile is represented in spatial spline

In summary, *Rapidform* is the only reverse engineering software that supports for creating parametric solid models from scanned data. *Rapidform* offers CAD-like capabilities that allow users to add dimensions and constraints to sketches and solid features for a fully parametric solid model. In addition, *Rapidform* provides two modeling methods, *Sketch* and *Wizard*. Design intent and model accuracy can be achieved using the *Sketch* method, which is

The solid models created in specialized software, such as *Rapidform* and *Geomagic*, have to be exported to mainstream CAD systems in order to support engineering applications. Both *Rapidform* and *Geomagic* offer capabilities that export solid models to numerous CAD

The solid model of the *block* example created in *Geomagic* was exported to *SolidWorks* and *Wildfire* using *Parametric Exchange* of *Geomagic*. For *SolidWorks*, all seventeen features recognized in *Geomagic* (see Fig. 21a) were exported as individual features, as shown in Fig. 21b. Note that since there are no Boolean operations offered in *Geomagic Studio v.11*, these features are not associated. There is no relation established between them. As a result, they are just "piled up" in the solid model shown in Fig. 21c. Subtraction features, such as holes and slots, simply overlap with the base block. Similar results appear in *Wildfire*, except that

The *liveTransfer*™ module of *Rapidform XOR3* exports parametric models, directly into major CAD systems, including *SolidWorks* 2006+, Siemens NX 4+, *Pro/ENGINEER Wildfire* 3.0+,

one extrusion feature was not exported properly, as shown in Fig. 21d and 21e.

curves that cannot be constrained or dimensioned.

Fig. 20. Gap and interference between solid features in the *tubing* model

in general a much better option for creating parametric solid models.

**4.5 Solid model export** 

**4.5.1** *Parametric Exchange* **of** *Geomagic*

**4.5.2** *liveTransfer™* **module of** *Rapidform XOR3*

*CATIA* V4 and V5 and *AutoCAD*.

systems.

*Analyzer*. The solid model generated is extremely accurate, where geometric error measured in average and standard deviation is 0.0002 and 0.0017 in., respectively (between the solid model and point cloud). Since the model is fully parameterized, it can be modified by simply changing the dimension values. For example, the length of the base block can be increased for an extended model, as shown in Fig. 18c.

#### **Method 2: Wizard**

*Wizard*, or *Modeling Wizard*, of *Rapidform* automatically extracts *Wizard* features such as extrude, revolve, pipe, and loft, etc., to create solid models from segmented regions. Note that a *Wizard* feature can be a surface (such as pipe) or a solid feature. There are five *Wizard*  features provided: *extrusion*, *revolution* for extracting solid features; and *sweep*, *loft*, and *pipe*  for surface features. There are three general steps to extract features using *Wizard*, (1) select mesh segments to generate individual features using *Wizard*, (2) modify the dimensions or add constraints to the sketches extracted in order to parameterize the sketches, and (3) use Boolean operations to union, subtract, or intersect individual features for a final model if needed.

The same *tubing* example shown in Fig. 19 is employed to illustrate the capabilities offered in *Wizard*. We start with a polygon mesh that has been segmented, as shown in Fig. 19a. First, we select the exterior region of the main branch and choose *Pipe Wizard*. *Rapidform* uses a best fit pipe surface to fit the main branch automatically, as shown in Fig. 19b. Note that the *Pipe Wizard* generates section profile and guide curve as spatial (non-planar) spline curves, which cannot be parameterized. Also, wall thickness has to be added to the pipe to complete the solid feature. Next, we choose *Revolution Wizard* to create revolved features for the top and bottom flanges, as shown in Fig. 19c. Note that each individual features are extracted separately. They are not associated. Boolean operations must be applied to these decoupled features for a final solid model.

Fig. 19. Feature extraction for the *tubing* example using *Wizard*, (a) selected main branch region, (b) surface created using *Pipe Wizard,* and (c) flange created using *Revolution Wizard*

Although *Wizard* offers a fast and convenient approach for solid modeling, the solid models generated are often problematic. The solid models have to be closely examined for validation. For example, in this *tubing* model, there are gap and interference between features, as indicated in Fig. 20. This is not a valid solid model. It is inflexible to edit and make changes to the *Wizard* features since the sketch profile is represented in spatial spline curves that cannot be constrained or dimensioned.

Fig. 20. Gap and interference between solid features in the *tubing* model

In summary, *Rapidform* is the only reverse engineering software that supports for creating parametric solid models from scanned data. *Rapidform* offers CAD-like capabilities that allow users to add dimensions and constraints to sketches and solid features for a fully parametric solid model. In addition, *Rapidform* provides two modeling methods, *Sketch* and *Wizard*. Design intent and model accuracy can be achieved using the *Sketch* method, which is in general a much better option for creating parametric solid models.
