Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
163 views58 pages

ICEM Catia Direct Interface: Reference Manual

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 58

ICEM Catia Direct Interface

Reference Manual

April 2004

© ICEM Ltd. 2004


Legal Notices and Contact

Copyright Information

Copyright © 2003 ICEM Ltd. All Rights Reserved.


User and training documentation from ICEM is subject to the copyright laws of the United States and other countries and is provided
under a license agreement that restricts copying, disclosure, and use of such documentation. ICEM hereby grants to the licensed user
the right to make such limited copies in printed form of this documentation if provided on software media, as may be necessary for
internal/personal use only and all such copies shall be made in accordance with the license agreement under which the applicable
software is licensed to the licensed user. Any copy made shall include the full ICEM copyright notice and any other proprietary notice
provided by ICEM to the licensed user from time to time. This documentation may not be disclosed, transferred, modified, or reduced
to any form, including, but not limited to, electronic media, or transmitted or made publicly available by any means whatsoever without
the prior written consent of ICEM and no authorization is granted to make copies for such purposes.
Information described herein is furnished for general information only, is subject to change without notice, and should not, in any
circumstances, be construed as a warranty or commitment by ICEM. ICEM assumes nor accepts any responsibility or liability for any
errors or inaccuracies howsoever arising that may appear in this document.
The software described in this document is provided under a written license agreement, contains valuable trade secrets and
commercial and intellectual proprietary information, and is protected by the copyright laws of the United States and other countries. It
may not be copied or distributed in any form or medium, disclosed to third parties, or used in any manner not provided for in the
software licenses agreement except with written prior approval from ICEM. PLEASE NOTE THAT UNAUTHORIZED USE OF
SOFTWARE OR ITS DOCUMENTATION CAN RESULT IN CIVIL DAMAGES AND CRIMINAL PROSECUTION.

Registered Trade Marks of ICEM Ltd. or a Subsidiary


ICEM is a registered trade mark of ICEM Ltd.

Trade marks of ICEM Ltd. or a Subsidiary


ICEM Surf and ICEM DDN are unregistered trade marks of ICEM Ltd.

Third-Party Trade Marks


3Dconnexion, the 3Dconnexion logo, and other 3Dconnexion marks are owned by 3Dconnexion and may be registered. Adobe is a
registered trade mark of Adobe Systems. AIX is a trade mark or registered trade mark of
International Business Machines Corporation in the United States and other countries. AMD is a registered trade mark of
Advanced Micro Devices. ATI and FIREGL are trade marks and/or registered trade marks of ATI Technologies Inc. Barco is a
registered trade mark of Barco nv. CATIA is a registered trade mark of Dassault Systems. HP-UX is a registered trade mark of the
Hewlett-Packard Company. I-DEAS is a trade mark or registered trade mark of Electronic Data Systems Corporation (EDS).
InstallShield is a registered trade mark and service mark of InstallShield Software Corporation in the United States and/or other
countries. IRIX is a registered trade mark of Silicon Graphics, Inc. Linux is a registered trade mark of Linus Torvald. Netscape and the
Netscape N and Ship's Wheel logos are registered trade marks of Netscape Communications Corporation in the U.S. and other
countries. NVidia is a registered trade mark of NVidia Corporation. Sun Solaris is a trade mark or registered trade mark of
Sun Microsystems. Microsoft, Windows, Windows NT, Visual Basic, and the Visual Basic logo are registered trade marks of
Microsoft Corporation in the United States and/or other countries. SuSE and its logo are registered trade marks of SuSE AG. Wacom
is a registered trade mark of Wacom Company, Ltd.

Licensed Third-Party Technology Information


Certain ICEM software products contain licensed third-party technology: FLEXlm is a registered trade mark of
Macrovision Corporation. LightWork Libraries are copyrighted by LightWork Design 1990-2003. Pro/ENGINEER, CDRS, 3DPAINT are
copyrighted by Parametric Technology Corporation. The CADverter for Catia, Cadds, Unigraphics are copyrighted by
Theorem Solutions Ltd.

UNITED STATES GOVERNMENT RESTRICTED RIGHTS LEGEND


This document and the software described herein are Commercial Computer Documentation and Software, pursuant to FAR
12.212(a)-(b) (OCT'95) or DFARS 227.7202-1(a) and 227.7202-3(a) (JUN'95), is provided to the US Government under a limited
commercial license only. For procurements predating the above clauses, use, duplication, or disclosure by the Government is subject
to the restrictions set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software Clause at DFARS
252.227-7013 (OCT'88) or Commercial Computer Software-Restricted Rights at
FAR 52.227-19(c)(1)-(2) (JUN'87) or FAR 52.227-14 (ALT III), as applicable. 032603
ICEM Ltd.: registered office: Epsilon House, Enterprise Road, Chilworth Science Park, Southampton, SO16 7NS, U.K.
Contact Information

Homepage

http://www.icem.com

Licenses

licenses@icem.com

Hotline

in Europe:

ICEM Technologies GmbH


Siemensstrasse 9
63263 Neu-Isenburg
Germany

Phone: +49 (0) 6102 366 9090


Fax: +49 (0) 6102 366 9100
E-mail: HELPdesk@icem.com
Internet: http://www.icem.com (Support)

outside Europe:

ICEM Technologies, Inc.


38705 Seven Mile Road
Suite 320 Livonia, MI 48152
USA

Phone: USA & Canada: +1 800 692 7322


outside USA: +1 734 462 1795

Fax: +1 734 462 1039


E-mail: HELPdesk@icem.com
Internet: http://www.icem.com (Support)

Sales

in Europe:

ICEM Technologies GmbH


Siemensstrasse 9
63263 Neu-Isenburg
Germany

Phone: +49 6102 366 9000


Fax: +49 6102 366 9100
E-mail: info@icem.com
Internet: http://www.icem.com (Contact Us > Global Locations)

outside Europe:

ICEM Technologies, Inc.


38705 Seven Mile Road
Suite 320 Livonia, MI 48152
USA

Phone: +1 734 462 1795


Fax: +1 734 462 1039
E-mail: info@icem.com
Internet: http://www.icem.com (Contact Us > Global Locations)
Contents

Contents

List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2 Data Conversion from CATIA to ICEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8


2.1 Entity Mapping from CATIA to ICEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2 Translator Input. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.2 Description of the Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.3 Starting the Translator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.4 Mask File Format for CATIA to ICEM Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.4.1 The OFF Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.4.2 The ON Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.4.3 Example Mask Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.4.4 Mask File Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 Translator Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.2 Screen Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.3 The ICEM File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.4 The Progress File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.5 Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4 Aids to Successful Translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3 Data Conversion from ICEM to CATIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23


3.1 Entity Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2 Translator Input. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2.2 Description of the Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2.3 Starting the Translator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.3 Translator Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.2 Screen Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.3 The CATIA File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.3.4 The Progress File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.3.5 Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.4 Aids to Successful Translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4
Contents

4 System Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.1 Manual Installation of the Translator Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.2 License Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.2.1 FLEXlm Licensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.2.2 Environment Setup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

5 FLEXlm License Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39


5.1 Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.2 Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.3 Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.4 License Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.5 The License File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

6 Extended Entity Mapping Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46


6.1 Transfer from CATIA to ICEM ASCII Part. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
6.2 Transfer from CATIA to ICEM Surf DB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.3 Transfer from ICEM ASCII Part to CATIA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.4 Transfer from ICEM Surf DB to CATIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

7 Translator Execution with Shell Scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

8 Release Bulletins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
8.1 Release Bulletin ICEM – CATIA Direct Interface 6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
8.2 Release Bulletin ICEM – CATIA Direct Interface 6.1.005. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5
List of Tables

List of Tables

Table 1 Supported Platforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7


Table 2 Entity Mapping from CATIA to ICEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Table 3 Entity Mapping from ICEM to CATIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Table 4 Software Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Table 5 Causes for Flexlm Licensing Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Table 6 Error Codes for Batch Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

6
1 Introduction

1 Introduction

The ICEM – CATIA Direct Interface (or CATIA <–> ICEM CADverter as Theorem Solutions call it) is a bi-
directional direct translator between CATIA and ICEM DDN, ICEM Surf or other ICEM products. It runs on
the following platforms:

Table 1 Supported Platforms

Platform Operating System

HP-UX 11i

IRIX 6.5.12

Solaris 8

Windows XP Professional,
000 Professional

If the input is a CATIA CATDATA, CATEXP or model file, the translator creates the equivalent ICEM file (in
ICEM ASCII Part File format or shortly IPARTA). The input can be a V3 CATDATA file or any V4 CATDATA,
CATEXP or model file. If the input is an ICEM ASCII Part file as output from ICEM DDN or ICEM Surf, the
equivalent CATIA model will be created.
The translators process CATIA geometric data up to and including solids (SOLIDE) and ICEM data up to
and including trimmed surfaces.
The translators also process drafting data from CATIA and ICEM.

7
2 Data Conversion from CATIA to ICEM

2 Data Conversion from CATIA to ICEM

2.1 Entity Mapping from CATIA to ICEM

The following table contains information on the entity mappings from CATIA to ICEM. The notes below the
table deliver more specific details where required.

NOTE

• Those entities which are, by default, in noshow mode in CATIA, will not be converted. It is possible to
request these entities to be converted by using the Mask File. CATIA DETAILS are automatically
exploded by the translator. CATIA layers are mapped to ICEM levels as appropriate.
• By default, the reading of CATIA drafting entities is switched off. To include the translation of drafting
entities a Mask File must be used containing the statement ON ALL DRA. For details please refer to
section 2.2.4 “Mask File Format for CATIA to ICEM Conversion” on page 13. As an alternative, the
input argument draft can be applied when you invoke the translator. For details on using this argu-
ment please refer to section 2.2.3 “Starting the Translator” on page 10 (CATIA –> ICEM) or section
2.2.3 “Starting the Translator” on page 10 (ICEM –> CATIA).

Table 2 Entity Mapping from CATIA to ICEM

CATIA ICEM Notes


(type number in brackets) (type number in brackets) (see below)

Point (1) Point (1)

Line (2) Line (2)

Circle (20) Circle (3)

Ellipse (21) Conic (4) 1

Parabola (22) Conic (4) 1

Hyperbola (23) Conic (4) 1

Curve (3) B-Spline Curve (31) 2, 7


Machining Curve (10)

Composite Curve (24) 3

Surface (5) B-Spline Surface (26) 2, 4

Plane (4) Plane (4) 5


B-Spline Surface (26)

Cst (14) Machining Curve (10)

Face (6) Trimmed Surface (27)

Solide (17) Trimmed Surfaces (27) 6

Skin (13) Trimmed Surfaces (27)

Skd (35) Trimmed Surfaces (27)

Draft (93) Systems Entity Form 2 (50)

View(s) (30) Systems Entity Form 11 (50)

8
2.2 Translator Input

CATIA ICEM Notes


(type number in brackets) (type number in brackets) (see below)

Dimension (91) Linear Dimension (32)


Radius Dimension (33)
Diameter Dimension (35)
Angular Dimension (36)

Axis (8) Work Axis (43)

NOTE

1. The form of the conic created in ICEM depends on the type of conic from CATIA. An ellipse will
become an ICEM conic form 2, a parabola an ICEM conic form 3 and a hyperbola an ICEM conic form
4.
2. If necessary, B-Spline curves and surfaces will be written to the ICEM file in extended form.
3. The composite curve will be exploded into its constituent curve types and converted to the appropriate
ICEM curves.
4. Both rational and non-rational Nsplines and Nsurfaces are supported.
5. Planes can either be kept as planes or converted to B-Spline surfaces.
6. Since ICEM Surf does not support solid entities, any solids encountered will be written to the ICEM file
as a collection of trimmed surfaces along with the required surface-curve-surfaces, loops and surface-
curves.
7. Machining Curves can only be created from B-Splines if the bsp_to_mc option is used.

2.2 Translator Input

2.2.1 Overview

The primary purpose of the CATIA-to-ICEM translator is to translate the contents of a CATIA CATDATA,
CATEXP or model file producing an ICEM ASCII Part File (IPARTA file). To achieve this, the translator
requires the name of the CATIA file to work on, the name of the ICEM file to be created, the name the Part
is to be given in the ICEM file, the name of an optional entity Mask File, and several options.

2.2.2 Description of the Input

CATIA CATDATA/CATEXP File Name


Name of the input CATIA file to be translated.

ICEM File Name


Name required for the ICEM file to be created.
The file does not need to exist. However, the directory the file will be saved in must exist.

ICEM Part Name


Name the ICEM Part is to be given.

9
2.2.3 Starting the Translator

This name appears as the first record in the ICEM file.

Mask File Name


Name of the optional Mask File which can be used to specify the entities which are to be translated.
Data can be masked by entity type, layer, and whether they are in noshow mode or not. The Mask
File is an ASCII text file which can be placed anywhere in the directory structure.

Options
There are a number of input arguments that can be provided to the translator to affect the information
which is put into the ICEM data.

2.2.3 Starting the Translator

Provided that the catfil_icem executable is in the current path, the translator can be started by entering
the following either in a user-written script or directly in a UNIX window:
catfil_icem -i <CATIA_file_name>
-o <ICEM_file_name> -pn <ICEM_part_name>
[-l <log_file_name>] [mask <maskname>]
[model <mnum>] [cont <val>]
[keep_planes] [read2d] [draft] [no_fixup] [bsp_to_mc]

[pdegen] [unlink_edges] [ent_messages]

[no_write_attrs] [read_set <name>]

Input Arguments:

catfil_icem
Translator executable.

<CATIA_file_name>
Mandatory. Name of the CATIA file to be translated. This argument can be a relative or full
pathname. This argument must be preceded by -i.

<ICEM_file_name>
Mandatory. Name of the ICEM file to be created. This argument can be a relative or full pathname.
The file does not need to exist. However, the directory the file shall be saved in must exist. This argu-
ment must be preceded by -o.

<ICEM_part_name>
Mandatory. Name of the ICEM Part in the file. This argument must be preceded by -pn.

<log_file_name>
Optional. Name of the Progress File. This argument must be preceded by -l. It will override the
default Progress File name.

10
2.2.3 Starting the Translator

mask <maskname>
Optional. Specifies that a Mask File with the name <maskname> is to be used. The name can be a rel-
ative or full pathname.

model <mnum>
Optional. Specifies that the input CATDATA file includes more than one model. <mnum> is the number
of the required model in the file. If it is not used, the first (and possibly only) model is set as default.

cont <val>
Optional. Curve and surface segments from CATIA are in Bezier form. This argument enables the
checking of the continuity conditions between these curve and surface segments within the given tol-
erance <val> to establish if they can be combined into a single Nurbs entity without the extra data
required by keeping them in Bezier form. This argument requires more processing time but can lead
to smaller output files.

keep_planes
Optional. If used, any planes encountered from CATIA will be written to the ICEM file as planes. If not
used, planes will be converted to B-Spline surfaces.

read2d
Optional. Specifies that faces read from CATIA should not have their 2D parametric edges refitted
when written to IPARTA but as far as possible, should be kept as they are from CATIA. This argument
also increases the speed of processing because the translator does not have to perform the refitting
process.

draft
Optional. Specifies that drafting entities (drawings, views, text, and dimensions) are to be read and
translated. This is equivalent to using a Mask File with the following statement in it:
ON ALL DRA

If a particular drafting entity type is required then a Mask File must be used containing the following
statement:
ON DRA <draft_name>

where <draft_name> is the required drafting entity type. In this case, the draft option should not be
used. A 2D option license is required.

no_fixup
This option specifies that the check for effectively zero length parametric segments in B-Spline
Curves should NOT be performed. If the option is not used then by default the check IS performed
and any segments encountered which are too short are removed.

bsp_to_mc
This option determines what happens to B-Spline Curves which are degree 1 and NOT part of a
Face. If the option is used, then data of this type will be converted to Machining Curves in IPARTA. If
not used, such curves will remain as B-Spline Curves.

11
2.2.3 Starting the Translator

Pdegen [tol]
By default, Bspline and NURBS surfaces read from CATIA are checked to see if they are degenerate.
From CATIA, there are three types of surface degeneracy conditions:

1. Full degeneracy:
Where a complete edge of a surface has degenerated to a single point. This type of degeneracy
does NOT require any EXTRA command line options for the translator to handle them. They will
be handled by default.
2. Full row or column degeneracy:
Where, for example, a complete column (or several neighbouring columns) of patches of a sur-
face have ZERO WIDTH.
If pdegen is not used then a message is output for this type of degeneracy but the translator will
not fix it.
If pdegen is used, then the translator will fix this type of degeneracy.
3. Partial edge degeneracy:
Where only part of an edge of a surface is degenerate. Again, this type of degeneracy does NOT
require any EXTRA command line options for the translator to handle them. It will split the sur-
face (face) at the degenerate point thus making two faces. One of the faces will be normal (no
degeneracies) and the other will be a type 1. above and so will be handled automatically.

unlink_edges
Faces from CATIA may or may not have 3D edges. If they have, the Translator will read them as nor-
mal. If they have not, then the Translator generates them from the 2D edges. If the unlink_edges
option is used, then any 3D edges that have been read from CATIA will appear as free geometry in
the output IPARTA file, hence making them available to the user when read into SURF/DDN. The
unlink_edges option operates ONLY on 3D edges that are read from CATIA, NOT on those that are
generated by the Translator.

ent_messages
By default, no entity conversion messages are output to the logfile, only errors and warnings are out-
put. The ent_messages option switches on entity conversion messages if required.
See also section 8.2 “Release Bulletin ICEM – CATIA Direct Interface 6.1.005” on page 52.

no_write_attrs
By default, any entity names from CATIA which are of the form “Part/Molecule/Atom” will be attached
to the converted Iparta entity as an Attribute, giving the Molecule name, and two Sub-attributes, giv-
ing the Atom and Part names respectively. This mechanism can be disabled by using the
no_write_attrs option.

See also section 8.2 “Release Bulletin ICEM – CATIA Direct Interface 6.1.005” on page 52.

12
2.2.4 Mask File Format for CATIA to ICEM Conversion

read_set <name>
By default, the contents of all SETs are read but if only a single SET is required for translation then its
name can be specified with the read_set option. Only the contents of the given SET will be read
unless there is geometry subordinate to it in another SET in which case the subordinate geometry
will be read as well.

NOTE
The input arguments can be supplied in any order.

2.2.4 Mask File Format for CATIA to ICEM Conversion

The Mask File contains information on the entity types to be extracted from the CATIA model and translated
into the ICEM format. If no Mask File is specified, the defaults defining what solid types are switched on will
depend on the type of translator license.
Basically, the translator by default will attempt to translate all entities on all layers, provided that they are
compatible with ICEM, and not in noshow mode. Drafting entities, by default, will not be read. NURBS enti-
ties also by default will not be read, a Mask File with the appropriate ON statement is required.
A Mask File is an ordinary ASCII text file, and can be created by the user using any of the available text edi-
tors. It can be placed anywhere in the directory structure and written in upper or lower case.
The Mask File statements allow the user to turn on or off certain entity types and/or layers and entities in
noshow mode. There are two basic statements: the OFF statement and the ON statement.

2.2.4.1 The OFF Statement

By default, all entities and all layers are ON. Each OFF statement looks like one of the following:

OFF ALL
Turns off all entities and all layers. This is the only statement which operates on both entities and lay-
ers at the same time.

NOTE
If no ON statement follows this statement, nothing will be translated.

OFF ALL ENT


Switches all entities off, but leaves layer settings as they were.

OFF ALL LAY


Switches all layers off, but leaves entity settings as they were.

OFF <ent_type>
Switches off entities of type <ent_type>.
This can be one of:

POI Points

13
2.2.4 Mask File Format for CATIA to ICEM Conversion

LIN Lines

ARC Arcs, Circles

CON Conics (ellipses, hyperbolae, parabolae)

CUR Curves

BCUR B-Spline Curves

NCUR NURBS Curves

SUR Surfaces

BSUR B-Spline Surfaces

NSUR NURBS Surfaces

FAC Faces

SOL Solids (SOLIDM (facetted))

BRE Solids (SOLIDE (exact brep))

CSG Solids (Solids with history)

ISOL Solids (ISOLATED solids)

AXIS 3D Axis System

CST Constraint

OFF NOSHOW
Default. Switches off all entities in noshow.

OFF NOSHOW LAY <laynum>


Switches off all entities in noshow mode which are on the specific layer laynum.

OFF LAY <laylist>


Switches off layers defined in <laylist>.
<laylist> can be a single number, a list of numbers separated by blanks or commas, ranges of
numbers of the form 10-20, or combinations of these three.
Example:
OFF LAY 1
OFF LAY 12,13,34,45
OFF LAY 10-23,34-56
OFF LAY 2,3 6 12-23 7, 68-98

NOTE
The layer numbers for CATIA range from 0 to 254.

OFF FILTER <fname>


Switches off all entities on the layers represented by the CATIA layer filter <fname>.

14
2.2.4 Mask File Format for CATIA to ICEM Conversion

2.2.4.2 The ON Statement

Since the default is ON for all entities and layers, it is not necessary to use an ON statement unless an OFF
statement has been used earlier in the Mask File.
Each ON statement looks like one of the following:

ON ALL
Switches on all entities and layers.

ON ALL ENT
Switches on all entities, but leaves layer settings as they were.

ON ALL LAY
Switches on all layers, but leaves entity settings as they were.

ON ALL DRA
Switches on the translation of drafting entities.

ON <ent_type>
Switches on entities of type <ent_type>.
For the definition of <ent_type> please refer to the section “OFF <ent_type>” above .

ON LAY <laylist>
Switches on layers defined in laylist.
For the definition of laylist please refer to the section “OFF LAY <laylist>” above.

ON FILTER <fname>
Switches on all entities on the layers represented by the CATIA layer filter <fname>.

ON NOSHOW
Switches on all entities in noshow mode.

ON NOSHOW LAY <laynum>


Switches on all entities in noshow mode which are on the specific layer <laynum>.

2.2.4.3 Example Mask Files

The following examples show how to use the OFF and ON statements to obtain the desired entities in the
CATIA model.

• how to obtain only surfaces:


OFF ALL ENT
ON SUR

• how to obtain all SOLIDEs on layer 10:

15
2.3 Translator Output

OFF ALL
ON BRE
ON LAY 10

• how to obtain all entities on layers 12 to 23:


OFF ALL LAY
ON LAY 12-23

2.2.4.4 Mask File Management

It is recommended to have as many Mask Files set up as required rather than editing the same file every
time. Moreover, their names should reflect what they do.

2.3 Translator Output

2.3.1 Overview

The translator should not only create an ICEM file but give the user enough information about the transla-
tion. With that information you may identify the translation, and check whether it has been successful or not,
and if not, why.
To achieve this, the translator outputs screen informatory messages, a Progress File and error messages.

2.3.2 Screen Messages

A typical output from the translator is as follows:


**************************************************
* Copyright Theorem Solutions Ltd. *
* CATIA - ICEM converter ver 6.0.001 *
**************************************************

Fri Jan 11 14:13:46 2002

Input
CATIA file : test1.model
ICEM file name: test1.iparta

CATIA title : TEST1

Points - 1
Arcs - 1
Lines - 1

*******************************************
* Model successfully output *
* TEST1 *
*******************************************

16
2.3.2 Screen Messages

This example shows a successful translation of a CATIA file containing a POINT on layer 0, an ARC on
layer 1 and a LINE on layer 2.
The following information are given in the successive portions of the output file:

1. Details about the translator that has been run, the direction in which the translation was performed (in
the example CATIA –> ICEM), and the translator version.
2. Date and time of the translation.
3. Input details showing the name of the input CATIA Part and the required name of the output ICEM file.
4. List of entities found in the CATIA Part which are supported by the translator, and number of entity types
that have been found.
5. Message giving the overall outcome of the translation and confirmation of the name of the ICEM Part
created (enclosed in asterisks).
The translation is performed in essentially two stages:

1. Reading the CATIA Part into an internal format.


2. Writing the internal format to the ICEM file.
Generally, if the translator has found a problem in the first stage, an informatory message will be output
immediately after the input details prior to the entity list. If a problem occurs during the second stage, an
informatory message will be output immediately after the entity list.
The following example shows an ICEM file error.

NOTE
Because the ICEM file could not be initialised correctly, the last section of output does not appear.
**************************************************
* Copyright Theorem Solutions Ltd. *
* CATIA - ICEM converter ver 6.0.001 *
**************************************************

Fri Jan 11 14:13:46 2002

Input
CATIA file : test1.model
ICEM file name : test1.iparta

CATIA title : TEST1

Points - 1
Arcs - 1
Lines - 1

Error initialising file for ICEM write

The following messages may occur:

• stage 1 message:
Read errors found - see progress file

17
2.3.3 The ICEM File

• stage 2 message:
Write errors found - see progress file

If one of these messages are displayed, the translation has not been completely successful. To find out
more details, you have to check the Progress File (see section 2.3.4 “The Progress File” on page 18).

2.3.3 The ICEM File

The translated contents of the input CATIA file becomes an ICEM file (IPARTA) created under the desired
directory and name. This file can be transmitted in various ways. It can be copied to tape or floppy disk
using, for example, the UNIX command tar, or it can be transmitted to another UNIX system using, for
example, ftp (ASCII transfer). The file can also be read directly by ICEM Surf, ICEM DDN, or other ICEM
products.

2.3.4 The Progress File

The purpose of the Progress File is to detail the progress of the translator run. If any problems in process-
ing the data occur, a warning message is displayed on the screen. An error message will be provided in the
Progress File showing the entity which caused the problem and giving some more information.
The file is created automatically by the translator.
To locate any error messages in the Progress File, it is suggested to edit it using one of the available edi-
tors, and to perform a search on the string “Error”.
By default, the Progress File will be located in the /tmp directory and it will be called tscprogress1e unless
the -l option is used. It contains the five basic sections described below.
The following is an example Progress File from the translation of the Part described above:
**************************************************
* Copyright Theorem Solutions Ltd. *
* ICEM - CATDATA converter ver 6.0.001 *
**************************************************

Fri Jan 11 09:37:51 2000

Input
Input ICEM file : iparta
CATIA file : back.model
CATIA title : back

gco id 0 point icem id 2 entity read


gco id 1 arc icem id 3 entity read
gco id 2 line icem id 4 entity read

Points - 1
Arcs - 1
Lines - 1

gco id 0 ICEM id 2 catia id 1 ident *PT1 ent type point


gco id 1 ICEM id 3 catia id 2 ident *CRV1 ent type arc

18
2.3.5 Error Messages

gco id 2 ICEM id 4 catia id 3 ident *LN1 ent type line


Part creation at 9.37.52 on 5.7.96

*******************************************
* Model successfully created in CATIA *
* back *
*******************************************

The following information are given successively:

1. Information identical to the screen messages (see section 2.3.2 “Screen Messages” on page 16) down
to and including the input file names.
2. Information on the reading of the CATIA file to internal format (referred to as gco).
3. List of entities found (again identical to the screen output).
4. Information on the writing of the internal format (gco) entities to the ICEM file.
5. Overall outcome of the translation and the name of the ICEM file (again identical to the screen output).
The second and fourth portion of the file require further explanation.
Each entity in a CATIA file is identified by an id number and name. Each entity will also exist on a CATIA
layer. When a CATIA entity is read into the translator, it is given a gco identification.
The second section of the Progress File shows the relationship between the CATIA entity and the gco entity
it is mapped to. If an error occurs during the reading of a particular entity, an error message will immediately
follow the line identifying the entity.
Each entity from CATIA is given a unique identification number by the translator when written to the ICEM
file. The fourth section relates gco identification numbers to ICEM file identification numbers (called
sequence numbers). Again, if any errors occur, they will follow the entry for the entity in question.
By combining the information, you can find out where each CATIA entity has gone in the ICEM file. This can
be very useful for analyzing any problem entities.

2.3.5 Error Messages

The following list contains commonly occurring error messages (in alphabetical order) with an explanation
of their meaning and suggested actions.

Disk write error - disk may be full

• Meaning:
An error was encountered when writing to the disk. The most likely reason for this is a full file sys-
tem. An ICEM file may have been created, but may be incomplete.

NOTE
The conversion process uses a number of temporary files which will have been deleted. For
this, the file system may not appear to be full even though the message is given.
• Action:
Check the file system and other possible reasons for disk write errors.
Rerun the conversion and monitor the file system.

19
2.3.5 Error Messages

Error in processing of data for ICEM write

• Meaning:
Before any CATIA faces are written to ICEM, they are checked to ensure that all edges are cor-
rectly defined. If any problems occur while running the process, a more specific message will be
displayed.
• Action:
The original data needs to be checked and, if necessary, redefined.

Error in writing base surface for gco Face id ffff gco_id ssss

• Meaning:
While writing a CATIA face entity to the ICEM file, a problem with its base surface has been found.
The gco id of the face (ffff) and the base surface (ssss) are given.
• Action:
The original face data is wrong. Either the base surface is defined incorrectly, or it does not corre-
spond to the position of the face edges. Check the original face and redefine accordingly.

Failure to allocate memory...

• Meaning:
The translator has very few built-in limitations on data size as memory is allocated when required
according to the specific data requirements. If this error occurs, the reason may be:

– insufficient swap space available for the operation, or


– a problem with the data requiring an excessive amount of memory to be allocated.
• Action:
Check the swap space available during program operation by using the command pstat -s.
Examine the entity being processed at the time.

Failure to open input file for identification

• Meaning:
While verifying the format of the input file, an attempt has been made to open it for read which has
failed. Since this occurs after the check to see if the file is a CATIA Part, it can be assumed that
the input file is not a CATIA Part.
• Action:
Check the input file.

Failure to read input file for identification

• Meaning:
Same as the above, except that the file was opened successfully, but could not be read.
• Action:

20
2.3.5 Error Messages

Check the input file.

Input file is not a CATIA model

• Meaning:
The file specified after the -i option is not a CATIA model.
• Action:
Check the input file.

License validation failure - see Progress File

• Meaning:
A valid license to run the translator could not be found.
• Action:
Check the Progress File for more information. If unable to resolve, please contact your software
supplier.

No data

• Meaning:
The translator has not found data in the model which satisfied the entity types currently sup-
ported.
• Action:
Investigate the CATIA model.

Output name is a directory

• Meaning:
The name given for the output ICEM ASCII Part file is a directory.
• Action:
Start the translator again giving the correct output file name.

Output file exists already

• Meaning:
The translator will not overwrite a file that already exists.
• Action:
Either delete or rename the existing file or enter a different output file name when starting the
translator.

Too many part access errors


Error in reading CATIA database

• Meaning:
An unusually large number of read errors have been encountered.

21
2.4 Aids to Successful Translation

• Action:
Look at the specific error message for the entities and take corrective action.

Unable to create the output file in the required directory

• Meaning:
An attempt to create the output file has failed.
• Action:
Check permissions on the required directory, and verify that the file system has not filled up.

2.4 Aids to Successful Translation

This section offers helpful hints, tips and prerequisites for a successful translation from CATIA to ICEM.
They are not presented in any particular order.

• Make sure that the CATIA file contains only the information and specification required for translating.
Unneeded information, e. g. construction geometry, increases the size and complexity of the ICEM file
obtained making it potentially more difficult to read.
• If many translations need to be performed, a script can be written starting the translator in a loop. This
can be left running over night if necessary.

22
3 Data Conversion from ICEM to CATIA

3 Data Conversion from ICEM to CATIA

3.1 Entity Mapping

The following table contains information on the entity mappings from ICEM to CATIA. The notes below the
table deliver more specific details where required.

NOTE
ICEM levels which are within the CATIA range (0 to 254) are mapped to the equivalent CATIA layers.

Table 3 Entity Mapping from ICEM to CATIA

ICEM CATIA Notes


(type number in brackets) (type number in brackets) (see below)

Point (1) Point (1)

Line (2) Line (2)

Circle (3) Arc (20)

Conic (4) Ellipse (21) 1


Parabola (22)
Hyperbola (23)

Composite Curve (6) 2

3D-Spline (9) Curve (3)

Machining Curve (10) Lines (2) 7


Curve (3)
Cst (14)

B-Spline Curve (31) Curve (3) 3,4,6


Lines (2)
NURBS Curve (46)

B-Spline Surface (26) Surface (5) 4,6


NURBS Surface (47)

Trimmed Surface (27) Face (6) 5


Skin(13) 8

Systems Entity Form 2 (50) Draft (93)

Systems Entity Form 11 (50) View(s) (30)

Linear Dimension (32) Dimension (91)

Radius Dimension (33) Dimension (91)

Diameter Dimension (35) Dimension (91)

Angular Dimension (36) Dimension (91)

Work Axis (43) Axis (8)

NOTE

1. The type of conic created in CATIA will depend on the type of conic from ICEM.

23
3.2 Translator Input

2. The composite curve will be exploded into its constituent curve types, and converted to the appropriate
CATIA curves.
3. If the B-Spline curve is degree 1 and not part of a trimmed surface, it is converted to a series of lines,
otherwise it is converted to an Nspline.
4. Rational, non-rational, extended and normal cases are supported.
5. CATIA will not cope with parametric (2D) edge curves which have discontinuities (sharp corners),
whereas ICEM products can. If any edges of this nature are found, they are split into several edges,
i. e., the number of edges for this trimmed surface will increase.
6. CATIA NURBS entities will only be created from ICEM entities if the nurbs command line option has
been used, the entities are truly rational and they are not part of a Trimmed Surface.
7. If none of the mc_to_bsp, mc_to_lin or mc_to_cst options are used then NO raw data is converted.
Only ONE of these options can be used in a translation.
8. By using a special naming convention, Trimmed Surfaces can be “grouped” together so that they are
written to CATIA as a SKIN entity. Please refer to the read_skins option.

3.2 Translator Input

3.2.1 Overview

The primary purpose of the ICEM-to-CATIA translator is to translate the contents of an ICEM ASCII Part file
(IPARTA file) producing a CATIA CATDATA file. To achieve this, the translator requires the name of the
ICEM file to work on, the name of the CATIA file to be created, the title of the CATIA model, the name of an
optional log file, and several input arguments.

3.2.2 Description of the Input

ICEM ASCII Part File Name


Name of the input ICEM file to be translated.

CATIA File Name


Name required for the CATIA file to be created.

CATIA Title
Name the CATIA model is to be given.
This argument must not contain more than 70 characters.

Options
There are a number of optional information that can be provided to the translator to affect the infor-
mation which is put into the ICEM data.

3.2.3 Starting the Translator

Provided that the icem_catdata executable is in the current path, the translator can be started by entering
the following either in a user-written script or directly in a UNIX window:

24
3.2.3 Starting the Translator

icem_catdata -i <ICEM_file_name>
-o <CATIA_file_name> -t <CATIA_title>
[-l <log_file_name>] [read2d] [refit3D]
[icem_tol <val>] [mvs] [v3] [surfopt <val>]
[mdim <val> [mm | inch]] [mc_to_bsp] [mc_to_cst]
[mc_to_lin] [startpart <start_name>] [draft] [nurbs]

[no_plane_create] [ent_messages] [no_read_attrs]

[read_skins <tol>] [create_edge_curves] [version <n.m>]

[trim_face_surfs]

Input Arguments:

icem_catdata
Translator executable.

<ICEM_file_name>
Mandatory. Name of the ICEM file to be translated. This argument must be preceded by -i.

<CATIA_file_name>
Mandatory. Name of the CATIA file to be created. This argument can be a relative or full pathname
and must be preceded by -o.

<CATIA_title>
Mandatory. Title the CATIA model shall have. This argument must be preceded by -t.

<log_file_name>
Optional. Name of the Progress File. This argument must be preceded by -l. It will override the
default Progress File name.

read2d
Optional. If used, parametric edge curves will be read from the ICEM file rather than be created from
the 3D edges of trimmed surfaces.
This argument should only be used when reading ICEM files containing parametric data of type B-
Spline curve.

icem_tol <val>
Optional. Tolerance to be used by the translator for checking whether 3D edge curves are within tol-
erance of their parametric curves (if read2d is used) or for creating the parametric edge curves from
the 3D edges (if read2d is not used).
If this argument is not used, the default tolerance is 0.0025 mm or 0.0001 inch.

25
3.2.3 Starting the Translator

mvs
Optional. If used, the output CATIA model will be in MVS/VM format rather than AIX.

v3
Optional. This argument should be used, if the output CATIA model is to be in CATIA Version 3 for-
mat. By default, it will be in Version 4 format.

surfopt <val>
Optional. Rational curves and surfaces cannot be created in CATIA. This means that any that are
encountered in the translation must be approximated by non-rational geometry which is done to
degree 9 (for curves) or 9 x 9 (for surfaces). This argument can be used to optimize the degree in this
approximation process, i. e. produce the lowest degree curve/surface to a user-defined tolerance
<val>. If used, this argument increases processing time.

mdim <val> [mm | inch]


Optional. Used to specify the CATIA Model Dimension value required for the output model.
This argument must be followed by the value of the required dimension. Optionally, a unit of measure
for this value (either mm or inch) can follow. If the unit of measure is not given, the units of the ICEM
file are assumed.
If the mdim argument is not used, the Model Dimension will be set to 10000.0 for mm parts, or
10000.0/25.4 for inch parts. Please note that if the mdim option is used with a start part, then it will
override the Model Dimension value in the start part. If the start part value is required then do not
use the mdim option.

mc_to_bsp
This specifies that Raw Data (Machining Curves) read from IPARTA should be converted to linear B-
Splines. Only one of mc_to_bsp, mc_to_cst and mc_to_lin can be used in a translation. If NONE
of these 3 options are used then NO Raw Data is converted.

mc_to_cst
This specifies that Raw Data (Machining Curves) read from IPARTA should be converted to CST
entities (Constraints). Only one of mc_to_cst, mc_to_bsp and mc_to_lin can be used in a transla-
tion. If NONE of these 3 options are used then NO Raw Data is converted.

mc_to_lin
This option specifies that Raw Data (Machining Curves) read from IPARTA should be converted to
Line entities. Only one of mc_to_bsp, mc_to_lin and mc_to_cst can be used in a translation. If
NONE of these 3 options are used then NO Raw Data is converted.

startpart <start_name>
Optional. Specifies that the CATIA model <start_name> is to be used as a “start part”, that is, the
environment for the model to be created should be obtained from it. Information such as code page,
colour tables, model dimension, shading color, entity display in shaded/hidden line/wireframe mode
etc. is taken from the start part. Please note that if the mdim option is used, then it will override the
Model Dimension value given in the start part.

26
3.2.3 Starting the Translator

draft
Optional. Specifies that drafting entities (layouts, text, and dimensions) are to be read and translated.
This is equivalent to using a Mask File with the following statement in it:
ON ALL DRA

A 2D option license is required.

nurbs
Optional. Enables the creation of CATIA NURBS Curves/Surfaces from ICEM B-Spline Curves/Sur-
faces which are truly rational and not part of a Trimmed Surface.

no_plane_create
Optional. By default, if the CATIA write encounters faces which are based on order 2x2 B-Spline Sur-
faces, it checks the surfaces to see if they are planar and if so will convert them to Planes to save
space. If such surfaces need to be kept as B-Spline Surfaces then the no_plane_create option
should be used.

ent_messages
By default, no entity conversion messages are output to the logfile, only errors and warnings are out-
put. The ent_messages option switches on entity conversion messages if required.
See also section 8.2 “Release Bulletin ICEM – CATIA Direct Interface 6.1.005” on page 52.

no_read_attrs
Iparta entities can have Attributes and Sub-attributes attached which give the entity's Molecule, Atom
and Part names. By default, these are read in for conversion to CATIA names of the form “Part/Mol-
ecule/Atom”. (Please note that names of edge curves in Trimmed Surfaces will not be translated
unless the create_edge_curves option is used). The no_read_attrs option disables this mecha-
nism so the names will be ignored.
See also section 8.2 “Release Bulletin ICEM – CATIA Direct Interface 6.1.005” on page 52.

read_skins <tol>
This option makes the Translator search for Trimmed Surfaces which are related by a common Mole-
cule name beginning “SKIN” followed by a skin number e. g. “SKIN1”. All Trimmed Surfaces sharing
the same skin number will be written to CATIA as a SKIN entity. There may be more than one skin
defined in this way. The Trimmed Surfaces for a particular skin must have at least one edge common
with another Trimmed Surface in the same skin. The Atom name must convert to an integer and the
combination of the Molecule and Atom names must give a unique identity to each Trimmed Surface.
There is a sewing process required by this option which uses a default tolerance of 0.09/units (where
units = 1.0 for a mm part or 25.4 for an inch part) assuming a Model Dimension of 10m (or equivalent
if inches), this is inside the tolerance of 0.1 mm required by CATIA. If a different tolerance is required
then this can be given with the read_skins option.
See also section 8.2 “Release Bulletin ICEM – CATIA Direct Interface 6.1.005” on page 52.

27
3.3 Translator Output

create_edge_curves
By default, 3D edge curves are not written to CATIA for Faces as CATIA does not require them. By
using this option the 3D edges will be translated to CATIA.

version n.m
By default, a Version of 4.1.5 will be written the the created CATIA model. This can be control-
led by the version option. For example, if “version 2.1” was specified then a Version of 4.2.1
would be written to the CATIA model.

trim_face_surfs
Faces can be based on surfaces that are very much greater than the Face requires. By
default, these surfaces are left unchanged in the translation but can cause tolerancing and
extent problems in the receiving system. By using the trim_face_surfs option only the por-
tion of the surface required by the Face will be translated.

3.3 Translator Output

3.3.1 Overview

The translator should not only create a CATIA file, but give the user enough information about the transla-
tion. With that information you may identify the translation, and check whether it has been successful or not,
and if not, why.
To achieve this, the translator also outputs screen informatory messages, a Progress File and error mes-
sages.

3.3.2 Screen Messages

A typical output from the translator is as follows:


**************************************************
* Copyright Theorem Solutions Ltd. *
* ICEM - CATDATA converter ver 6.0.001 *
**************************************************

Fri Jan 11 10:16:33 2000

Input
ICEM file : iparta
CATIA file : test.model
CATIA title : test_part

Points - 1
Arcs - 1
Lines - 1

*******************************************

28
3.3.2 Screen Messages

* Model successfully created in CATIA *


* test_part *
*******************************************

This example shows a successful translation of a simple ICEM file.


The following information are given in the successive portions of the output file:

1. Details about the translator that has been run, the direction in which the translation was performed (in
the example ICEM –> CATDATA), and the translator version (all enclosed in asterisks).
2. Date and time of the translation.
3. Input details showing the name of the input ICEM file and the required name of the output CATIA file.
4. List of entities found in the ICEM file which are supported by the translator and number of entity types
that has been found.
5. Message giving the overall outcome of the translation and confirmation of the name of the CATIA file
created (enclosed in asterisks).
The translation is performed in essentially two stages:

1. Reading the ICEM file into an internal format.


2. Writing the internal format to the CATIA file.
Generally, if the translator has found a problem in the first stage, an informatory message will be output
immediately after the input details prior to the entity list.
The following example shows a problem while reading the ICEM file.

NOTE
In this particular case, the problem has not been serious enough to prevent translation.
**************************************************
* Copyright Theorem Solutions Ltd. *
* ICEM - CATDATA converter ver 6.0.001 *
**************************************************

Fri Jan 11 10:20:33 2000

Input
ICEM file : iparta
CATIA file name : test.model
CATIA title : test_part

Read errors found - see progress file

Points - 1
Arcs - 1
Lines - 1

*******************************************

29
3.3.2 Screen Messages

* Model successfully created in CATIA *


* test_part *
*******************************************

If a problem occurs during the second stage, an informatory message will be output immediately after the
entity list.
The following example shows a CATIA file error.

NOTE
Because the CATIA file could not be opened correctly, the last section of output does not appear.
**************************************************
* Copyright Theorem Solutions Ltd. *
* ICEM - CATDATA converter ver 5.0.000 *
**************************************************

Tue Nov 23 10:27:18 1999

Input
ICEM file : iparta
CATIA file name : test.model
CATIA title : test_part

Arcs - 2
Lines - 2
Srevs - 2
Planes - 1
Faces - 3
Edges - 4
Vertices - 3
Bsolids - 1

Error opening temporary files for CATIA write

The following messages may occur:

• stage 1 message:
Read errors found - see progress file

• stage 2 message:
Write errors found - see progress file

If one of these messages are displayed, the translation has not been completely successful. To find out
more details, you have to check the Progress File (see section 3.3.4 “The Progress File” on page 31).

30
3.3.3 The CATIA File

3.3.3 The CATIA File

The translated contents of the input ICEM file becomes a CATIA file. The CATIA file will be created with the
name and under the directory specified by the user. The file can be communicated in various ways. It can
be copied to tape or floppy disk using, for example, the UNIX tar command, or it can be transmitted to
another UNIX system using, for example, ftp (BINARY transfer). The file can be read by the CATDATA util-
ity.

3.3.4 The Progress File

The purpose of the Progress File is to detail the progress of the translator run. If any problems in process-
ing the data occur, a warning message is displayed on the screen. An error message will be provided in the
Progress File showing the entity which caused the problem and giving some more information.
The file is created automatically by the translator. For details please refer to section 4.2.2 “Environment
Setup” on page 37.
To locate any error messages in the Progress File, it is suggested to edit it using one of the available edi-
tors, and to perform a search on the string “Error”.
By default, the Progress File will be located in the /tmp directory and it will be called tscprogresse0 unless
the -l option is used. It contains the five basic sections described below.
The following is an example Progress File from the translation of the ICEM file described above:
**************************************************
* Copyright Theorem Solutions Ltd. *
* ICEM - CATDATA converter ver 6.0.001 *
**************************************************

Fri Jan 11 09:37:51 2000

Input
Input ICEM file : iparta
CATIA file : back.model
CATIA title : back

gco id 0 point icem id 2 entity read


gco id 1 arc icem id 3 entity read
gco id 2 line icem id 4 entity read

Points - 1
Arcs - 1
Lines - 1

gco id 0 ICEM id 2 catia id 1 ident *PT1 ent type point


gco id 1 ICEM id 3 catia id 2 ident *CRV1 ent type arc
gco id 2 ICEM id 4 catia id 3 ident *LN1 ent type line
Part creation at 9.37.52 on 5.7.96

*******************************************

31
3.3.5 Error Messages

* Model successfully created in CATIA *


* back *
*******************************************

The following information is given successively:

1. Information identical to the screen messages (see section 3.3.2 “Screen Messages” on page 28) down
to and including the input file names.
2. Information on the reading of the ICEM file to internal format (referred to as gco).
3. List of entities found (again identical to the screen output).
4. Information on the writing of the internal format (gco) entities to the CATIA Part.
5. Overall outcome of the translation and the name of the CATIA Part (again identical to the screen output).
The second and fourth portion of the file require further explanation.
Each entity in the ICEM file is identified with a sequence id number. In the above Progress File, for exam-
ple, the Point entity has the ICEM id number 2. In the second section of the Progress File, the ICEM entity
sequence numbers are connected with the identification numbers of the gco entities they have been read
into.
The fourth section of the Progress File connects the gco identification numbers with the CATIA identification
numbers of the equivalent entities when written to the CATIA model.
By combining the information, a complete trace of where the ICEM entities have ended up in the CATIA file
is obtained. If the translator encounters a problem with a particular entity, a suitable error message will be
put into the Progress File immediately after the entry for that entity.

3.3.5 Error Messages

The following list contains commonly occurring error messages (in alphabetical order) with an explanation
of their meaning and suggested actions.

Error in initial read of icem file <filename>

• Meaning:
Prior to the ICEM file being converted, certain preliminary activities have to be completed so that
it can be read in correctly. This message implies that one of these activities could not be per-
formed. A more specific message will appear immediately before this message.
• Action:
The input ICEM file should be checked in the area indicated in the specific message.

Error - whilst checking 3D/2D edges.


Trimmed Surface tttt not read

• Meaning:
A problem has occurred when comparing the 3D edge curves of a trimmed surface with its 2D
edge curves (the read2d option has been used). A more specific message will precede this one.
The sequence number (tttt) of the trimmed surface is given in the message.
• Action:

32
3.3.5 Error Messages

The input ICEM file possibly contains edge data which is not consistent. This should be checked.
Try the translation without the read2d option.

Error - whilst checking for edges to be split.


Trimmed Surface tttt not read

• Meaning:
An error has occurred when the edges of a trimmed surface are being split (due to discontinuities
in the 2D edges). This can imply that the edges are incorrectly defined on the input ICEM file. The
sequence number (tttt) of the trimmed surface is given in the message.
• Action:
The trimmed surface definition on the ICEM file needs to be checked. If the read2d option has
been used, try the translation without it, or if it has not been used, try the translation with it.

Error whilst reading Type 50, Form 11 entity...


Reading of Drafting entities cancelled.

• Meaning:
Either the Type 50, Form 11 entity does not exist in the input ICEM file, or it is invalid in some way.
Depending on the problem, a more specific message will precede this one.
• Action:
Check the input ICEM file as it may be corrupt. Re-create if necessary.

Failure to allocate memory...

• Meaning:
The translator has very few built-in limitations on data size as memory is allocated when required
according to the specific data requirements. If this error occurs, the reason may be:

– insufficient swap space available for the operation, or


– a problem with the data requiring an excessive amount of memory to be allocated.
• Action:
Check the swap space available during program operation by using the command pstat -s.
Examine the entity being processed at the time.

Input file is not an ICEM ASCII Part file

• Meaning:
The file specified after the -i option is not an ICEM ASCII Part file.
• Action:
Check the input file.

Input file_name is a directory

• Meaning:
The name given for the input ICEM ASCII Part file is a directory.

33
3.3.5 Error Messages

• Action:
Check the input file.

License validation failure - see Progress File

• Meaning:
A valid license could not be found to allow the running of the translator.
• Action:
Check the Progress File which will contain more specific information. If unable to resolve, please
contact the supplier of your software.

No convertible entities found

• Meaning:
The input ICEM file has been searched, but no entities of the supported types could be found.
• Action:
Check the input ICEM file. Re-create if necessary.

Output file exists already

• Meaning:
The translator will not overwrite a file that exists already. The CATIA model name specified
already exists.
• Action:
Either delete or rename the existing file or enter a different output file name when starting the
translator.

Output name is a directory

• Meaning:
The name given for the output CATIA model is a directory not a file name.
• Action:
Restart the translator with the required CATIA model name.

Unable to create the output file in the required directory

• Meaning:
An attempt to create the output file in the specified directory has failed.
• Action:
Check permissions on the required directory, and verify that the file system has not filled up.

34
3.4 Aids to Successful Translation

3.4 Aids to Successful Translation

This section offers helpful hints, tips and prerequisites for a successful translation from ICEM to CATIA.
They are not presented in any particular order.

• Make sure that the input ICEM file contains only the data required for translation. This decreases errors
occurring, cuts down translation time and creates a smaller CATIA model.
• If many translations need to be performed, a script can be written starting the translator in a loop. This
can be left running over night, if necessary.

35
4 System Requirements

4 System Requirements

4.1 Manual Installation of the Translator Software

The software consists of the following modules:

Table 4 Software Modules

Module Description

READ_ME A readable file containing the installation instructions.

apl/catfil_icem CATIA-to-ICEM translator.

apl/icem_catdata ICEM-to-CATIA translator.

licence The license file.

licence_example If the above license file cannot be supplied, an example license


will be provided instead.

licdmn The license checking utility (Sun and SGI only).

flexlm/lmgrd FLEXlm license management daemon.

flexlm/lmutil FLEXlm license management utilities.

flexlm/lmsetup FLEXlm license management utilities script.

flexlm/license.dat FLEXlm licenses for CADverter software.

flexlm/theorem FLEXlm daemon for CADverter software.

flexlm/TS_updaemon Script to run lmgrd

flexlm/TS_downdaemon Script to stop the license daemon.

flexlm/TS_statdaemon Script to check the status of the daemon.

The above files should be copied to the system in /usr/theorem (Theorem Solutions customers) or in /
usr/applications/lic (ICEM Technologies customers).

If there is insufficient disk space available under the /usr partition, it is possible to use space under another
partition with a link to the appropriate directory.

Example:
If there is space available under the /usr2 partition, the software can be installed in the directory /usr2/
theorem (Theorem Solutions customers) or /usr2/applications/lic (ICEM Technologies customers)
and the following link created:
ln -s /usr2/theorem /usr/theorem or
ln -s /usr2/applications/lic /usr/applications/lic

NOTE:
The /usr/theorem directory or the /usr/applications/lic directory should not exist prior to this link
being created.

36
4.2 License Management

The above software will usually be delivered on 1/4" tape cartridge or a DAT tape and will be in tar format. It
should be unloaded as follows:
cd /usr/theorem or
cd /usr/applications/lic
tar xvf <device>

where <device> is the system name for the tape drive being used (for example /dev/rst0).
The software may occasionally be delivered on 3.5" diskette in bar format (compressed). In this case, it
should be unloaded using the following command:
bar -xvfZ /dev/rfd0

4.2 License Management

Each machine needs to have its own license for running a Theorem translator. This license is generated for
a given machine based on that machines unique cpu identifier. This identifier can easily be obtained by
using one of the following commands:

• for the SUN operating system:


hostid

• for the HP operating system:


uname -i

• for the SGI operating system:


sysinfo -s

• for RS6000 machines:


uname -m

This version of the CADverter is licensed by the FLEXlm license mechanism.

4.2.1 FLEXlm Licensing

The FLEXlm license mechanism provides a server based floating license system, i. e. any workstation able
to access the server can be configured to use the CADverter.
For more information on the FLEXlm license mechanism see chapter 5 “FLEXlm License Mechanism” on
page 39.

NOTE:
If more than one Theorem translator is to be run on the same machine, all required licenses can go in the
same license file. For this, several licenses can be placed in the license file. The /usr/theorem/licdmn
utility will check through each entry looking for the appropriate license.

4.2.2 Environment Setup

TSC_PROG_FILE
If the environment variable TSC_PROG_FILE is set, the translators will create the tscprogress file.

37
4.2.2 Environment Setup

The variable can be used if the tscprogress file needs either to be called something different from
the default, or placed in another directory. It can be set in the user’s .cshrc file by entering one line
of the following form:
setenv TSC_PROG_FILE /usr2/mine/myprog

The tscprogress file will then be placed at /usr2/mine and get the name myprog.
If the environment variable is not set, the Progress File will be placed in the /tmp directory.
The use of the -l option when starting the translator overrides all the above so that the user can pro-
duce a different Progress File for each run of the translator.

38
5 FLEXlm License Mechanism

5 FLEXlm License Mechanism

The FLEXlm license mechanism is provided by Macrovision Corp. and is widely used within the CAD/CAM
software industry.
For detailed information on on the installation and configuration of FLEXlm, please refer to the manual
“FLEXlm End Users Guide” available for download under the web address http://www.macrovision.com.

5.1 Components

In the following, the four main components of the mechanism are described.

License Manager Daemon


The License Manager Daemon (lmgrd) controls access to the various licenses which may be under
the control of FLEXlm. If the user has a number of packages which utilize FLEXlm, they will all use
the same lmgrd daemon.

Theorem Daemon
The Theorem daemon (theorem) controls access to the CADverter software. This keeps control of
what options are available and checks out licenses as requested.
If a user has multiple licenses, a number of users may access the software on different machines up
to the maximum number of licenses available. When all licenses are checked out, any further request
for a license will be denied until a user with a license terminates an operation and returns the license
to the pool.

License File
The license file is an ASCII text file storing the license information. It contains information about the
server node and the daemon in use for that license mechanism (theorem).
Each CADverter program which is licensed will have a FEATURE line in the file defining the server
hostid, the number of licenses available, the expiry date for the license and the feature being
licensed.
The default location and license file name for Theorem implementation is /usr/theorem/flexlm/
license.dat (for Theorem Solutions customers). ICEM Technologies customers will find the license
file at /usr/applications/lic/license.dat by default.
However, the license file name can be configured by the user in different ways. The user can define
any name for the license file and use the environment variable LM_LICENSE_FILE to pass this
name to the FLEXlm package.

• for a C shell:
setenv LM_LICENSE_FILE /usr/defined/<file name>

• for a Bourne shell:


LM_LICENSE_FILE = /usr/defined/<file name>
export LM_LICENSE_FILE

39
5.2 Utilities

The License mechanism searches for a license file in the following order of preference:

1. LM_LICENSE_FILE (as defined by the user)


2. /usr/theorem/flexlm/license.dat or
/usr/applications/lic/license.dat

3. /usr/local/flexlm/licenses/license.dat

CADverter Software
When the CADverter software is activated, it requests the appropriate license from the lmgrd dae-
mon. If a license is not granted, an error message will be displayed.
Events which cause a failure to access a license may be:

Table 5 Causes for Flexlm Licensing Error Messages

Circumstance Remedy

The FLEXlm daemon is not running. Restart the daemon.

The Theorem daemon is not running. Restart the daemon.

The license file is not found. Check the file definition being used.

The requested feature is not licensed. Contact Theorem Solutions or ICEM Technologies.

The maximum number of licenses available is in use. Wait for release of a license.

The license expiry date has passed. Contact Theorem Solutions or ICEM Technologies.

5.2 Utilities

In addition to the main components, a set of utilities is available to manage the mechanism:

• shut down mechanism


• status enquiry
• license text check
• hostid identifier
• refresh capability

5.3 Installation

The FLEXlm software runs on and controls licenses for a variety of workstation types within a network. That
means, for example, that a SUN server will be able to provide licenses for RS6000, SGI, HP, etc. worksta-
tions.
However, the FLEXlm software itself is machine dependent. Thus, the appropriate executables should be
installed for the server. It is recommended to use a stable machine as server. If the license server is
rebooted frequently, this will cause problems to access the licenses.

40
5.3 Installation

Installation Procedure
You have to copy the license files to a selected directory.
If existing software also uses FLEXlm, the appropriate files may be used with the CADverter software too.
Otherwise, we suggest to use the directory /usr/theorem/flexlm (for Theorem Solutions customers), or /
usr/ applications/lic (for ICEM Technologies customers).

NOTE:
The name of the license file may be altered, if desired (see information on the license file in section 5.1
“Components” on page 39).
The license management files are:

• TS_updaemon

• TS_downdaemon

• TS_statdaemon

• lmgrd

• lmutil

• lmsetup

• license.dat

lmutil combines the various utility options, and a linked name is created for each option. The executable
itself determines the user requirement from the command line name used, e. g. lmstat.

1. Run the script lmsetup to create the utility option names.


2. Run the lmhostid command to define the required hostid name for the license control server.
Inform Theorem Solutions or ICEM Technologies of the result, and request the generation of the
licenses purchased. These should be entered to the file license.dat.
3. Run the lmcksum command to ensure the license file text is correct.
4. Run the lmgrd program in the background to start up the license mechanism.
Alternatively, if the system is an existing FLEXlm installation, use the lmreread command to update the
overall mechanism with the information of the new file:
lmgrd -c <license file name> -l <logfile name> [-p] &

or
lmreread -c <license file name>

Options:
licence file name
Name selected for the FLEXlm licenses.
logfile name
Name for a log file for license access.
-p
Option which restricts usage of lmdown and lmreread to the FLEXlm administrator (by default root).

41
5.4 License Administration

If a unix group named lmadmin has been defined, only members of that group will be allowed access to
these commands. If root is not a member of the group, root will not have permission to use the com-
mands.
5. If desired, the boot up files may be modified to start up the lmgrd program at boot up time.
Depending on the system, add a line to the file /etc/rc.boot or /etc/rc.local or the file appropriate
for your system.
This line should look as the following:
nohup <lmgrd file> -c <licence file name>
> <logfile name> 2>&1 &

Options:
lmgrd file
Full path name for the lmgrd executable.
licence file name
License file name selected for the Theorem licenses.
logfile name
Name for a log file for license access.

5.4 License Administration

For the FLEXlm license mechanism, a number of utilities are available. These are alternate names for
lmutil. The operation of the utility executable depends on the command line name with which it is invoked.

lmhostid
Reports the system identifier for the system on which it is run.
It will only run on the workstation type similar to that for which lmutil is loaded. That means, if the
server is an SGI machine, this utility cannot be run on a SUN workstation.
The following commands give the appropriate information.

• for SUN:
hostid

• for SGI:
echo 'sysinfo -s' 16o p | dc

• for HP:
echo 'uname -i' 16o p | dc

• for RS6000:
echo 'uname -m' 16o p | dc

lmstat
Provides current status information.
lmstat [a] [-A] [-c <license file name>] [-S theorem]

42
5.4 License Administration

Options:
-a
All information will be displayed.
-A
All active licenses will be listed.
-c <license file name>
Only the license file specified will be used. If the lmgrd daemon is serving other software than the
Theorem software, this will restrict the information to that one which is relevant to CADverter.
-S
Report only for the Theorem daemon. If the lmgrd daemon is serving software other than the Theo-
rem software this will restrict the information to that one which is relevant to CADverter.

lmreread
Causes the lmgrd daemon to re-read the license information.
It is to be used when a license is changed, or a new daemon is to be added to an existing installation.
lmreread [-c <license file name>]

Option:
-c <license file name>
The information for the file name defined will be re-read.

lmdown
Shuts down the license mechanism.
lmgrd should be used to restart the system.

lmdown [-c <license file name>]

Option:
-c <license file name>
The information for the file name defined will be processed.

lmcksum
Performs a checksum for the data entered in the license file.
lmcksum will ignore fields which are not used for the encryption computation. The server node, port
number and daemon pathname are configurable by the system administrator and are not used.
lmcksum [-c <license file name>]

Option:
-c <license file name>
The information for the file name defined will be processed. If this is not used, the license.dat in
the current directory will be processed.
lmremove

Removes a single user's license for a specified feature.

43
5.5 The License File

This may be used if a workstation crashes causing a license to be locked out and unavailable for
another user. This will return the license to the pool of available licenses.
This should not be used when a user is using the CADverter software as the system maintains a
“heartbeat” with a licensed application, and the removal of the license will cause the CADverter to
fail.
There are additional scripts performing some license daemon tasks:

TS_updaemon
Boot script to start the license system.

TS_downdaemon
Script to shutdown license daemon.

TS_statdaemon
Script to check the status of the license daemon.

5.5 The License File

The license file looks as follows:


SERVER tscsp05 807a6dfc 7601
DAEMON theorem /usr/theorem/flexlm
FEATURE Catia_UG theorem 1.300 1-jul-97 2 ABFE22418E16FEA79E191 ck = 84
FEATURE UG_Catia theorem 1.300 31-dec-97 2 9B2E93D1F74D46EE6B06 ck = 24
FEATURE CADDS_UG theorem 2.100 31-dec-97 2 DB5E2424A8AA9A674B66 ck = 242
FEATURE UG_Cadds theorem 2.100 31-dec-97 2 0B3E5701DF1232C78EF6 ck = 252
FEATURE STEP_AP203_UG theorem 1.00 31-dec-97 2 0B4E33A14B44F02842E1 ck=19
FEATURE UG_STEP_AP203 theorem 1.000 31-dec-97 2 4B9E60E1274BA1246A77 ck=19
FEATURE GCO_Parasolid theorem 1.100 31-dec-97 2 7B2EF0911352B8C4DB9D ck=7
FEATURE ICEM_Cadds theorem 1.100 31-dec-97 2 1B4E74315CAB720C20F9 ck=243
FEATURE CADDS_ICEM theorem 1.1000 31-dec-97 2 0C82E14E3B25878757A4 ck=229
FEATURE ICEM_Catia theorem 1.100 31-dec-97 2 1C72C41E297AFEE5593B ck=41
FEATURE Catia_ICEM theorem 1.100 31-dec-97 2 8C24016E231AF33C8D35 ck=32

For ICEM Technologies customers, the second line will be similar to:
DAEMON theorem /usr/applications/lic

NOTE:
You can edit the hostname on the server line (1st arg), the port address on the server line (3rd arg), the
path to the daemon on the daemon line (2nd arg), or any right-half of a string (b) of the form a=b where (a)
is all lowercase (for example, xxx in vendor_info=“xxx” can be changed) . Any other changes will invalidate
this license.
The following information are given in the different lines of the license file:

SERVER line
Defines the node name and unique id (hostid) of the server, and the TCP port number to use.

44
5.5 The License File

DAEMON line
Defines the CADverter daemon name theorem and the full path to the executable.
The latter may be changed according to the installation, however, the daemon name should not be
changed.

FEATURE lines
Define the product licensed, the daemon which is to be used, the version number of the product
licensed, the expiry date of the license, the number of floating licenses available, the license key, and
the check- sum for that entry.
Nothing in this entry should be changed.

UPGRADE line
INCREMENT line
A new license can be appended to the license.dat file in an UPGRADE or INCREMENT line.
If a new license is provided as a FEATURE line, the original FEATURE line needs to be replaced with
the new one.
Where new licenses are supplied to allow new versions of the software to be used, the new license will
allow use of earlier versions.
For example, if a new license is provided for version 2.000 of ICEM-to- CATIA, version 1.100 or 1.200 will
be allowed to run with the new license. However, version 2.100 will not be allowed to run until a new license
is provided for that version.

45
6 Extended Entity Mapping Tables

6 Extended Entity Mapping Tables

6.1 Transfer from CATIA to ICEM ASCII Part

CATIA ICEM ASCII Part


(type number in brackets) (type number in brackets)

Point (1) Point (1)

Line (2) Line (2)

Curve (3) B-Spline Curve (31)


B-Spline Curve (3)
NURBS Curve (46)

Plane (4) Plane (18)

Surface (5) B-Spline Surface (26)


B-Spline Surface (5)
NURBS Surface (47)

Face (6) Trimmed Surface (27)

Edge (12) Surface Curve (17) and


2D-Spline (within the context of a trimmed surface) (5)

Solide (only Brep form; CSG form and facetted form Trimmed Surfaces (for each face of the solid) (27)
are not supported) (17)

Volume (17) Trimmed Surface (for each face of the solid) (27)

Circle (20) Circle/Arc/Fillet (3)

Ellipse (21) Conic, Form 2 (4)

Parabola (22) Conic, Form 3 (4)

Hyperbola (23) Conic, Form 4 (4)

Composite Curve (24) (constituent parts)

Draft (93) Systems Entity Form 2 (50)

View(s) (30) Systems Entity Form 11 (50)

Dimension (91) Linear Dimension (32)


Radius Dimension (33)
Diameter Dimension (35)
Angular Dimension (36)

Cst (14) Machining Curve (10)

Axis (8) Work Axis (43)

46
6.2 Transfer from CATIA to ICEM Surf DB

6.2 Transfer from CATIA to ICEM Surf DB

CATIA ICEM Surf DB


(type number in brackets)

Point (1) Point

Line (2) Curve Segment

Curve (3) Curve Segment


B-Spline Curve (3)
NURBS Curve (46)

Plane (4) Patch

Surface (5) Patch


B-Spline Surface (5)
NURBS Surface (47)

Face (6) Face

Solide (only Brep form; CSG form and facetted form Face (for each face of the solid)
are not supported) (17)

Volume (17) Face (for each face of the solid)

Circle (20) Curve Segment/Circle/Arc

Composite Curve (24) Curve Segment (constituent parts)

Cst (14) Raw Data Segment

Axis (8) Work Plane

6.3 Transfer from ICEM ASCII Part to CATIA

ICEM ASCII Part CATIA


(type number in brackets) (type number in brackets)

Point (1) Point (1)

Line (2) Line (2)

Arc/Circle/Fillet (3) Circle (20)

Conic, Form 2 (4) Ellipse (21)


Conic, Form 3 (4) Parabola (22)
Conic, Form 4 (4) Hyperbola (23)

Composite Curve (6) (constituent parts)

Point Set (8) Point(s) (1)

3D-Spline (9) Curve (3)

Machining Curve (10) Lines (2)


Curve (3)
CST (14)

47
6.4 Transfer from ICEM Surf DB to CATIA

ICEM ASCII Part CATIA


(type number in brackets) (type number in brackets)

Surface Curve (17) Edge (used to trim a CATIA face) (12)

Plane (18) Plane (4)

Surface Curve Surface (25) (implicitly available in the face topology and face sur-
face relationship)

B-Spline Surface (26) Surface (5)


NURBS Surface (47)

Trimmed Surface (27) Face (6)

B-Spline Curve (31) Curve (3)


NURBS Curve (46)

Loop (55) (implicitly available in topology of the associated face)

Systems Entity Form 2 (50) Draft (93)

Systems Entity Form 11 (50) View(s) (30)

Linear Dimension (32) Dimension (91)

Radius Dimension (33) Dimension (91)

Diameter Dimension (35) Dimension (91)

Angular Dimension (36) Dimension (91)

Work Axis (43) Axis (8)

6.4 Transfer from ICEM Surf DB to CATIA

ICEM Surf DB CATIA


(type number in brackets)

Point Point (1)

Curve Segment/Arc/Circle Circle (20)

Raw Data Segment Lines (2)


Curve (3)
Cst (14)

Patch Surface (5)


NURBS Surface (47)
Plane (4)

Face Face (6)


Plane (4)

Curve Segment Curve (3)


NURBS Curve (46)

Work Plane Axis (8)

48
7 Translator Execution with Shell Scripts

7 Translator Execution with Shell Scripts

If you have purchased the CATIA Direct Interface from ICEM Technologies or one of its vendors, you can
execute the translator with the shell scripts:
CatiaToIparta.sh and IpartaToCatia.sh

Default Settings
These shell scripts use the following default settings:

• for Progress File names


/tmp/catia_to_iparta.lst

or
/tmp/iparta_to_catia.lst

• for Part names


catia_to_iparta

or
iparta_to_catia

You may use the command options and parameters as described in this manual. This will override
the default settings.

Additional Command Options


There are two additional command options for the shell scripts:
-help
Prints a help text (explanation of the command options and parameters) to the screen.
-s
Prevents the translator from printing any screen messages.
Please set the environment variable DI_CATIA_ACN. It must point to the installation directory of the binaries
icem_catdata and catfil_icem.

Table 6 Error Codes for Batch Processing

Code Message Description

0 TIO_NO_ERROR; No error.

10 TIO_FERR_PAR_ERROR; A parameter error occured.

11 TIO_FERR_INVALID_KEY; An invalid keyword was specified.

20 TIO_FERR_INP_FILE_NOT_EX; The input file does not exist.

21 TIO_FERR_INP_FILE_NO_PERM; The input file exists without read permissions.

22 TIO_FERR_INP_DIR_NO_EX; The input directory does not exist.

23 TIO_FERR_INP_DIR_NO_PERM; The input directory exists without read permissions.

49
7 Translator Execution with Shell Scripts

Code Message Description

24 TIO_FERR_INP_PAR_NO_FILE; The input directory does not exist.

25 TIO_FERR_INP_PAR_NO_DIR; The input directory exists without read permissions.

30 TIO_FERR_INP_OUT_IDENT; Input file and output file are identical.

31 TIO_FERR_INP_LST_IDENT; Input file and list file are identical.

32 TIO_FERR_OUT_LST_IDENT; Output file and list file are identical.

33 TIO_FERR_INP_DIR_OUT_FILE_IDENT; Input file and output file are identical.

34 TIO_FERR_INP_DIR_LST_FILE_IDENT; Input file and list file are identical.

35 TIO_FERR_OUT_DIR_LST_FILE_IDENT; Output file and list file identical.

40 TIO_FERR_INP_NOT_SPEC; Input file not specified.

41 TIO_FERR_INP_DIR_NOT_SPEC; Input directory not specified.

42 TIO_FERR_OUT_NOT_SPEC; Output file not specified.

43 TIO_FERR_OUT_DIR_NOT_SPEC; Output file not specified.

44 TIO_FERR_START_PART_NOT_EX; Start Part does not exist.

50 TIO_FERR_OLD_OUTPUT_NOT_REM; Unable to remove the old output file

51 TIO_FERR_CANT_CREATE_OUTPUT; Unable to create the output file

52 TIO_FERR_OLD_PROT_NOT_REM; Unable to remove the old list file

53 TIO_FERR_CANT_CREATE_LIST; Unable to create the list file

54 TIO_FERR_OLD_OUT_DIR_NOT_REM; Unable to remove the old output directory

55 TIO_FERR_CANT_CREATE_OUT_DIR; Unable to create the output directory

56 TIO_FERR_CANT_CREATE_TMP_FILE; Unable to create temporary files

8000 TIO_FERR_NO_LICENSE; Translator not licensed.

9000 TIO_FERR_INVALID_ARGS; Invalid input arguments used.

9001 TIO_FERR_INVALID_INP_FILE_FORM; Input file_name is not in required format.

9002 TIO_FERR_INP_FILE_IS_DIR; Input file_name is a directory, not a file.

9003 TIO_FERR_CANT_OPEN_INP_FILE; Failure to open input file for identification.

9004 TIO_FERR_CANT_READ_INP_FILE; Failure to read input file identification.

9100 TIO_FERR_CANT_CREATE_OUTPUT; Invalid output file name given.

9101 TIO_FERR_INVALID_FILE_NAME; Output name is not a directory.

9102 TIO_FERR_OUT_NOT_DIR; Output name is a directory, not a file.

9103 TIO_FERR_OUT_FILE_IS_DIR; Output name is a directory, not a file.

9104 TIO_FERR_OUT_FILE_EXISTS; Output name is a directory, not a file.

default TIO_FERR_UNDOC; Not documented error.

50
7 Translator Execution with Shell Scripts

Table 7 Error Codes for Catia V5

Code Message Description

9201 TIO_FERR_CAT5_WRITE_ERRORS; Catia V5: Write Errors

9203 TIO_FERR_CAT5_ARGUMENT_ERROR; Catia V5: Command line argument error

9204 TIO_FERR_CAT5_READ_ERROR; Catia V5: Read error

9205 TIO_FERR_CAT5_NO_ENTITIES; Catia V5: No entities found

9206 TIO_FERR_CAT5_NO_CATINIT; Catia V5: Document does not implement CATInit

9207 TIO_FERR_CAT5_CANT_OPEN_DOC; Catia V5: Can not open the CATIA5 document

9208 TIO_FERR_CAT5_CANT_CREATE_SES; Catia V5: Can not create the CATIA5 session.

9209 TIO_FERR_CAT5_SES_EXISTS; Catia V5: Session of same name already exists

9210 TIO_FERR_CAT5_INCOMPATIBLE; Catia V5: Incompatible run and build versions

51
8 Release Bulletins

8 Release Bulletins

8.1 Release Bulletin ICEM – CATIA Direct Interface 6.1

The following enhancements have been implemented in the ICEM – CATIA Direct Interface 6.1:

• Faces can contain more then 100 loops now.


• The icem_catdata options mc_to_bsp/cst/lin now all work independently.
• The icem_catdata option mc_to_lin has been fixed so that it does create Lines instead of linear b-
splines.
• A bug has been fixed in icem_catdata which caused it to crash on NT when converting Machining
Curves.
• A bug has been fixed in the ICEM write code to prevent a crash under certain conditions after the edge-
splitting process.
• The CATIA format EXPORT is available now.
• The CATIA write code has been enhanced so that surfaces which are basically revolved in nature are
written to CATIA in a more space efficient manner.
• The translation of Workspaces is introduced.

8.2 Release Bulletin ICEM – CATIA Direct Interface 6.1.005

The following enhancements have been implemented in the ICEM – CATIA Direct Interface 6.1.005:

no_read_attrs
ICEM Attributes are now read from IPARTA and passed through to the CATIA model in
icem_catdata. This can be switched off using the no_read_attrs option in the translator start script
IpartaToCatia.

In CATIA the Attribute appears in the entity name in the form “Part/Molecule/Atom” (for information
about the hierarchical structure of geometry data types in ICEM Surf see section “ICEM Surf Data
Base” in the ICEM Surf reference manual). Example: In Catia V4, the ICEM Surf entity “LV005/
Fender/15” will have the name “LV005/Fender/15”. The layer assignment (via part name in ICEM
Surf) will be carried out as usual.
In ICEM Surf, the export of entity names is preset by default and cannot be controlled by switching on
and off an option in the function File – Export – Catia V4.

no_write_attrs
catfil_icem now checks each entity from CATIA to see if it has a name in the form “Part/Molecule/
Atom”, e. g. Catia V4 name = “body/door/12”. If it has, the entity is written to the IPARTA file with a
standard Attribute. If the naming convention“Part/Molecule/Atom” is disregarded, the entity name will
not be imported in ICEM Surf!

52
8.2 Release Bulletin ICEM – CATIA Direct Interface 6.1.005

This mechanism can be switched off using the no_write_attrs option in the translator start script
CatiaToIparta.

In ICEM Surf, the import of entity names is preset by default and cannot be controlled by switching
on and off an option in the function File – Import – Catia V4.

read_skins
Specially named Trimmed Surfaces (Faces) from IPARTA can now be written to CATIA as SKINs by
using the read_skins option in the translator start script IpartaToCatia. There is a sewing process
required by this option which uses a default tolerance of 0.09/units (where units = 1.0 for a mm part
or 25.4 for an inch part). CATIA uses a tolerance of 0.1 mm for a Model Dimension of 10m. If the
translator default is not adequate then an optional tolerance can be put immediately after the
read_skins option.

In ICEM Surf, the export of patches and faces defined as SKINs is preset by default and cannot be
controlled by switching on and off an option in the function File – Export – Catia V4.
For the export of patches and faces as SKINs, in ICEM Surf the following conditions must be kept:

1. Data Structure
The patches and faces must be included into a surface (molecule).
2. Naming
The surface name must have the prefix “skin” followed by a (consecutive) number, e. g. “skin1,
skin2, …”.

IMPORTANT:

• The name is not case-sensitive.


• A number must not be used twice.
• If zeros are added before the number, e. g. to force a consecutive listing in selection lists in
case of more than 9 names, the mathematical value in the name is decisive and not the
notation, e. g. the number 1 has the same meaning as 01.

53
8.2 Release Bulletin ICEM – CATIA Direct Interface 6.1.005

Figure 1 Data Structure and Naming of Surfaces for the Export to Catia V4

Part/skin4/4
Part/skin4/2
Part/skin4/6
Part/skin3/2

Part/skin4/8
Part/skin4/10

Part/skin3/4

Surface (Molecule) “skin4” Surface (Molecule) “skin3”

3. Trim Patches
In Catia, an entity can only be defined as SKIN if it consists of faces. Therefore, it is necessary to
trim all patches (to faces) of a surface to be defined as SKIN before exporting. This is also neces-
sary, if the dimension of the patches needs not to be decreased. In this case, the patches have to
be trimmed at their own edges. This “formal trimming” will be done automatically during the export
operation, if you set in the Geometry tab of the function File – Export
– Catia V4. If this setting has been used, all exported ICEM Surf patches will be read as faces in
Catia V4. This setting is not neccessary in case of patches already manually trimmed.
4. Keeping Tolerances
In order that the translator can define the Catia-SKIN, the patches of the surfaces to be exported
as SKINs must be connected to each other with position continuous transitions keeping certain
tolerances needed by Catia V4. As these tolerances are not automatically corrected if they have
not been kept, you have to check the surfaces before exporting them with the function Diagnoses
– Check – Surface using the following parameters:

• Topology Regions: 0.01


• Position: 0.0001 Min, 0.0099 Max

54
8.2 Release Bulletin ICEM – CATIA Direct Interface 6.1.005

Figure 2 Surface Check the Export of SKINs

Part/skin4/4
Part/skin4/2
Part/skin4/6
Part/skin3/2

Part/skin4/8
Part/skin4/10

Part/skin3/4

If according to the above mentioned parameters a topology edge is found at the inner patch
boundaries, the SKIN definition fails and the error message “Error whilst sewing required Skins”
will be entered in the translation protocol.
After the import in Catia V4 the SKINs can be used, for example, for the definition of solids.

Figure 3 SKINs imported from ICEM Surf in Catia V4

55
8.2 Release Bulletin ICEM – CATIA Direct Interface 6.1.005

ent_messages
catfil_icem and icem_catdata now produce less entity related messages on the logfile. By
default, only error and warning messages are given along with the usual entity counts. To switch on
full entity messages the ent_messages option can be used in the translator start scripts IpartaTo-
Catia and CatiaToIparta

In ICEM Surf, the creation of the short translation protocol is preset by default and cannot be control-
led by switching on and off an option in the functions File – Import/Export – Catia V4.

Fixes for Startpart issues in icem_catdata:

• Face visualization parameters,


• NOSHOW is the default for base surfaces,

• Spurious View no longer created,


• NHR ONLY display setting.

Fixed Bugs

• A bug has been fixed in the ICEM Read code when the refit3d option is used. This bug was
causing certain 3D edges to be re-fitted when it was not necessary.
• A bug has been fixed in catfil_icem on NT which caused a crash when CST entities were being
read from CATIA.

56
Glossary

Glossary

CADverter
Theorem Trade Mark referring to a range of CAD data translation packages.

CATIA
Computer Aided Design Package by Dassault Systems.

gco
Generic Cad Object. The Theorem internal geometric data format.

Rational
When related to a curve (e. g. NURBS), “rational” means that the curve can exactly represent conic
sections as well as free-formed curves. Non-rational curves do not have this feature.
When related to a surface (e. g. NURBS), it means that all analytical surfaces (e. g. spherical, cylin-
drical, etc.) as well as free-formed surfaces may be exactly represented. Non-rational surfaces do
not have this feature.

tar
A UNIX tape utility.

57
Index

Index

B no_fixup 11 mc_to_bsp 26
bsp_to_mc 12 no_write_attrs 12 mc_to_cst 26
Pdegen (tol) 12 mc_to_lin 26
C read_set (name) 13 mdim (val) (mm / inch) 26
CADverter Software 40 read2d 11 model (mnum) 11
catfil_icem 10 unlink_edges 12 mvs 26
CATIA_file_name 10, 25 Input Arguments ICEM to CATIA
CATIA_title 25 CATIA_file_name 25 N
cont (val) 11 CATIA_title 25 no_fixup 11
create_edge_curves 28 create_edge_curves 28 no_plane_create 27
draft 27 no_read_attrs 27, 52
D ent_messages 27 no_write_attrs 12, 52
draft 11, 27 icem_catdata 25 nurbs 27
ICEM_file_name 25
E icem_tol (val) 25 P
ent_messages 56 log_file_name 25 Pdegen (tol) 12
CATIA to ICEM 12 mc_to_bsp 26 Progress File
ICEM to CATIA 27 mc_to_cst 26 CATIA to ICEM 18
Entity Mapping mc_to_lin 26 ICEM to CATIA 31
CATIA to ICEM 8 mdim (val) (mm / inch) 26
ICEM to CATIA 23 mvs 26 R
Environment Setup 37 no_plane_create 27 read_set (name) 13
Error Messages no_read_attrs 27 read_skins 53
CATIA to ICEM 19 nurbs 27 read_skins (tol) 27
ICEM to CATIA 32 read_skins (tol) 27 read2d 11, 25
read2d 25 Release Bulletins 52
F startpart (start_name) 26
FLEXlm License Mechanism 39 surfopt (val) 26 S
FLEXlm Licensing 37 trim_face_surfs 28 Screen Messages
v3 26 CATIA to ICEM 16
I version n.m 28 ICEM to CATIA 28
ICEM File 18 Shell Scripts 49
icem_catdata 25 K startpart (start_name) 26
ICEM_file_name 10, 25 keep_planes 11 surfopt (val) 26
ICEM_part_name 10 System Requirements 36
icem_tol (val) 25 L
Input Arguments CATIA to ICEM License Administration 42 T
bsp_to_mc 12 License File 39, 44 Theorem Daemon 39
catfil_icem 10 License Management 37 trim_face_surfs 28
CATIA_file_name 10 License Manager Daemon 39 TSC_PROG_FILE 37
cont (val) 11 log_file_name 10, 25
draft 11 U
ent_messages 12 M unlink_edges 12
ICEM_file_name 10 mask (maskname) 11
ICEM_part_name 10 Mask File V
keep_planes 11 Format 13 v3 26
log_file_name 10 OFF Statement version n.m 28
mask (maskname) 11 13
model (mnum) 11 ON Statement 15

58

You might also like