Tips and Techniques
Links in CATIA, Part 3: Context Link
Julie Cyrenne, Dassault Systemes
Introduction
In the previous article, we saw how to do design in context, where the child part (also known as contextual part) utilizes elements from the parent part to complete its geometrical definition. As a result, the parent part has no external link while the child part has 2 external link types: import and context. This article will explain when and how the context link is created. All the concepts will be illustrated using the example of a spline.
The Context Link
In CATIA V5, a context link is created when an import link is created in a CATPart. However, there may only be one context link per part, regardless of the number of import links. The context link points from a CATPart (the child) to a CATProduct (the parent).
 Figure 1: Edit/ Links panel showing 5 import links but only one context link
The context is the product in which a part designed in context is associatively designed. In other words, if this product is opened, all the parent parts of the contextual part (part with import links) will be present and all the links will be resolved. You can also think of the context as the entity which needs to be opened for synchronizing links and updating a contextual part.
Choosing a context
In Tools/ Options/ Infrastructure/ Part Infrastructure/ General, there is one option associated with the context link: ‘Use root context in assembly’.
 Figure 2: 'Use root context in assembly' option
When the option ‘Use root context in assembly’ is not selected, the minimum context is used. In other words, when creating a part’s first import link, the first product that is a common parent of the two parts involved in the link becomes the context of the contextual part. The two left cases in Figure 3 below illustrate the result of using the minimum context.
When the option ‘Use root context in assembly’ is selected, the root product opened in session becomes the context of the child part. The right case in Figure 3 below illustrates the result of using the root context.
 Figure 3: Impact of the 'Use root context in assembly' option
Once the context link is created, it does not change if the contextual part is opened in another configuration (unless explicitly changed by the designer as described in the ‘Managing the context’ section)
Considerations when choosing a context
1) It is impossible to create links with parts outside the context
In the example below, the Profile part contains a sketch of an I-beam profile. The Beam part is a pad using the Profile’s sketch, hence creating an import link in the Beam part. The context link of the Beam points on Product2, as the ‘use root context in assembly’ was not selected. Later, if the designer wants to split the Beam with the Surface, he will get an error message (Figure 5 and Figure 6). Since the Surface part is outside Product2 (the context), it is impossible to create an import link from the Beam to the Surface.
 Figure 4: Example for 'impossible to create links outside the context'
 Figure 5: Pop-up message when trying to select an object outside the context for contextual design
 Figure 6: Error message when trying to paste with link an element from outside the context
2) It is impossible to update links if the context is not loaded in session
In the example below, the Cylinder is a pad defined up to the Surface part. The import link points from the Cylinder to the Surface. Since the option ‘use root context in assembly’ was active when the import link was created, the context link points from the Cylinder to the Product1. If a designer wants to work in Product2, any modification to the Surface will not be represented in the Cylinder because the context product is not in session (even though all the parts involved in the import link are loaded in session).
This example shows how, in a context of concurrent engineering, the root context should be used with caution!
 Figure 7: Modification and update of a contextual part outside its context
3) In specific use cases, it may be mandatory to work with a specific context
I don’t want to enter into details as this is outside the scope of this article, but an example is when building a ‘structure exposed’ assembly in ENOVIA, the root context must be used,
Managing the context
It is possible to change the context of a part to a higher level or a lower level product.
Open Right-click on the part whose context should be changed, go to ‘Components’ and ‘Define Contextual Links’. In the panel that appears, simply click on OK. The new context of the part will be the active product in session (regardless of the option ‘use root context in assembly’)
 Figure 8: 'Define contextual links' panel
Icons
There are four CATPart icons to inform on the part’s context. You may understand their purpose from the images in the examples. The next article will explain the meaning of each icon,
|
Non-contextual part
|
|
Definition contextual part
|
|
Instance of the definition contextual part
|
|
Instance of a contextual part
|
The spline example
Two designers are working in their separate assemblies, Product_A and Product_B.
In Product_A, the first CATPart, Points_A, contains 5 points that are published. The second CATPart, Spline_A, has import links to the 5 points as it uses them for the definition of the spline. Whether the option ‘use root context in assembly is enabled or not is irrelevant: because Product_A only has one level, the context link points to Product_A in either case.
Product_B is architected the same way.
 Figure 9: The spline example: designer's initial state
Once both designer’s work is done, the two products are inserted in a higher level product, Integration_A-B. The two splines must be connected by using the last point of Point_A as a point for Spline_B. The figure below shows how the software will not allow this operation.
 Figure 10: The spline example: Spline_B's context does not allow to import with link elements from Points_A
In order to enable this operation, the context of Spline_B should be changed from Product_B to Integration_A-B using ‘Define Contextual Links’. Once the context is changed, Figure 12 shows how the operation will be allowed. The context of Spline_A does not need to be changed: the part does not have any external links outside Product_A to create.
 Figure 11: The spline example: changing the context of Spline_B
 Figure 12: The spline example: Spline_B successfully imported with link an element form Points_A
Conclusion
This article explained the context link and the means to manage it. There is no good or bad way: it depends on concurrent engineering, data architectures, etc.
One useful source of information to interpret the context is the CATPart icon. This will be explained in the next article.
Julie Cyrenne
Dassault Systemes
Julie Cyrenne
What kind of surface do I need?
Nathan Haller, MSC.Software Corporation
With the wide variety of surfacing tools available in CATIA V5, how do you know which tool to use and when?
Surface geometry can be generated in a variety of different ways. Some methods are unique to the program generating the surfaces while other methods have been used and proven over the years. When creating a surface, you should consider not only the capability of your software tools but also how and where the surface is going to be used. CATIA V5R14 has seven primary shape design products. Each product is different in its functionally and intended use.
Generative Shape Design 2 (GSD) is one of the more widely used products. It helps to design advanced wireframe1 and surface1 geometry with fully associative specifications. GSD is a feature-based design environment for the capture and reuse of analytical1 design methodologies and specifications. See example in Figure 1.
GSD is commonly used as an alternative or complement to solid modeling tools, resulting in a “hybrid1” modeling scheme. Laws and knowledgeware built into GSD provide productivity enhancing functionality to create complex surfaces even faster. GSD has tools that allow the user to create free-form1 spline1 curves and conic curves. It also has the ability to control point, tangency, and curvature continuity1 between curves and surfaces.
Generative Shape Optimizer (GSO) is added on top of GSD and gives the designer access to smart tools that allow for faster shape deformation. GSO also adds productivity gains suitable for automotive design with the addition of variable offsets on a complex shell.
 Figure 1: Example of GSD in use.
Freestyle Shaper (FSS) is used to generate aesthetic1 non-associative (datum) 3D curves and surfaces from scratch, and to dynamically deform and analyze all produced elements. See example in Figure 2.
FSS uses control points1 to control the continuity1 between elements and to adjust curve and surface curvature. The quality of the curves and surfaces can be checked using industry-oriented diagnostic tools.
In addition to FSS, Freestyle Optimizer (FSO) adds global deformation of multiple surfaces and the ability to “fit” geometry to physical mock-up scan data.
 Figure 2: Example of FSS in use.
Automotive Class A (ACA) is an industry specific product used to create “Class A” surfaces that meet or exceed strict tolerance and smoothness requirements. Similar in methodology to Freestyle Shaper, ACA surfaces can obtain G3 continuity matching, or the rate of change of curvature continuity. ACA has some associativity when creating and modifying elements, but the end results are usually non-associative. See example in Figure 3.
In addition to ACA, Automotive Class A Optimizer (ACO) can be added for global deformation capabilities on multiple surfaces.
 Figure 3: Example of ACA in use.
Imagine and Shape 2 (IMA) is used to capture and make tangible the conceptual phase of aesthetic1 product development. See example in Figure 4. Complemented by Freestyle Sketch Tracer (FSK), IMA is based on mathematical “subdivision1” technology: an algorithmic technique to generate smooth surfaces as a sequence of successively refined polyhedral meshes. This will allow you to form your concept from a sphere, a flat surface, or a curve. IMA is quite possibly the future of CAD modeling.
 Figure 4: Example of IMA in use.
Freestyle Sketch Tracer (FSK) is used to convert 2D images into a 3D scene in order to create 3D geometry from your hand drawings or other sources such as pictures. Once added, the images are able to move normal to the positioning plane. The designer can then use products like Generative Shape Design, Freestyle Shaper, or Automotive Class A to generate the geometry. FSK works with JPG, BMP, TIFF and RGB files. See example in Figure 5.
 Figure 5: Example of FSK in use.
Digitized Shape Editor (DSE) is not used to create geometry, rather it is used to import and process digitized point clouds1. The point cloud can be tessellated1 for quick visualization of the imported polygon mesh1. DSE is a vital component in the reverse engineering process. Once the cloud is imported and adjusted to suit your need, Generative Shape Design, Freestyle Shaper, Quick Surface Reconstruction, or Automotive Class A can be used to generate the geometry. See example in Figure 6.
 Figure 6: Example of FSK in use.
Quick Surface Reconstruction (QSR) allows you to create prototype quality surfaces from digitized data that has been cleaned up and tessellated using Digitized Shape Editor (DSE). Essentially a “shrink wrapper” is produced based on user defined tolerances1. In addition to organic shapes, QSR will detect and create mechanical shapes (plane, cylinder, sphere, and cone). The resulting surfaces are datum (non-associative). See example in Figure 7.
 Figure 7: Example of QSR in use.
In summary, for surfaces in a hybrid environment that are fully associative, Generative Shape Design is the product you should choose. If you need more flexibility in aesthetics, then Freestyle Shaper is your choice. For flexibility in aesthetics with high tolerances for Class A surfaces, then the Automotive Class A product should be your choice. To quickly construct surfaces from point cloud data, you’ll want to invest in Quick Surface Reconstruction.
“Surfacing” Lexicon
| Aesthetic: |
Pleasing in appearance. Used in context to describe styled (“Organic”) products. |
| Analytical: |
Separating something into component parts or constituent elements. Used in context to describe products that are primarily functional (“Mechanical”). |
| B-rep: |
Boundary Representation. The description of a 3D object’s shape, resulting from the assemblage of topological entities. See Topology. |
| Bezier: |
A type of spline curve named after its inventor, Pierre Bézier. Popular within the CAD/CAM and computer graphics industries because of their ease of manipulation. See Spline. |
| Control Points: |
Sometimes referred to as Control Vertices (“CV’s”). Suspended above or below the span of a curve or surface, control points establish a support lattice (“Control Polygon” or “Hull”) that defines and influences the curve or surface shape. |
| Cell: |
A single element (surface or curve) in CATIA V5 that has no visible discontinuities. For a curve, this implies no internal vertices; for a surface, no internal edges. See Continuity. |
| Conic: |
Mathematically, a curve that results from the intersection of a plane and a cone. In practice, conics are used to define smooth shapes that require analytical precision. Conics can be fully defined from only five pieces of information: beginning/end position, beginning/end tangency, and a parameter ranging between 0 and 1. Entities belonging to the conic family are: circle, ellipse, parabola, and hyperbola. |
| Continuity: |
The connection and/or smoothness between curve or surface segments. In mathematical form, continuity is the derivative of a curve(s) defining function, expressed as Cx. Beginning with C0 as positional connectivity, C1 implies tangent, C2 curvature, C3 rate of curvature, C4 rate of rate of curvature. |
| Foreign: |
In the context of CATIA V5, refers to geometry, e.g. IGES data, created in another CAD system. Foreign curves and surfaces have no associative (“parametric”) history. |
| Free form: |
A term used to describe geometry with little or no prismatic characteristics (straight lines, planar faces, etc.). |
| Hybrid: |
Refers to a mixed environment in which surface and solid modeling technique can be utilized to create geometry. In this context, CATIA V5 is a true hybrid modeling program. |
| Isoparm: |
Short for “Isoparametric Curve”. A line that exists on a surface, having a constant position along the latitude or longitude direction (“U” and “V”) of the surface. See U,V,W. |
| Loft: |
An ambiguous industry term used to describe (1) a surface consisting of multiple cross sections, (2) the act of creating free form shapes (“lofting”) or (3) the individual or department responsible for such activity (“loftsman”). The term is derived from the pre-computing age in which curvilinear shapes were manually drafted, often 1:1 scale. In the case of shipbuilding, these curves were too large for a drafting table; therefore this activity was often performed in the loft area of a large building. See Spline. |
| Manifold: |
A mathematical condition in which a sum of individual pieces of geometry can be defined in 3D space without ambiguity. It is typically used as a check for valid geometry in CATIA V5. A simple example would be a cross-section in the shape of an “X” (two intersecting lines). Such a shape cannot be offset or thickened as a whole because it is non-manifold. |
| Normal: |
In context, refers to a vector that is perpendicular to a curve or surface; much like the Z axis of an XY plane. Sometimes referred to as the “Porcupine”. |
| NURBS: |
Non Uniform Rational B-Spline. A robust mathematical form used to describe curves and surfaces. Almost any shape can be described with NURBS, including exact circles. Bezier curves are a special type of NURBS curves. See Bezier. |
| NUPBS: |
A term unique to CATIA, stands for Non Uniform Polynomial B-Spline. Also known as “NUPS”, the mathematics behind this type of curve is slightly different from NURBS in that it is non-rational. This means that the control points of a NUPBS curve all have the same amount of influence (“weight”) on the overall curve. In other words, modifying a single control point changes the entire curve vs. just having a local effect in the case of NURBS. Most curves in CATIA V5 are of this type. See NURBS, Control Points. |
| Patch: |
In context, a surface method of “filling” an area that has defined boundaries. |
| Patch: |
In context, a surface method of “filling” an area that has defined boundaries. |
| Point Cloud: |
A collection of XYZ points, usually collected with a scanning laser or light beam that describes a 3D object. Often used in the process of reverse engineering a physical model. A supporting industry file format is ASC (ascii text). |
| Polygon Mesh: |
A set of polygonal faces (triangles) which represent the surface(s) of a 3D model. In industry practice, this type of data is commonly used for Stereolithography, or “rapid prototyping”. A supporting industry file format is STL. |
| Raster: |
A graphical image consisting of pixels or dots. Common industry file formats are BMP, JPG, and TIFF. |
| Segmentation: |
Splitting up a heterogeneous data set into subsets based on homogeneous characteristics. For curves and surfaces, this is typically based on curvature continuity. See Continuity. |
| Spine: |
The characteristic “backbone” of certain surface types, e.g. multi-section loft. A spine is used to define the position of a series of planes along its length, upon which curves are calculated that describe the surface. |
| Spline: |
Formerly a thin metal or wooden strip used by a draftsman that was held in place by weights positioned along its span. With the advent of computers, splines are now represented digitally, but serve the same purpose of defining curvilinear profiles. Beginning with “Cubic Polynomial Splines”, then “B-splines” (B stands for Basis), and then NURBS, we now have the mathematical equivalent of the former draftsman's tool. See NURBS. |
| Subdivision: |
A relatively new technology used to represent 3D models. Widely used in the computer graphics industry, e.g. Pixar Animation, a subdivision surface is actually a polygon mesh that is refined via smoothing algorithms to closely approximate a NURBS surface. Some believe this technology will replace NURBS modeling in the future. See NURBS, Polygon Mesh. |
| Surface: |
In context, refers to a 2D shape that defines the boundary of an object in three dimensions. |
| Tension: |
A force or stress causing stretching. In context, the amount of influence put upon a curve or surface by a tangency or curvature constraint. |
| Tessellate: |
The process of decomposing a curve or surface into a polygon mesh. See Polygon Mesh. |
| Tolerance: |
The acceptable deviation from specification. A consequence of attempting to digitally model real world objects, tolerance is a persistent concern when using surfacing tools and technique. Often times, a design is iterated many times before it satisfies tolerance, continuity and segmentation requirements. See Continuity, Segmentation. |
| Topology: |
The physical anatomy of a 3D model. Primary topological elements are vertices, edges and faces. |
| Trim: |
In context, a relimitation of a surface or curve. Almost all surfaces intrinsically have four sides and do not allow holes. Irregular shapes and holes are created via trimming, sometimes automatically by the system if provided sufficient input parameters. |
| U,V,W: |
The coordinate system of a surface, expressed as a ratio of overall length ranging from 0 to 1 along each direction. In the case of a curve, only U exists. Akin to Cartesian XYZ space, U corresponds to the X direction, V to the Y direction, and W (usually referred to as the “normal”) to the Z direction. |
| Wireframe: |
A general term used in CATIA V5 to represent zero and one-dimensional geometry (points, planes, curves, etc.). A significant portion of time spent during the “surfacing” process is actually creating and modifying wireframe entities. |
| Vector: |
An entity that has magnitude and direction. In graphics form, a vector image is described by curves and algorithms. Supporting industry file formats are HPGL or DXF.
|
| |
|