ICEM Catia Direct Interface


Add to my manuals
58 Pages

advertisement

ICEM Catia Direct Interface | Manualzz

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 [email protected]

Hotline in Europe:

ICEM Technologies GmbH

Siemensstrasse 9

63263 Neu-Isenburg

Germany

Phone:

Fax:

E-mail:

Internet:

+49 (0) 6102 366 9090

+49 (0) 6102 366 9100

[email protected]

http://www.icem.com (Support) outside Europe:

ICEM Technologies, Inc.

38705 Seven Mile Road

Suite 320 Livonia, MI 48152

USA

Phone:

Fax:

E-mail:

Internet:

USA & Canada: outside USA:

+1 800 692 7322

+1 734 462 1795

+1 734 462 1039

[email protected]

http://www.icem.com (Support)

Sales in Europe:

ICEM Technologies GmbH

Siemensstrasse 9

63263 Neu-Isenburg

Germany

Phone:

Fax:

E-mail:

Internet:

+49 6102 366 9000

+49 6102 366 9100 [email protected]

http://www.icem.com (Contact Us > Global Locations) outside Europe:

ICEM Technologies, Inc.

38705 Seven Mile Road

Suite 320 Livonia, MI 48152

USA

Phone:

Fax:

E-mail:

Internet:

+1 734 462 1795

+1 734 462 1039 [email protected]

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

2.2.3

2.2.4

Description of the Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Starting the Translator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Mask File Format for CATIA to ICEM Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.4.1

The OFF Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.3

2.4

2.2.4.2

2.2.4.3

The ON Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Example Mask Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.2.4.4

Mask File Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Translator Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.3.1

2.3.2

2.3.3

2.3.4

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Screen Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

The ICEM File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

The Progress File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.3.5

Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Aids to Successful Translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3

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

3.1

3.2

Entity Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Translator Input. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.3

3.2.1

3.2.2

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Description of the Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.2.3

Starting the Translator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Translator Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.4

3.3.1

3.3.2

3.3.3

3.3.4

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

Screen Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

The CATIA File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

The Progress File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.3.5

Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

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

5.3

Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.4

5.5

License Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

The License File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

6

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

6.1

6.2

Transfer from CATIA to ICEM ASCII Part. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Transfer from CATIA to ICEM Surf DB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

6.3

6.4

Transfer from ICEM ASCII Part to CATIA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

Transfer from ICEM Surf DB to CATIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

7

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

8

Release Bulletins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

8.1

8.2

Release Bulletin ICEM – CATIA Direct Interface 6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

Release Bulletin ICEM – CATIA Direct Interface 6.1.005. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

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

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

5

List of Tables

List of Tables

Table 1

Table 2

Table 3

Table 4

Table 5

Table 6

Supported Platforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Entity Mapping from CATIA to ICEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Entity Mapping from ICEM to CATIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Software Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Causes for Flexlm Licensing Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

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 bidirectional direct translator between CATIA and ICEM DDN, ICEM Surf or other ICEM products. It runs on the following platforms:

Table 1 Supported Platforms

Platform

HP-UX

IRIX

Solaris

Windows

Operating System

11i

6.5.12

8

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.

N OTE

• 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

(type number in brackets)

Point (1)

Line (2)

Circle (20)

Ellipse (21)

Parabola (22)

Hyperbola (23)

Curve (3)

Composite Curve (24)

Surface (5)

Plane (4)

Cst (14)

Face (6)

Solide (17)

Skin (13)

Skd (35)

Draft (93)

View(s) (30)

ICEM

(type number in brackets)

Point (1)

Line (2)

Circle (3)

Conic (4)

Conic (4)

Conic (4)

B-Spline Curve (31)

Machining Curve (10)

B-Spline Surface (26)

Plane (4)

B-Spline Surface (26)

Machining Curve (10)

Trimmed Surface (27)

Trimmed Surfaces (27)

Trimmed Surfaces (27)

Trimmed Surfaces (27)

Systems Entity Form 2 (50)

Systems Entity Form 11 (50)

Notes

(see below)

1

1

1

2, 7

3

2, 4

5

6

8

2.2 Translator Input

CATIA

(type number in brackets)

Dimension (91)

Axis (8)

ICEM

(type number in brackets)

Linear Dimension (32)

Radius Dimension (33)

Diameter Dimension (35)

Angular Dimension (36)

Work Axis (43)

Notes

(see below)

N OTE

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 surfacecurves.

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 argument 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 relative 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 tolerance <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 surface 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 surface (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 normal. 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 output. 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, giving 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.

N OTE

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 entities 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 editors. 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 layers at the same time.

N OTE

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

BSUR

NSUR

FAC

SOL

BRE

CSG

ISOL

AXIS

CST

LIN

ARC

CON

CUR

BCUR

NCUR

SUR

Lines

Arcs, Circles

Conics (ellipses, hyperbolae, parabolae)

Curves

B-Spline Curves

NURBS Curves

Surfaces

B-Spline Surfaces

NURBS Surfaces

Faces

Solids (SOLIDM (facetted))

Solids (SOLIDE (exact brep))

Solids (Solids with history)

Solids (ISOLATED solids)

3D Axis System

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

N OTE

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 translation. 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.

N OTE

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

Lines

- 1

- 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 processing 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 editors, 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 system. An ICEM file may have been created, but may be incomplete.

• Action:

N OTE

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.

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 correctly 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 correspond 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 supported.

• 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.

N OTE

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

(type number in brackets)

Point (1)

Line (2)

Circle (3)

Conic (4)

CATIA

(type number in brackets)

Point (1)

Line (2)

Arc (20)

Ellipse (21)

Parabola (22)

Hyperbola (23)

Notes

(see below)

1

Composite Curve (6)

3D-Spline (9)

Machining Curve (10)

2

7

B-Spline Curve (31)

B-Spline Surface (26)

Trimmed Surface (27)

Systems Entity Form 2 (50)

Systems Entity Form 11 (50)

Linear Dimension (32)

Radius Dimension (33)

Diameter Dimension (35)

Angular Dimension (36)

Work Axis (43)

Curve (3)

Lines (2)

Curve (3)

Cst (14)

Curve (3)

Lines (2)

NURBS Curve (46)

Surface (5)

NURBS Surface (47)

Face (6)

Skin(13)

Draft (93)

View(s) (30)

Dimension (91)

Dimension (91)

Dimension (91)

Dimension (91)

Axis (8)

3,4,6

4,6

5

8

N OTE

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 information 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 tolerance 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 format. 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 translation. 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/Surfaces 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 Surfaces, 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 output. 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/Molecule/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 mechanism 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 Molecule 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 translation. 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 messages.

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

CATIA file

CATIA title

: iparta

: test.model

: test_part

Points - 1

Arcs

Lines

- 1

- 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.

N OTE

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

CATIA file name

CATIA title

: iparta

: test.model

: test_part

Read errors found - see progress file

Points - 1

Arcs

Lines

- 1

- 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.

N OTE

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

CATIA file name

CATIA title

: iparta

: test.model

: test_part

Arcs

Lines

Srevs

- 2

- 2

- 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 utility.

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 processing 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 editors, 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

CATIA title

: back.model

: 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 example, 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 performed. 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

READ_ME apl/catfil_icem apl/icem_catdata licence licence_example licdmn flexlm/lmgrd flexlm/lmutil flexlm/lmsetup flexlm/license.dat

flexlm/theorem flexlm/TS_updaemon flexlm/TS_downdaemon flexlm/TS_statdaemon

Description

A readable file containing the installation instructions.

CATIA-to-ICEM translator.

ICEM-to-CATIA translator.

The license file.

If the above license file cannot be supplied, an example license will be provided instead.

The license checking utility (Sun and SGI only).

FLEXlm license management daemon.

FLEXlm license management utilities.

FLEXlm license management utilities script.

FLEXlm licenses for CADverter software.

FLEXlm daemon for CADverter software.

Script to run lmgrd

Script to stop the license daemon.

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

N OTE :

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 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.

N OTE :

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 produce 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 daemon. 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.

The Theorem daemon is not running.

The license file is not found.

The requested feature is not licensed.

Restart the daemon.

Restart the daemon.

Check the file definition being used.

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. workstations.

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).

N OTE :

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 commands.

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 Theorem 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

N OTE :

You can edit the hostname on the server line (1 st arg), the port address on the server line (3 rd arg), the path to the daemon on the daemon line (2 nd 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

6.1

Extended Entity Mapping Tables

Transfer from CATIA to ICEM ASCII Part

CATIA

(type number in brackets)

ICEM ASCII Part

(type number in brackets)

Point (1)

Line (2)

Curve (3)

B-Spline Curve (3)

NURBS Curve (46)

Plane (4)

Surface (5)

B-Spline Surface (5)

NURBS Surface (47)

Face (6)

Edge (12)

Solide (only Brep form; CSG form and facetted form are not supported) (17)

Volume (17)

Circle (20)

Ellipse (21)

Parabola (22)

Hyperbola (23)

Composite Curve (24)

Draft (93)

View(s) (30)

Dimension (91)

Cst (14)

Axis (8)

Point (1)

Line (2)

B-Spline Curve (31)

Plane (18)

B-Spline Surface (26)

Trimmed Surface (27)

Surface Curve (17) and

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

Trimmed Surfaces (for each face of the solid) (27)

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

Circle/Arc/Fillet (3)

Conic, Form 2 (4)

Conic, Form 3 (4)

Conic, Form 4 (4)

(constituent parts)

Systems Entity Form 2 (50)

Systems Entity Form 11 (50)

Linear Dimension (32)

Radius Dimension (33)

Diameter Dimension (35)

Angular Dimension (36)

Machining Curve (10)

Work Axis (43)

46

6.2 Transfer from CATIA to ICEM Surf DB

6.2

Transfer from CATIA to ICEM Surf DB

CATIA

(type number in brackets)

ICEM Surf DB

Point (1)

Line (2)

Curve (3)

B-Spline Curve (3)

NURBS Curve (46)

Plane (4)

Surface (5)

B-Spline Surface (5)

NURBS Surface (47)

Face (6)

Solide (only Brep form; CSG form and facetted form are not supported) (17)

Volume (17)

Circle (20)

Composite Curve (24)

Cst (14)

Axis (8)

Point

Curve Segment

Curve Segment

Patch

Patch

Face

Face (for each face of the solid)

Face (for each face of the solid)

Curve Segment/Circle/Arc

Curve Segment (constituent parts)

Raw Data Segment

Work Plane

6.3

Transfer from ICEM ASCII Part to CATIA

ICEM ASCII Part

(type number in brackets)

Point (1)

Line (2)

Arc/Circle/Fillet (3)

Conic, Form 2 (4)

Conic, Form 3 (4)

Conic, Form 4 (4)

Composite Curve (6)

Point Set (8)

3D-Spline (9)

Machining Curve (10)

CATIA

(type number in brackets)

Point (1)

Line (2)

Circle (20)

Ellipse (21)

Parabola (22)

Hyperbola (23)

(constituent parts)

Point(s) (1)

Curve (3)

Lines (2)

Curve (3)

CST (14)

47

6.4 Transfer from ICEM Surf DB to CATIA

ICEM ASCII Part

(type number in brackets)

Surface Curve (17)

Plane (18)

Surface Curve Surface (25)

B-Spline Surface (26)

Trimmed Surface (27)

B-Spline Curve (31)

Loop (55)

Systems Entity Form 2 (50)

Systems Entity Form 11 (50)

Linear Dimension (32)

Radius Dimension (33)

Diameter Dimension (35)

Angular Dimension (36)

Work Axis (43)

6.4

CATIA

(type number in brackets)

Edge (used to trim a CATIA face) (12)

Plane (4)

(implicitly available in the face topology and face surface relationship)

Surface (5)

NURBS Surface (47)

Face (6)

Curve (3)

NURBS Curve (46)

(implicitly available in topology of the associated face)

Draft (93)

View(s) (30)

Dimension (91)

Dimension (91)

Dimension (91)

Dimension (91)

Axis (8)

Transfer from ICEM Surf DB to CATIA

ICEM Surf DB

Point

Curve Segment/Arc/Circle

Raw Data Segment

Patch

Face

Curve Segment

Work Plane

CATIA

(type number in brackets)

Point (1)

Circle (20)

Lines (2)

Curve (3)

Cst (14)

Surface (5)

NURBS Surface (47)

Plane (4)

Face (6)

Plane (4)

Curve (3)

NURBS Curve (46)

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

21

22

23

0

10

11

20

Message

TIO_NO_ERROR;

TIO_FERR_PAR_ERROR;

TIO_FERR_INVALID_KEY;

TIO_FERR_INP_FILE_NOT_EX;

TIO_FERR_INP_FILE_NO_PERM;

TIO_FERR_INP_DIR_NO_EX;

TIO_FERR_INP_DIR_NO_PERM;

Description

No error.

A parameter error occured.

An invalid keyword was specified.

The input file does not exist.

The input file exists without read permissions.

The input directory does not exist.

The input directory exists without read permissions.

49

Code Message

41

42

43

44

33

34

35

40

24

25

30

31

32

TIO_FERR_INP_PAR_NO_FILE;

TIO_FERR_INP_PAR_NO_DIR;

TIO_FERR_INP_OUT_IDENT;

TIO_FERR_INP_LST_IDENT;

TIO_FERR_OUT_LST_IDENT;

TIO_FERR_INP_DIR_OUT_FILE_IDENT;

TIO_FERR_INP_DIR_LST_FILE_IDENT;

TIO_FERR_OUT_DIR_LST_FILE_IDENT;

TIO_FERR_INP_NOT_SPEC;

TIO_FERR_INP_DIR_NOT_SPEC;

TIO_FERR_OUT_NOT_SPEC;

TIO_FERR_OUT_DIR_NOT_SPEC;

TIO_FERR_START_PART_NOT_EX;

9004

9100

9101

9102

9000

9001

9002

9003

54

55

56

8000

50

51

52

53

TIO_FERR_OLD_OUTPUT_NOT_REM;

TIO_FERR_CANT_CREATE_OUTPUT;

TIO_FERR_OLD_PROT_NOT_REM;

TIO_FERR_CANT_CREATE_LIST;

TIO_FERR_OLD_OUT_DIR_NOT_REM;

TIO_FERR_CANT_CREATE_OUT_DIR;

TIO_FERR_CANT_CREATE_TMP_FILE;

TIO_FERR_NO_LICENSE;

TIO_FERR_INVALID_ARGS;

TIO_FERR_INVALID_INP_FILE_FORM;

TIO_FERR_INP_FILE_IS_DIR;

TIO_FERR_CANT_OPEN_INP_FILE;

TIO_FERR_CANT_READ_INP_FILE;

TIO_FERR_CANT_CREATE_OUTPUT;

TIO_FERR_INVALID_FILE_NAME;

TIO_FERR_OUT_NOT_DIR;

9103

9104

TIO_FERR_OUT_FILE_IS_DIR;

TIO_FERR_OUT_FILE_EXISTS; default TIO_FERR_UNDOC;

7 Translator Execution with Shell Scripts

Description

The input directory does not exist.

The input directory exists without read permissions.

Input file and output file are identical.

Input file and list file are identical.

Output file and list file are identical.

Input file and output file are identical.

Input file and list file are identical.

Output file and list file identical.

Input file not specified.

Input directory not specified.

Output file not specified.

Output file not specified.

Start Part does not exist.

Unable to remove the old output file

Unable to create the output file

Unable to remove the old list file

Unable to create the list file

Unable to remove the old output directory

Unable to create the output directory

Unable to create temporary files

Translator not licensed.

Invalid input arguments used.

Input file_name is not in required format.

Input file_name is a directory, not a file.

Failure to open input file for identification.

Failure to read input file identification.

Invalid output file name given.

Output name is not a directory.

Output name is a directory, not a file.

Output name is a directory, not a file.

Output name is a directory, not a file.

Not documented error.

50

7 Translator Execution with Shell Scripts

Table 7 Error Codes for Catia V5

Code

9201

9203

9204

9205

9206

9207

9208

9209

9210

Message

TIO_FERR_CAT5_WRITE_ERRORS;

TIO_FERR_CAT5_ARGUMENT_ERROR;

TIO_FERR_CAT5_READ_ERROR;

TIO_FERR_CAT5_NO_ENTITIES;

TIO_FERR_CAT5_NO_CATINIT;

TIO_FERR_CAT5_CANT_OPEN_DOC;

TIO_FERR_CAT5_CANT_CREATE_SES;

TIO_FERR_CAT5_SES_EXISTS;

TIO_FERR_CAT5_INCOMPATIBLE;

Description

Catia V5: Write Errors

Catia V5: Command line argument error

Catia V5: Read error

Catia V5: No entities found

Catia V5: Document does not implement CATInit

Catia V5: Can not open the CATIA5 document

Catia V5: Can not create the CATIA5 session.

Catia V5: Session of same name already exists

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 bsplines.

• 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 edgesplitting 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, …”.

I MPORTANT :

• 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 necessary, 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 controlled 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

C

CADverter

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

CATIA

Computer Aided Design Package by Dassault Systems.

G gco

Generic Cad Object. The Theorem internal geometric data format.

R

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, cylindrical, etc.) as well as free-formed surfaces may be exactly represented. Non-rational surfaces do not have this feature.

T tar

A UNIX tape utility.

57

Index

B

bsp_to_mc 12

C

CADverter Software 40

catfil_icem 10

CATIA_file_name 10, 25

CATIA_title 25

cont (val) 11

create_edge_curves 28

D

draft 11, 27

E

ent_messages 56

CATIA to ICEM 12

ICEM to CATIA 27

Entity Mapping

CATIA to ICEM 8

ICEM to CATIA 23

Environment Setup 37

Error Messages

CATIA to ICEM 19

ICEM to CATIA 32

F

FLEXlm License Mechanism 39

FLEXlm Licensing 37

I

ICEM File 18

icem_catdata 25

ICEM_file_name 10, 25

ICEM_part_name 10

icem_tol (val) 25

Input Arguments CATIA to ICEM

bsp_to_mc 12

catfil_icem 10

CATIA_file_name 10

cont (val) 11 draft 11

ent_messages 12

ICEM_file_name 10

ICEM_part_name 10

keep_planes 11

log_file_name 10

mask (maskname) 11 model (mnum) 11 no_fixup 11

no_write_attrs 12

Pdegen (tol) 12

read_set (name) 13

read2d 11

unlink_edges 12

Input Arguments ICEM to CATIA

CATIA_file_name 25

CATIA_title 25

create_edge_curves 28

draft 27 ent_messages 27

icem_catdata 25

ICEM_file_name 25 icem_tol (val) 25 log_file_name 25

mc_to_bsp 26 mc_to_cst 26 mc_to_lin 26 mdim (val) (mm / inch) 26 mvs 26

no_plane_create 27 no_read_attrs 27 nurbs 27 read_skins (tol) 27

read2d 25

startpart (start_name) 26 surfopt (val) 26

trim_face_surfs 28

v3 26

version n.m 28

K

keep_planes 11

L

License Administration 42

License File 39, 44

License Management 37

License Manager Daemon 39

log_file_name 10, 25

M

mask (maskname) 11

Mask File

Format 13

OFF Statement

13

ON Statement 15

mc_to_bsp 26 mc_to_cst 26 mc_to_lin 26 mdim (val) (mm / inch) 26

model (mnum) 11

mvs 26

N

no_fixup 11

no_plane_create 27 no_read_attrs 27, 52

no_write_attrs 12, 52

nurbs 27

P

Pdegen (tol) 12

Progress File

CATIA to ICEM 18

ICEM to CATIA 31

R

read_set (name) 13

read_skins 53

read_skins (tol) 27

read2d 11, 25

Release Bulletins 52

S

Screen Messages

CATIA to ICEM 16

ICEM to CATIA 28

Shell Scripts 49

startpart (start_name) 26 surfopt (val) 26

System Requirements 36

T

Theorem Daemon 39

trim_face_surfs 28

TSC_PROG_FILE 37

U

unlink_edges 12

V

v3 26

version n.m 28

Index

58

advertisement

Was this manual useful for you? Yes No
Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Download PDF

advertisement

Table of contents