The 3D ACIS® Modeler (ACIS) is Spatial’s prominent 3D solid modeling engine. 3D InterOp is a CAD data translation framework (Interoperability)

InterOp:Connect/CATIA V5/CATIA V5 Reader

From DocR19

Jump to: navigation, search

The CATIA V5 Reader component reads files from CATIA V5. This component is in the form of shared libraries.

InterOp Connect supports translation of the following file formats and versions:

READ
File Format File Extension Version Supported
CATIA V5 .CATPart, .CATProduct, .cgr CATIA V5 R6 through R19

Contents

Features

Features of the CATIA V5 Reader include:

  • License - Uses native standalone CATIA V5 libraries to perform CATIA V5 operations. These libraries are delivered with the product. No separate licenses of CATIA V5 are required for using this translator. Mapping function callback is available only if there is access to V5 CAA. If a CATIA V5 license is not available, ignore this callback function and its implementation.
  • Support for BRep representation - Refer to Brep for more details.
  • Translation of permanent identifier and name for CATIA V5 topological entities - Refer to Document for more details.
  • Support for Parameters - Refer to Document for more details.
  • Non-manifold Topology Support in BRep - Refer to BRep for more details.
  • Support for Layer, Layer filter and Selection Sets - Refer to Document for more details.
  • Support for Assembly representation - Refer to Assembly for more details.
  • Support for Mesh representation - Refer to Mesh for more details.
  • Support for Visualization representation - Refer to Visualization for more details.
  • Support for Manufacturing representation information - Refer to Manufacturing for more details.

Options for CATIA V5 Reader

Option Default Description
ElementNameOption None This option controls the way elements and publication names are processed.
ExportRevolveSurfAsNURBS false This option controls whether to translate revolved surfaces from CATIA V5 file as NURBS (Non Uniform Rational Bspline Surfaces) or NUBS (Non Uniform Bspline Surfaces).
ExportUseSurfaceLimits false This option controls whether to trim the underlying surface to face parameter bounds.
ImportEdgeAttributes false This option indicates whether to read the edge attributes from CATIA V5 file.
MergeC1Edges false This option sets whether to merge C1 continuous edges in the target document.
UseCanonicalSurface true This option sets whether to translate NURB representation or Canonical form of multi-represented surfaces from CATIA V5 file.

Document

Axis System, Layer, Layer Filter and Selection Set

CATIA V5 Reader exports Axis System information including name and current status.
CATIA V5 Reader exports Layer and Layer Filter information including name, current status, and entities in the layer, and layers in a layer filter. If the source CATIA V5 file contains layers having a layer value as NONE, then the layer value for that particular layer is set to 1023 in the resultant file.
CATIA V5 Reader also exports Selection Sets information including name, current status, and entities in the Selection Set.

Translation of Permanent Identifier and Name for CATIA V5 Topological Entities

When translating to ACIS, the 3D InterOp ACIS CATIA V5 Reader supports reading CATIA V5 topology data Permanent ID and Permanent Name to ACIS attributes called ATTRIB_XACIS_PID and ATTRIB_XACIS_PNAME, respectively. These attributes are generic attributes of type string (ATTRIB_GEN_STRING) in ACIS.

To enable this optional functionality in your options file, use the following format for these options.

Acis.BRep.Writer.PID = value Acis.BRep.Writer.PName = value

where value may be

Body = 8 (for PID only)
Face = 4
Edge = 2
Vertex = 1

The option values can be computed by performing a "logical or" operation on the constant values corresponding to the topological elements for which the information is to be translated. For example, to translate Permanent ID Faces and Edges, use the following:

Acis.BRep.Writer.PID = 6

To enable this optional functionality in your CPP source code file, use the following defines for these options: (declared in SPAIOptionName.h)

#define SPAIEBODY 8
#define SPAIEFACE 4
#define SPAIEEDGE 2
#define SPAIEVERTEX 1
#include "SPAIOptionName.h"
// ...
SPAIOptions options; 
SPAIValue translatePID(SPAIEBODY|SPAIValue translatePName(SPAIEFACE|result &= options.Add("Acis.BRep.Writer.PID", translatePID); 
result &= options.Add("Acis.BRep.Writer.PName", translatePName);

Support for Parameters

For the InterOp ACIS product line, the Connect interface supports the translation of the parameters excluding CATIA V5 feature defining parameters. These are commonly known as "part notes" (Geometrical Set containing parameters). Support for parameters is available only when the TranslateAttributes option is set to True. The following figure shows an example of supported top-level parameters:

Limitations

  • Only parameters of non-ordered Geometrical Set are supported.
  • If a parameter is present inside multi levels of a feature tree, InterOp creates a corresponding note object at the top level only.
  • Formulae are not supported.

Name Attribute Transfer from CATIA V5 to ACIS

While translating solids from a CATIA V5 file to ACIS, the value of name attribute depends on the type of solid being translated along with certain option settings. The various types of solids from CATIA V5 and the corresponding value of a name attribute in ACIS is discussed below.

Part with Single Lump

For a part with a single lump in a CATIA V5 file, as shown in the next figure, the name of the translated Solid in ACIS is "V5_Part|PartBody|EdgeFillet.1"

Part with Multiple Lumps

InterOp translates each lump from a CATIA V5 file as a separate solid in ACIS. The next figure illustrates a CATIA V5 part with multiple lumps. The names of the translated solids in ACIS become:

  • Solid body : "V5_Part|PartBody|Pad.2"
  • Solid body : "V5_Part|PartBody|Pad.3"

Sketch in Part Body

The translation of curves and points present in a Sketch depend on the value of these options:

  • TranslateFreeCurves
  • TranslateFreePoints
Curves

All the connected curves in the Sketch as shown by cyan lines in the next figure are translated as One Wire Body. The individual segments become members of this wire body. The name of this wire body becomes:

  • "V5_Part|PartBody|Sketch.1"
Free Points

All the free points, illustrated as a cross in red color in the above Sketch, are to be translated as independent vertices. The names of these points become:

  • Point #1: "V5_Part|PartBody|Sketch.1"
  • Point #2: "V5_Part|PartBody|Sketch.1"
  • Point #3: "V5_Part|PartBody|Sketch.1"
  • Point #4: "V5_Part|PartBody|Sketch.1"

Sketch is in Geometrical Set

The translation of curves and points present in a Sketch depend on the setting of these options:

  • TranslateFreeCurves
  • TranslateFreePoints
Curves

All the connected curves in the Sketch as shown by cyan lines in the next figure are to be translated as one wire body. The individual segments become members of this wire body. The name of this wire body becomes:

  • "GeomSet|Geometrical Set.1|Sketch.1"
Free Points

All the free points, illustrated as a cross in red color in the above Sketch, are to be translated as an independent vertex. The names of these points become:

  • Point #1: "GeomSet|GeometricalSet.1|Sketch.1"
  • Point #2: "GeomSet|GeometricalSet.1|Sketch.1"

Geometrical Set

The translation of free curves and free points in geometrical sets depend on the value of these options:

  • TranslateFreeCurves
  • TranslateFreePoints
Surfaces

The surfaces in the geometrical set shown in green color in the next figure are to have the following name in ACIS:

  • "GeomSet|Geometrical Set.1|Extrude.1"
Free Curves

The free curve in the geometrical set shown in cyan color in the previous figure is to have the following name in ACIS:

  • "GeomSet|Geometrical Set.1|Circle.1"
Free Points

The free points in the geometrical set illustrated as a cross in red color in the next figure, are to have the following names in ACIS:

  • "GeomSet|Geometrical Set.1|Point.2"
  • "GeomSet|Geometrical Set.1|Point.3"

Axis Systems

When a part is created with the "Enable Hybrid Design" option as shown in the next figure, the name of the Axis system becomes:

  • "V5_Part_AxisSytem_1.CATPart|PartBody|Axis System.1"

When a part is created with the "Enable Hybrid Design" option off as shown in the next figure, the name of the Axis system becomes:

  • "GeomSet|Axis Systems|Axis System.1"

Assembly

An assembly might contain parts or assemblies. Consider a scenario where we have a CATIA V5 assembly containing two parts. The following figures show the two parts of a CATIA V5 assembly:

Case 1

This case is an assembly [Product1.CATProduct] containing one instance each of these parts. Product1 contains Part1 and Part2 as shown in the next figure:

For entities in Part1, the following names are to be attached:

  • Product1|Part1.1#Part1;Part1|PartBody|EdgeFillet.1
  • Product1|Part1.1#Part1;Part1|Geometrical Set.1|Sketch.2
  • Product1|Part1.1#Part1;Part1|Geometrical Set.1|Extrude.1

For entities in Part2, following names are to be attached:

  • Product1|Part2.1#Part2;Part2|PartBody|EdgeFillet.2
  • Product1|Part2.1#Part2;Part2|Geometrical Set.1|Sketch.2
  • Product1|Part2.1#Part2;Part2|Geometrical Set.1|Extrude.1
Case 2

This case is an assembly [Product2.CATProduct] containing two instances of Part1 and one instance of Part2. Product2 contains Part1 and Part2. Part1 contains an instance of assembly, Instance1. Part2 contains two assemblies: Instance1 and Instance2. The following figure shows Product2:

For entities in Part1 - Instance 1, the following names are to be attached:

  • Product2|Part1.1#Part1;Part1|Geometrical Set.1|Extrude.1
  • Product2|Part1.1#Part1;Part1|Geometrical Set.1|Sketch.2
  • Product2|Part1.1#Part1;Part1|PartBody|EdgeFillet.1

For entities in Part2 - Instance 1, the following names are to be attached:

  • Product2|Part2.1#Part2;Part2|Geometrical Set.1|Extrude.1
  • Product2|Part2.1#Part2;Part2|Geometrical Set.1|Sketch.2
  • Product2|Part2.1#Part2;Part2|PartBody|EdgeFillet.2

For entities in Part1 - Instance 2, the following names are to be attached:

  • Product2|Part1.2#Part1;Part1|Geometrical Set.1|Extrude.1
  • Product2|Part1.2#Part1;Part1|Geometrical Set.1|Sketch.2
  • Product2|Part1.2#Part1;Part1|PartBody|EdgeFillet.1
Case 3

This case is an assembly containing one part [Part1.CATPart] and another assembly containing an instance each of Part1 and Part2. The following figure shows the structure of the assembly:

Assembly structure
Assembly structure

For entities in Part1, the following names are to be attached:

  • TopProduct|Part1.1#Part1;Part1|Geometrical Set.1|Extrude.1
  • TopProduct|Part1.1#Part1;Part1|Geometrical Set.1|Sketch.2
  • TopProduct|Part1.1#Part1;Part1|PartBody|EdgeFillet.1

For entities in sub-assembly Product1, the following names are to be attached:

  • For Part1 in sub-assembly Product1:
    • TopProduct|Product1.1#Product1|Part1.1#Part1;Part1|Geometrical Set.1|Extrude.1
    • TopProductProduct1.1#Product1|Part1.1#Part1;Part1|Geometrical Set.1|Sketch.2
    • TopProduct|Product1.1#Product1|Part1.1#Part1;Part1|PartBody|EdgeFillet.1
  • For Part2 in sub-assembly Product1:
    • TopProduct|Product1.1#Product1|Part2.1#Part2;Part2|Geometrical Set.1|Extrude.1
    • TopProduct|Product1.1#Product1|Part2.1#Part2;Part2|Geometrical Set.1|Sketch.2
    • TopProduct|Product1.1#Product1|Part2.1#Part2;Part2|PartBody|EdgeFillet.2

Assembly

  • Assembly File Support - The CATIA V5 Reader reads assembly CATIA V5 (*.CATProduct) files. A CATIA V5 assembly file may reference a wide range of different file formats. Those not supported by InterOp are ignored.
Set the Representation user option to Assembly.
Depending upon the capabilities of the Writer, the assembly is to be flattened or written as assembly.
The part name format in flatten route of ACIS is as follows:
RootAssemblyName| SubAssembly1-InstName#SubAssembly1-DefName| SubAssembly2-InstName#SubAssembly2-DefName|…|InstName#DefName;EntityName
where # is used as a separator between Instance Name and Definition Name of component (subassembly or part), and ; is used as separator between Definition name of leaf part node in assembly and the name of the entity in the part file.

BRep

The CATIA V5 Reader supports reading BRep (topology and geometry) data from CATPart files.

Set the Representation user option to BRep.

  • Non-manifold Topology Support
The CATIA V5 Reader uses a CATIA V5 operator to decompose non-manifold topology into manifold topology which is then translated into your targeted format.

Manufacturing

  • Support for Manufacturing Information (MI) Option
The Connect interface supports translation of manufacturing information from CATIA V5 CATPart format. Manufacturing information includes PMI data with Display Information and Hole feature.

Set the Representation user option to PMI or Manufacturing or PMI+Manufacturing.

PMI Data

Manufacturing Information for PMI is called through the use of a representation named PMI. The PMI data includes dimensioning (Driven and Reference types), Geometric Dimensioning and Tolerancing (GD&T), 3D annotation (text and flag note), and Surface Roughness information. To support the translation of PMI data, the following set of DLLs are required in addition to the common DLLs:

  • SPAXCATIAV5PMIExporter.dll
  • SPAXV5TkPMI.dll

Note: Non-Semantic GD&T type is not supported.

Dimensions Mapping

While translating from CATIA V5, the Basic, Reference, and Tolerance type dimensions from CATIA V5 are mapped to BASIC, REFERENCE, or TOLERANCE types.

For example, the Reference type dimension in CATIA V5 is mapped as REFERENCE type. The subtype represents Linear, Angular, or Radius value type. Subtype dimension is based on the corresponding dimensions created in CATIA V5. The following table lists dimension mapping:

CATIA V5 Dimension Type Dimension Subtype
DrwDimDistance

DrwDimDistanceOffset

DrwDimLength

DIMSUBTYPE_LENGTH_OR_DISTANCE
DrwDimRadius

DrwDimRadiusTangent

DrwDimRadiusCylinder

DrwDimRadiusEdge

DrwDimFillet

DIMSUBTYPE_RADIUS
DrwDimDiameter

DrwDimDiameterTangent

DrwDimDiameterCylinder

DrwDimDiameterEdge

DrwDimDiameterCone

DIMSUBTYPE_DIAMETER
DrwDimAngle

DrwDimAngleArc

DrwDimSlope

DIMSUBTYPE_ANGLE
DrwDimLengthCurvilinear

DrwDimLengthCircular

DIMSUBTYPE_CURVILINEAR

Coordinate type dimension is mapped as shown in the table below:

CATIA V5 Coordinate Dimension Type Dimension Subtype
0: 2D coordinate dimension DIMSUBTYPE_COORDDIM2D
1: 3D coordinate dimension DIMSUBTYPE_COORDDIM3D

Note: All the CATIA V5 types other than listed above are mapped into DIMSUBTYPE_UNKNOWN.

Dimension Extremities in CATIA V5

InterOp Connect exports extremity points of Linear and ordinate dimensions from CATIA V5.

Annotations in CATIA V5

InterOp Connect supports Text, Flag Note, Surface Roughness, and GD&T types of annotations in a CATIA V5 file.

  • InterOp Connect represents these annotations in ACIS as an attribute on the associated entity.
  • InterOp Connect represents these annotations in Parasolid as a dummy body containing the tag_id of the associated entity and all of its attributes.

The CATIA V5 annotations are based on the following rules:

  • All angular values of GD&T will be converted into degree and other type of GD&T values will be converted into the target document units.
  • In the Text Annotations, the text properties such as Underline, Color, Font Size, and Font Name are not supported.
  • In the Flag Note Annotations, URL and Hidden text are not supported and its display properties are given same as Text Annotation.
  • InterOp Connect supports only the semantic type of GD&T.
  • Annotations in an assembly file are not supported.

Hole Feature

Manufacturing Information for Holes is translated by using Manufacturing Representation. To support the translation of Hole feature, the SPAXCATIAV5Manufacturing DLL is required in addition to the common DLLs.

Display Information

The InterOp Manufacturing Information Reader translates PMI display information from source to target formats. The display information includes:

  • Anchor points of annotation
  • Normal to view plane
  • Primary direction of annotation
  • Leader line information (head and tail points)

This display information can be used by the receiving application to present the annotation data in the same 3D coordinates as in the source file.

Visualization

InterOp CATIA V5 Reader reads Visualization (Scenegraph) data from CGR files.

Set the Representation user option to Visualization.

Mesh

Mesh data is a collection of triangles that define a shape within the model. Connect supports translation of Mesh data from the CATIA V5 format to the ACIS format. Mesh data is called through the use of the representation named, Mesh. To support the translation of Mesh data, you need SPAXCATIAV5Mesh.dll in addition to the common DLLs listed in the section Mesh Data.

Set the Representation user option to Mesh.

Limitations

The CATIA V5 Reader has the following limitations:

  • No support for file names with non-ASCII characters
The Connect CATIA V5 Reader does not support reading CATIA V5 files that are named using non-ASCII characters. CATIA V5 is based on the ISO 646 standard, which does not support multi-byte character code.
  • Reading Manufacturing Information from an Assembly File
InterOp Connect does not support reading PMI data and Hole feature from assembly files.
Personal tools