13
XIII ADM - XV INGEGRAF International Conference on TOOLS AND METHODS EVOLUTION IN ENGINEERING DESIGN Cassino, June 3 rd , 2003 Napoli, June 4 th and June 6 th , 2003 Salerno, June 5 th , 2003 TOOLS FOR THE INTEROPERABILITY AMONG CAD SYSTEMS S. Gerbino University of Naples, Federico II Faculty of Engineering, Department of Industrial Engineering Design and Management (DPGI) e-mail: [email protected] ABSTRACT The lack of interoperability among CAD systems due to the hard task to exchange efficiently CAD data is addressed in this work. The tools useful to guarantee the data exchange are analyzed and the strategies to be followed to prepare a CAD model and minimize information loss are investigated. The most critical problems in data exchange are the different internal mathematical representation schemes and the internal accuracy of the geometric definitions in the modeling kernel of the various CAD systems. In particular, the problems arise from the accuracy and the convergence criteria used when performing calculations with curves and surfaces. All this can occur either within the original system or during the pre- and post-processing phases of CAD data, performed with neutral format, like IGES or STEP. Inaccuracy can be due to several factors, like the different implementation of algorithms used during the translation, or when geometries are to be converted in another representation forms, or due to geometrical and topological model inconsistency. But the problems can also arise from inadequate geometric modeling in the original CAD environment. Some CAD systems do offer very useful tools to check and repair original and imported model geometry but, unfortunately, they do not automatically avoid information loss, especially when the models are complex. The author analyses what healing tools are available and important to repair a CAD model, and how to use them, as well as how to prepare a model to ensure CAD interoperability and prevent failure in data exchange via neutral standard formats. Keywords: CAD Interoperability, Product Data Exchange, IGES, STEP, Data Fixing, Systems Integration 1. Introduction In the last years a growing number of CAx systems are using massively 3-D CAD models in a very wide range of downstream applications: from Finite Element Analysis to Kinematics or Dynamics of mechanisms; from CAM to Rapid Prototyping; from CAPP to Virtual Reality, and so forth. Geometric data exchange between CAD systems is also very common as many companies move to a different modeling program to improve the product quality and to reduce production costs, without losing the original legacy data archives. Sharing the same CAD data is really important during product design and manufacturing. The same CAD manufacturers, therefore, are increasing engineering

TOOLS FOR THE INTEROPERABILITY AMONG CAD SYSTEMS · interoperability among their modeling systems may be found in [LaCourse, 2001] and here resumed on the following. Mechanical CAD

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

XIII ADM - XV INGEGRAF International Conference on

TOOLS AND METHODS EVOLUTION IN

ENGINEERING DESIGN

Cassino, June 3rd, 2003 Napoli, June 4th and June 6th, 2003

Salerno, June 5th, 2003

TOOLS FOR THE INTEROPERABILITY AMONG CAD SYSTEMS

S. Gerbino

University of Naples, Federico II Faculty of Engineering, Department of Industrial Engineering Design and Management (DPGI)

e-mail: [email protected]

ABSTRACT The lack of interoperability among CAD systems due to the hard task to exchange efficiently CAD data is addressed in this work. The tools useful to guarantee the data exchange are analyzed and the strategies to be followed to prepare a CAD model and minimize information loss are investigated. The most critical problems in data exchange are the different internal mathematical representation schemes and the internal accuracy of the geometric definitions in the modeling kernel of the various CAD systems. In particular, the problems arise from the accuracy and the convergence criteria used when performing calculations with curves and surfaces. All this can occur either within the original system or during the pre- and post-processing phases of CAD data, performed with neutral format, like IGES or STEP. Inaccuracy can be due to several factors, like the different implementation of algorithms used during the translation, or when geometries are to be converted in another representation forms, or due to geometrical and topological model inconsistency. But the problems can also arise from inadequate geometric modeling in the original CAD environment. Some CAD systems do offer very useful tools to check and repair original and imported model geometry but, unfortunately, they do not automatically avoid information loss, especially when the models are complex. The author analyses what healing tools are available and important to repair a CAD model, and how to use them, as well as how to prepare a model to ensure CAD interoperability and prevent failure in data exchange via neutral standard formats. Keywords: CAD Interoperability, Product Data Exchange, IGES, STEP, Data Fixing, Systems Integration

1. Introduction In the last years a growing number of CAx systems are using massively 3-D CAD models in a very wide range of downstream applications: from Finite Element Analysis to Kinematics or Dynamics of mechanisms; from CAM to Rapid Prototyping; from CAPP to Virtual Reality, and so forth. Geometric data exchange between CAD systems is also very common as many companies move to a different modeling program to improve the product quality and to reduce production costs, without losing the original legacy data archives. Sharing the same CAD data is really important during product design and manufacturing. The same CAD manufacturers, therefore, are increasing engineering

data throughput, maximizing downstream applications. Some of such applications need a simplified CAD model (for example, FEM and VR), that is, they do not require all the feature details or the precise mathematical description of the geometry. Other downstream applications, instead, need a complete 3-D CAD model (for example, CAM, Data Exchange and Rapid Prototyping). In both cases, due essentially to the significant differences in how the objects are defined within the various systems, it happens quite often that the CAD model moved from a system to another is corrupted: in the translation process some geometry can be lost or inaccurate or, in the worst case, the process fails. In such cases a significant amount of time is spent in looking for the occurred problems and for fixing the CAD geometry. Sometimes, the problems are hidden and the converted geometry is slightly altered but it is not evident. All these and more problems are, unfortunately, very common and skilled users should know how to investigate problems (before, during and after translating data) and fix them. This is known as interoperability issue. To understand how important this issue is, it is relevant the research carried out in the 2001 by the US National Institute for Standards and Technology (NIST), which has quantified in $1 billion each year the costs for interoperability problems in the US automotive sector alone (“The Billion Dollar Data Exchange Problem”). To get products faster, at lower costs and with higher quality, it happens frequently that companies may want to choose a new CAD system with advanced modeling tools for manifold and non-manifold objects. Unfortunately, they are often more interested in the modeling and analysis capabilities, both for parts and assemblies, than in the tools able to successfully accomplish the conversion of the original legacy CAD data to the new modeling system, or of the CAD model to other downstream applications. Instead, both aspects (modeling capabilities and conversion tools) should be evaluated together, especially when the design requires to share the CAD model to do several analyses in different environments. Recently, the term “interoperability” is used in a wider contest where the users need to transfer the design intent and to manipulate the model geometry in the end CAD, that is they want to make changes as though the model was created in the receiving feature-based CAD system [McEleney, 2002]. This means they want more than just translating geometric data: the feature characteristics (holes, slots, chamfers, boss, ribs, fillets, etc.) and parameters of the part model, and the tree of assembly process, as well the geometric constraints information between parts, is also required in the new program to easily make changes. This process is a way to reapply “intelligence” to the static geometric data. Some programs for automatic feature recognition (AFR) are available as tools in few CAD systems (see, for example, SolidWorks and SolidEdge) or as specific standalone applications, but all the feature information of the model can be automatically reconstruct only for simple part model. More often the user has to interact with the system by indicating explicitly the geometry he/she wants to group and convert into a manufacturing feature (IFR). The most critical problems in data exchange are the different internal description and representation of the CAD model. The mathematical representation schemes and the internal accuracy of the geometric definitions differ from one system to another. When the translation involves systems with the same modeling kernel (see, for example, ACIS by Spatial Technology Corporation, and Parasolid by UGS), then moving data between these systems should ideally not be a problem. Exchanging geometric CAD data between systems with different modeling kernel, instead, requires a conversion process, which can fail for several reasons. In particular, the problems arise from the accuracy and the convergence criteria used when performing calculations with curves, surfaces

and topology for solid models. All this can occur either within the original system or during the pre- and post-processing phases of CAD data, performed with neutral format, like IGES (ANSI standard) or STEP (ISO standard) [Gerbino et al., 1997]. But interoperability problems can also arise from inadequate geometric modeling in the original CAD environment. When this happens it may be difficult translating CAD models also between systems that use the same modeling kernel. Specific commercial programs or internal tools are available to check for the data quality of the original model prior to exchanging it with other systems [McKenney, 1998] [Searle, 2002]. While several CAD do offer very useful tools to check and repair original and imported model geometry, unfortunately, they do not automatically avoid information loss, especially when the models are complex. This paper investigates the main interoperability problems, it explores the possible solutions and analyses what healing tools are available and important to repair a CAD model, and how to use them, as well as how to prepare a model to ensure CAD interoperability and prevent failure in data exchange via neutral standard translation formats.

2. Background on data exchange issues The interoperability issues among CAx systems have been analyzing by several CAD specialists and researchers from different countries, as well as by several experts of the major CAD vendors. In [Krause et al., 1997] the conceptual and implementation aspects for a semi-automatic prototype system has been presented which encompasses functionality for conversion, verification and repair of CAD models being sent to a grid generator application. The frequent translation problems with IGES neutral files have been subdivided in inaccuracy, geometrical and topological model inconsistency, and loss of semantic structures. Based on these critical aspects, they proposed an architecture of a data processing system, by using the ACIS kernel and spline library, able to process IGES data, to detect the main face adjacency, to calculate the topological relations between faces in the model, and to fix small gaps and overlaps. In [Gerbino et al., 1997] some fundamental aspects on data exchange have been pointed out and analyzed. The accuracy of the mathematical description of the model in the sending and receiving CAD system; the different model description (B-rep, CSG, Surface); the curve and surface typology (Spline, B-Spline, Beziér, NURBS, Trimmed surface) and the polynomial degree are just some differences in the modeling kernel of each CAD system, which represent a critical point during data translation. The main drawbacks of the IGES neutral format have been also highlighted as the problems originate essentially from a poor implementation of the IGES pre- and post-processing interface. IGES specification is open to much individual interpretation. Thus, IGES translators can vary greatly from vendor to vendor in term of how they define IGES rules. The use of STEP, instead of IGES, as neutral format for the translation has been tested to guarantee better results especially for solid models. A wider description of these data exchange problems in automotive field is in [Gerbino, 1998]. An interesting overview of the opinion of the major CAD vendors about the interoperability among their modeling systems may be found in [LaCourse, 2001] and here resumed on the following. Mechanical CAD (MCAD) systems are built on different proprietary cores that use different mathematical assumptions to create the geometry. For these reasons a simple cylinder may be represented as a closed surface, a seam or two half cylinders (Figure 1). Moreover, curves and surfaces may be formulated as Bezièr, B-spline or NURBS with different limits for degree, and, even

using the same formulation, the complex algorithms employed for trimming surfaces in tolerance along curves, and the different accuracy adopted to do this, all complicate the exchange of what, to the user, are simple surfaces.

a b c

Figure 1. Three different ways to describe a cylinder: (a) closed surface; (b) seam; (c) two half cylinders.

A solid model can be described mainly in two forms: Constructive Solid Geometry (CSG) and Boundary Representation (B-rep). Many commercial software use a combined approach to the solid modeling, even though they are much more oriented to use B-rep than CGS solids because the latter are unable to support complex blends and shapes. While IGES neutral standard, still preferred by most CAD users in 3D data exchange, support both CSG solids (IGES entities from #150 to #169) and B-rep solids (Manifold Solid B-rep Object – MSBO – IGES entity #186), users prefer to map solids to free form entities such as B-spline (IGES entity #128) and trimmed surfaces (IGES entity #144). This is mainly due to the high complexity in developing B-rep entities in IGES by the CAD vendors, so that only few CAD systems support them in their IGES pre- and post-processors. People should keep in mind this aspect before translating solid models using IGES. In [Proficiency, 2002] an estimate of the enormous costs that manufacturing companies incur do to lack of interoperability between CAD systems throughout the product development process is analyzed. Several levels of interoperability are proposed (Direct Multi-CAD Design Expense, Direct Data Exchange subdivided in Geometric Data Exchange, Features via Geometry Data Exchange and Feature-based Data Exchange), and for each one a framework for determining the costs needed to get it (either direct and obvious or more insidious and harder to quantify) is proposed with references to both direct and neutral translators (IGES and STEP).

2.1 About STEP∗ An alternative way to exchange solid models is to use STEP translators. STEP is an international standard for product data exchange (STandard for the Exchange of Product model data, ISO 10303, developed by experts worldwide, under the auspices of ISO Technical Committee (TC) 184, Sub-Committee (SC) 4.). It is a young standard and intended to transfer more than just geometric data throughout the life cycle of a product, independent of any particular system. Nevertheless, it is actually used by manufacturing companies especially for transferring geometric solid models [Fowler, 1996]. STEP is based on an integrated architecture of domain specific application protocols (AP). «The AP’s break STEP into manageable and comprehensible "chunks" that can be more readily implemented» [SCRA team, 2001]. The STEP-related product that is commercially available to the engineering user community is mainly AP203 – Configuration controlled 3D design of Mechanical Parts and Assemblies (ISO10303-203: 1994) – and AP214 – Core data for automotive mechanical design processes ∗ This paragraph is essentially based on “ISO 10303 STEP Application Handbook” [SCRA, 2001].

(ISO10303-214: 2001) –. Each AP has associated several conformance classes (cc), which are subsets of an AP that can be implemented within that application domain without having to implement all aspects of the AP. For example, the AP203 has the following cc: 1 - Configuration management data; 2 - 3D geometrically bounded wireframe and/or surface models; 3 - 3D wireframe models with topology; 4 - Manifold surface models with topology; 5 - Faceted B-Rep models; 6 - Advanced B-Rep models. To use STEP correctly, it will be important to know what conformance classes of an AP have been implemented. For example, most vendors who claim to have an AP214 translator have only implemented cc1 and/or cc2 that are essentially identical to AP203 geometry/topology with a somewhat different set of configuration management data. Almost all commercially available AP214 translators address only the AP203 "look alike" conformance classes (i.e., AP214 cc's 1 & 2) (see Table 1).

Table 1. Conformance classes for AP203 and AP214 supported by the main CAD vendors [SCRA team, 2001].

CAD system AP203 AP214 more

Pro/E 2000i2 cc 1a, 2a, 4a, 6a

+ Colors, Layers, Validation Prop’s Modules & Group

cc 1, 2, 8 + external file ref.

AP202 (In-cc 1-5, 8-10, Out 1, 5, 8, 9)

CATIA V5 cc 1a, 2a, 3a, 4a, 5a, 6a cc 1, 2 AP227 (cc 2), AP221 Prototype

Unigraphics cc 1a, 2a, 4a, 5a, 6a

+ Colors, Layers & Validation Prop’s Modules

cc 1, 2 including Colors, Layers & Validation

Prop’s

Solid Edge cc 1a, 2a, 3a, 4a, 5a, 6a cc 1, 2 SolidWorks cc 1a, 2a, 4a, 5a, 6a + Colors cc 2

Tests made by several users worldwide have proven the best quality of data exchange by using STEP instead of IGES for solid models. CAD users do not need to map solid to free-form surfaces as many users do with IGES translators, then it can give more likelihood of success. What elevates STEP above the other neutral formats is the fact that it is written in a data language called EXPRESS that is itself part of the STEP standard. This means that is it machine-readable and therefore has a single, unique interpretation. Because STEP is the emerging standard for data translation, some vendors are no longer interested in enhancing IGES. On the other hand, many vendors have contrasting opinions on STEP. Someone considers difficult to implement the standard (poor documentation and excessive mandates about how the standard should be used) and to follow the standard updates. Some people consider STEP easier to use because it has fewer options than IGES, but other vendors consider IGES more stable and mature than STEP. Nevertheless, the interest for STEP standard is growing up as the STEP community is working on annotation support, history/features and parametric/ variational models [Pratt, 1998]. However, STEP is not a panacea for interoperability issue. Exchange problems will remain in some cases of geometric connectivity - matching vertices and edges - due to the inherently different tolerances used within the geometric algorithms at the core of different CAD modelers.

3. Strategies adopted by CAD vendors and CAD-service companies As above highlighted, at the core of every CAD application is a modeling kernel, responsible for storing and organizing the basic geometric shapes and model topologies

used by that application. Various kernels exist in the CAD industry, and they vary greatly in functionality and sophistication (mainly ACIS by Spatial Technology Corporation, and Parasolid by UGS, but also SMlib, UPG2, and Open Cascade). Some CAD vendors keep their kernels proprietary, while other vendors license their kernels for wider use. Most common modeling kernels adopted in many CAx applications are ACIS and Parasolid. To facilitate interoperability with CAD systems several downstream applications’ vendors use one or more of these commercial kernels (Table 2).

Table 2. Some CAD applications either created from a proprietary kernel or from a commercial kernel, such as ACIS and Parasolid

Kernel CAD application ACIS Parasolid Proprietary

AutoCAD • CADKEY •

CATIA • I-DEAS •

IronCAD • IX Design •

Mechanical Desktop • MicroStation •

Pro/ENGINEER • SolidEdge •

SolidWorks • ThinkDesign • Unigraphics •

VX CAD/CAM •

Thus, a CAD system that uses a commercial kernel (ACIS or Parasolid) is able to record modeling data not only in the proprietary file format (i.e. .dwg for AutoCAD, .prt for Unigraphics, .par for SolidEdge, .dgn for MicroStation and so on). It also may save (and read) the geometric data in the kernel’s native format (.sat for ACIS and .x_t/.x_b for Parasolid). This is a right way to move well-done model data between systems because the number of critical factors usually involved into the data exchange is reduced. Recently, some CAD vendors have also implemented the conversion into the other commercial kernel (ACIS to Parasolid or vice versa) instead of the proprietary format used by the other CAD vendors. This should give more chance to get a right translation. To make easier the interoperability between computer-aided geometric applications, the same CAD vendors are offering the possibility to save their legacy data to several CAx formats. This way does not require to map the geometric data to a neutral format. A direct data mapping reduce some approximations and the risk of failure, but inaccuracy in the modeling may still cause problems, as many users do know. The Parametric Technology Corporation, which uses a proprietary modeling core, has announced at the end of 2001 the Granite One kernel, an interoperability platform based on the unmatched geometry, feature and data exchange capabilities at the core of Pro/ENGINEER. One of the key advantages of solutions built on Granite is the ability to interoperate associatively with other Granite based tools, providing updates to downstream applications based on any changes in an original solid model [PTC, 2001]. By using the Granite's gPlugs (small software plug-ins written by third-party vendors for their applications), Granite will give the suppliers associatively interoperable access to Pro/E models and the possibility to integrate it with third-party applications in

analysis and manufacturing. Granite is able to extend PTC's associativity function to non-PTC applications. With associativity turned on, a downstream application using Granite will be automatically updated with changes to the original 3D model. In [Shammaa, 2002] the need to have robust kernel technology, that allows the transfer of data based on known rules and tolerances of each specific CAD system is pointed out. Software by Elysium Inc. (that also offers translation service through internet) is proposed which uses automatic technology that adapts using known rules based on the sending and receiving CAD system. After determining appropriate tolerances and performing geometric and topological checks, the system is able to heal problems automatically or to allow user performing corrections with an interactive graphics tool. Very recently Elysium has also announced a feature-based translation technologies to convert both geometric model data and the valuable individual feature information as well as design intent. It happens quite often that under the increased pressure to accelerate product design, CAD users may not use conformed design methods to build up the models. Very difficult problems in CAD file translation are due to human error in the modeling because the software leaves ambiguous geometry behind after the CAD operator has performed various modeling operations. These details are hidden and none of the CAD packages are forgiving of imported geometry with ambiguous geometry. If the CAD model is not conformed to specific and plain modeling rules, it could be inevitable reworking it prior to exchanging data with internal departments and suppliers, or problems could occur during translation process. Common modeling rules, such as controlling suppressed or buried features (that is features completely included in others), controlling face curvature and accuracy, checking for tiny curves and faces, controlling self-intersecting surfaces and the consistency of the solids, controlling the conformance to a wide variety of applications and specific CAx system requirements, if applied correctly can really help to ensure the quality of all CAD models [Searle, 2002], [McKenney, 1998]. All this requires skilled users and an overall view of the engineering design process by the main responsible design engineers. Sophisticated commercial software, like DesignQA by PrescientQA, and CAD-IQ by ITI, can do this kind of quality check. They allow to analyze CAD models, detecting problems that may obstruct a smooth flow into downstream applications. Along with this quality software one may also use respectively GeometricQA and CADFix to repair automatically – when it is possible – the CAD models. Several companies are offering translation service on the internet among major CAx environments. Consider, for instance, CADCAM-E.COM, CADVERTER.COM, CAD2CAM Inc., DATAKIT, Elysium Inc., Floating Point Solutions, Proficiency Inc., STEP Tools Inc., and Translation Technologies Inc. All these translation services do offer geometric conversions from and to many standard or proprietary formats and some of them also offer a feature-based translation for parts and assemblies. Some problems come from the data security over the internet and with the expected human intervention when it is required to process the company original CAD data. The company who requires this service should make sure no alteration is done on its model without its agreement. To avoid the security over the internet, CADCAM-E.COM let users download the translator software and install it on their own pc. Then when they performs a translation they are prompted with the option of licensing it. After paying they can translate files. Generally speaking, when a solid part from one system becomes a solid part in another system this does not means that the geometry is not changed in the process to adjust the

model. Healing tools are acceptable but one should check what was done during the translation process. This issue will be addressed in the next paragraphs.

4. About the Accuracy The accuracy (sometimes intended as tolerance) may perhaps be considered the main cause of non-interoperability. In a CAx environment it is the smallest size that a modeling system can recognize. Two entities far away each other less than the system accuracy will be considered coincident. The accuracy is strictly related to the computational tolerance of geometry calculations. Then, decreasing the value of the accuracy the mathematical computation will increase as well as the file size. Extremely precise models require complex and large data structures to define them. In general, the smaller the gaps, the smaller the edges and faces may become in complex model [McKenney, 1998]. An important aspect to consider is that the accuracy should be related to the size of the part being designed: it is the relative accuracy. The valid range for many CAD systems is from 0.01 to 0.0001. A general indication is to set the relative accuracy to a value less than the ratio of the length of the smallest edge on the part to the length of the largest side of a box that would contain the part. It is recommended to change the part relative accuracy when a very small feature is placed on a bigger part or when one needs to intersect two parts of very different size. Working with assemblies with very different part sizes the accuracy becomes critical: one should be set the same accuracy choosing that one is closer to the smallest part size. Relative accuracy must be set in accordance to the current unit: 0.001 does not have the same effect if the units are expressed in millimeters or inches. Then make sure to set also the same unit in all the systems involved in the translation. Some systems work in absolute accuracy, which is expressed in the current unit such as 0.001mm. The effect of the two different ways to intend the accuracy is not foreseeable, and preliminary tests should be done to create a right correspondence between CAD systems. Other systems like Pro/E works with relative and absolute accuracy, where the latter is eventually used to improve the matching of parts of different sizes or different accuracy (for example, imported parts created on another system). Moving a solid model from a system to another one that uses too accurate or to loose tolerances may cause the model is “disintegrated” and the entities are seen as disconnected or outside the required tolerance [Chinn, 2002]. Also the design intent may be lost is small edges or faces are swallowed up in the downstream application. The accuracy has a relevant role for trimmed surfaces (IGES #144) obtained from the explosion of a solid model into all the faces describing the boundary of the model. This is due to how the surface edges are described into the system. Rhino3D gives a good explanation for this topic. The representation of an edge of two joined trimmed surfaces consists of a 3D curve (the one you see), called the edge, two 2-D (parametric) curves, one in the parameter space of each surface joined along that edge, called the pedge, and tolerance values for each of the curves. The 3D edge is an approximation to the intersection of the surfaces, and is supposed to be accurate to within a specified tolerance e_tol. Each 2D pedge can be evaluated on its surface to give another 3D curve, which also approximates the intersection. The pe_tol associated with a pedge is the accuracy of this approximation. If the surface is not joined to another along the edge, then e_tol tells how close the 3D edge is to the surface, and pe_tol tells how close the 3D curve given by evaluating the pedge is to the 3D edge. When these mismatches occur it is necessary to rebuild the edge. This explanation is related to Rhino3D CAD system but the mathematical concepts behind it are common to many

CAD systems. From these considerations is then clear how important during translation is to export the UV parametric curves together with 3D curves of trimmed or bounded surfaces.

5. Preparing and repairing CAD models In CAD data exchange the loss of information about the original geometric data and topology of the solid objects is quite frequent. Solid models, in particular, may not be reconstructed in the receiving system if gaps or overlaps occur due to inaccuracy during the translation process. Thus, the geometry may be transferred but the topology necessary to consider the model as a solid is no longer valid. To analyze where the problem has occurred specific CAD geometry checking tools are necessary. Many recent CAD systems offer such tools but users are not trained to use them because typical training courses are more oriented to show the power of the modeling system than to learn what to do to check and repair the model. As pointed out in the previous sections, some data exchange problems may origin from a poor modeling practice. Many different ways can be adopted to create a solid model using several combinations of union, intersection, addition and subtraction Boolean operators. But standard rules specifying a preferred constructional methodology are important and manufacturing companies should teach CAD users the preferred ways to modeling parts and assemblies. It is proven that, sometimes, just using a different modeling sequence the final part has best quality. Some basic modeling rules are in the following. Users which use feature-based modeling systems would have to avoid features that are children of rounds, drafts and chamfers. It is suggested to use datum planes and to dimension to surfaces and not edges. Rounds, drafts and chamfers have to be created as late as possible considering also that some of these details may be suppressed before translating the model to a downstream application such as FEM. A Boolean operation should be checked soon to point out if tiny edges or faces are generated by that operation. The best practice to follow in data exchange is firstly to prepare the model leaving only the minimum dataset of entities which will transfer satisfactorily (after data exchange tests on case studies) and to set the appropriate accuracy in both systems. So, if the model has to be imported to a FEM, many details (fillets, chamfers, etc.) may be suppressed and perhaps surfaces may be converted into B-spline of third degree [Smigel and Meiding, 2002]. Anyway, before releasing the model the user has to check it. Many CAD systems, such as UG, CATIA, Pro/E and Rhino3D have a geometry check tool which analyze the conformance to some specifications such as maximum degree for curves and surfaces, the G2 (geometric curvature) condition along joined surfaces, or the existence of thin sliver faces, cracks, solids with internal voids, self-intersections in curves and surfaces, degenerated surfaces, broken or overlapped edges and so on. Once a problem is found user is asked to repair it. This procedure may be used for imported models as well. Healing tools may operate automatically or manually. The best approach in healing geometry is different from CAD to CAD, but some general guidelines can be suggested which are independent of the CAD system. When to surfaces are no longer joined as in the original model, the edges of the two surfaces must be merged. Such an edge is named naked or free. The edges of a surface are elements of the surface; that is they are always curve projected onto the surface. Gaps or overlaps can be fixed by adjusting the relative tolerance of the model or manually specifying that the naked edges must be coincident. In general it is preferable

to modify the existing edges when they do not lie completely onto a surface, rather than to create them as new. If repairing the boundary of some closer surfaces results difficult, the user may want to remove the surfaces that have the worst discontinuities along the edge or are easiest to re-create, and then re-create them using the existing edges belonging to adjacent surfaces. This procedure is recommended to not force the system to get the optimum result by manipulating many conversion factors. Some entities could be easily re-created into the receiving system using the information still available about boundary curves/surfaces. After adjusting or re-creating the surface the user may investigate tangency and curvature along the shared edges. Some problem can occur with the surface parameterization. One can visualize this by meshing surfaces. If the U and V parametric mesh lines are almost parallel on the surface, this creates a near singularity, that is, bad parameterization that may complicate a trimming operation. The surface would have to be re-parameterizated. When a solid part from one system becomes a solid part in another system this does not mean that the geometry in not changed in the process to adjust the model. Healing tools are acceptable but one should check what was done during that process. Some hits are for example the creation of verification check data. Points may be created in the critical areas of the part and measured in terms of distance and deviation both in the original and in the receiving system. The same can be done calculating volume and area of the model before and after translation. Variations within 0.1% are usually acceptable considering that the algorithms used are different and that some approximations, even small, always occur. All this methodology has been verified with a benchmark between some common CAD systems (Pro/E, Solid Edge, Rhino3D, UG and ThinkDesign have been tested). Figure 2 show just an example of data exchange of a Pro/E solid model to the other systems. The naked edge shown in figure 2c still remains after tightening tolerances in Rhino3D as suggested in the IGES file exchange help of the CAD program. To get a solid model only a simple operation of joining the naked edge was necessary for IGES imported model, while a trim operation was necessary to reconstruct the round in the STEP imported model. All the receiving CAD systems, except Rhino3D, have tools for checking and repairing geometry during the translation process. These facilities have been used to rebuild the solid model of the imported geometry. To check the accuracy of the rebuilt solid models in each receiving CAD systems, volume and area measurements have been calculated as shown in Table 3. It is interesting to know that a little bit difference is found even for models exported from Pro/E and imported to the same system (cycle test). This happens for every system and indicates that always approximations occur in the translation. The biggest differences found in volume measurements for the rebuilt solid models into ThinkDesign are mainly due to the algorithms used to make calculations as this happened with other simpler model as well.

Conclusions Interoperability problems originate from many aspects related to the modeling practices, to the different modeling core of each CAD system, and to a poor implementation of the pre-processing interface for neutral translation formats. Poor modeling practices result in bad geometry in the originating system, which is often the cause of poor data exchange. Efforts to use proven modeling techniques should be encouraged at the source.

a b

c d

Figure 2. Data exchange between Pro/E and Rhino3D CAD systems through STEP and IGES neutral translators. Pro/E legacy sample model (a); Rhino3D model from STEP using solid option (b); Rhino3D

model from IGES using solid option (c); detailed view of the area where a naked (free) edge has been detected, both for STEP (see b) and IGES (using Surface option) translation, causing failure in the

automatic reconstruction of the solid model in Rhino3D (d). Different naked edges were found in Solid Edge and UG with in the areas pointed out by the black arrows (1a).

Table 3. Volume and surface area measurements of the solid model shown in figure 2, after translating it in some common CAD systems through STEP and IGES neutral translators. Where some problems have

occurred, automatic – if available – and manual healing tools have been used to repair the model.

CAD system Type of model

Volume and Surface Area

measurements Pro/E 2000i2 Solid Edge V12

Rhino3D V2 UG NX Think

Design 8 Volume (mm3) 145107.88 Legacy

model Surf Area (mm2) 42684.07 Volume (mm3) 145107.15 (1) 145106.41 145107.75 145107.25 145132.94STEP Surf Area (mm2) 42684.64 (1) 42684.08 42684.26 42684.12 42682.73 Volume (mm3) 145107.29 (1) 145108.31 NA (5) 145107.31 145253.27IGES 1

(2) Surf Area (mm2) 42684.29 (1) 42684.30 NA (5) 42684.31 42683.93 Volume (mm3) 145107.18 (1) 145109.26 145108.30 145107.79 145192.33IGES 2

(3) Surf Area (mm2) 42684.25 (1) 42684.35 42684.19 42684.32 42684.60 Volume (mm3) 145107.93 (1) 145109.55 145107.99 145107.60 145190.99IGES 3

(4) Surf Area (mm2) 42684.08 (1) 42684.30 42684.19 42684.32 42684.53 Notes: (1) Values corresponding to the solid model imported into the same Pro/E system (cycle test). (2) Solid option has been selected when exporting the Pro/E model via IGES (Type 186 Manifold Solid B-Rep Object). (3) Surface option has been adopted when exporting the Pro/E model via IGES using the default relative accuracy (0.0012). (4) Surface option has been adopted when exporting the Pro/E model via IGES using a higher relative accuracy (0.0001). (5) Not available because the translation failed as shown in figure 2c.

Special technical reports are released by some CAD manufactures for helping users in doing a good job in CAD geometry conversion, but they admit how hard is to prevent the translation from the failure if the user’s modeling procedure is not conformed to some specific modeling rules, depending on the specific downstream application and design contest. Even considering a model created with proven modeling techniques, however, exchange problems will remain in some cases of geometric connectivity – matching vertices and edges – due to the inherently different tolerances used within the geometric algorithms at the core of different CAD modeler. Perfect interoperability between different CAD systems is a utopia. To meet this ideal condition every user would have to utilize the same CAD application, but this condition in not applicable to the actual industrial reality. When a common modeling kernel is available, then sharing data in the kernel’s native format is suggested. Direct (point-to-point) translators may offer quite good result but they are too expensive for many small companies. The use of a neutral format is then necessary and users are recommended to employ STEP to get the best results. IGES may be used as second choice, but a skilled user would have to set-up all the options in the pre- and post-processing interface needed to perform the conversion, which meets the specific set of data supported by the sending and receiving system. To improve the use of the standards, users should test the likelihood of success with a set of data that represents what they plan to exchange. They may do this educating themselves on the various best practices that are documented in transferring IGES data to and from various CAD systems. The accuracy is the main parameter to set to guarantee that, for example, a shared edge between two joined surfaces is not considered naked creating gaps or overlaps between them. The use of the tightest feasible tolerance when outputting data to a standard is then recommended. If the interoperability involves massively the feature-based model translation, one may choose to buy specific commercial software, or to contact companies which offer translation service on the internet, or to move to a CAD system with feature recognition tools. However, the STEP community is actually working on history/features support and users worldwide hope to have soon this very useful tool into their CAD system to improve interoperability.

Acknowledgement

This work is partially supported by the PRIN 2001 National Project on “Classification and restoration of archeological finds by means of CAD-RP technologies”. The author wants to thank Ing. G. Monacelli from Elasis S.C.p.A. (Pomigliano d’Arco, NA) for allowing the translation tests in Elasis and Ing. A. Brondi for his useful hints.

References Chinn A., Why won’t work?, CAD User magazine, July 2002.

Fowler, J., STEP for Data Management, Exchange and Sharing, Technology Appraisals, UK, 1996.

Gerbino S., Crocetta S., di Martino C., Data exchange in CAD systems: limits, solutions, perspectives, Proc. of X ADM International Conference, 17-19 Sept., Florence, Italy, 1997, pp. 423-434.

Gerbino S., Problemi di Gestione di Sistemi CAx nella Progettazione Meccanica (Data Exchange Problems Among CAx Systems in Mechanical Design), Tesi di dottorato

(Ph.D. Thesis), University of Naples Federico II, Italy, Feb., 1998.

La Course D., Developer roundtable: STEP vs. IGES, CADALYST Magazine, Oct., 2001.

Krause F.-L., Stiel C., Liiddemann J., Processing of CAD-Data - Conversion, Verification and Repair, Solid Modeling’ 97, Atlanta, GA, USA, 1997, pp. 248-254.

McEleney J.J., Feature Data Replacing Geometry as Key to CAD Interoperability, Time-Compression Technologies, v7 n3 May 2002, pp. 15-17.

McKenney D., Model Quality: The Key to CAD/CAM/CAE Interoperability, Americas User’s Conference 98, AMUC98, 1998.

Pratt, M., Extension of the Standard ISO 10303 (STEP) for the exchange of Parametric and Variational CAD Models, Proceedings of the Tenth International IFIP WG5.2/5.3 Conference, PROLAMAT 98, 1998.

Proficiency, The Multi-CAD interoperability issue: quantifying the cost, White paper, Proficiency, May 2002.

PTC, PTC’s Granite breaks down barriers for designers, from PTC website, Sept. 2001.

SCRA team, ISO 10303 STEP Application Handbook, Version 2, Dec. 21, 2001.

Searle W., Quality Assurance in Interoperability, MCAD, Dec. 2002, pp. 26-27.

Shammaa A., Overcoming the Obstacles to Interoperability, Time-Compression Technologies, v7 n5 Sept. 2002, pp. 24-26.

Smigel B., and Meiding D., Best Practices in CAD Conversion, Solid Solutions, March/April, 2002.