Skip to main content

Dassault 3DExperience (CATIA & Enovia)

Supported Functions:

extract
update
multi

Getting Started

The 3DExperience integration provides support for Dassault 3DExperience CATIA(V6) and Enovia, allowing users to extract data from and modify 3DExperience-CATIA CAD models.

Upload: No

Product Identifier: Yes (name and revision)

Example:

{
"name": "prd00000080",
"major_revision": "1",
"minor_revision": "1"
}

Files Supported

The istari Platform can extract from the following file types:

  • 3DExperience Products/Assemblies
  • 3DExperience Parts

Note: 3DExperience does not permit local saving of models. The module interfaces directly with the Enovia platform to open/save 3DExperience models.

All other 3DExperience file/model types not supported at this time. Please submit a feature request if an important file type is not supported.

Version Compatibility

This software was tested with Dassault 3DExperience 2023x and 2022x, but is developed to be generally version agnostic. It is intended to run in a Windows environment and was tested on Windows 11.

Function Coverage and Outputs

This software can produce a number of artifacts extracted from the 3DExperience CATIA CAD model. The table below describes each output artifact and its type.

RouteCoverageArtifact Content Example
Function: @istari:extract:Yes
-Extract 6 orthographic model views - PNG
-Extract the model isometric view - PNG
-Extract an object file for dynamic model viewing - OBJ
-Extract user defined parameters - JSON
-Extract mass properties, bounding box, and material - JSON
Function: @istari:extract_geometry:Yes
-Extract model geometry to a neutral file format
-Inputs: STEP, IGES3D, STL
Function: @istari:extract_parameters:Yes
-Extract a full list of model parameters - JSON
Function: @istari:extractPublications:Yes
-Extract list of published elements - JSON
Function: @istari:update_parameters:Yes
- Updates a set of parameters with user-specified values
Function: @istari:execute_macro:Yes
-Execute a custom VBA macro within 3DExperience
Function: @istari:command_execute:Coming soon
-Execute a custom macro from a preloaded library

Tips and tricks for model extraction and Reuse

This section will guide users through creating a 3DExperience CATIA model for optimal interaction with the provided software (SDK/platform). Some artifacts supported for extraction from the model require specific steps.

1. User Defined Parameters: These are essential for extracting key values out of the 3DExperience CATIA file. This will allow upstream and downstream digital threading of the 3DExperience CATIA file. Refer to 3DExperience instructions or your company's best practices for best methods to create these.

2. Material Properties: Ensure the correct material is defined in the 3DExperience CATIA models.

3. Macros: Macros executed through the 3DExperience module should not display any UI elements (windows, dialog boxes, message boxes, etc.) since this may block execution. Also, macros should be prepared for remote execution, including modifying paths appropriately and eliminating references to local resources.

Setup for Administrators

Ensure that Dassault 3DExperience CATIA is installed on a Bare metal Machine with Istari Agent and appropriate Istari Software. Verify that the installation is up to date with the latest patches and updates from Dassault.

Also, if a session of 3DExperience is not running when jobs are submitted to the module (see below for a more detailed explanation), the registry entry:

HKEY_CLASSES_ROOT\CLSID\<CATIA_CLSID>\LocalServer32

where <CATIA_CLSID> is the registered class ID for the CATIA application and can be found in the following registry entry:

HKEY_CLASSES_ROOT\CATIA.Application\CLSID

The command line in the value of this registry key should be updated to include the following flags:

TODO: Add flags

The module requires a server license in order to perform various operations that interface with Enovia. The license is read from an xml file that can be generated using the CATUTIL.exe batch utility provided by Dassault, which may be found in the following location:

<3DExperience_Install_Path>\win_b64\code\CATUTIL.exe

where <3DExperience_Install_Path> should be replaced with the actual path to the 3DExperience installation. Within the utility, start the CAT3DExpBatch tool:

Double click the tool, click the Save button and save the config to ServerLicense.xml within the module installation directory:

The module can be run with or without the 3DExperience application actively running on the host machine. If the 3DExperience application is not currently running, the module will start a session and close it when all functions have been executed. If the 3DExperience application is open when the module starts, it will use the existing session and leave it open after completing all function execution. Note that in the latter case, the module closes all models opened during function execution.

Configuration (Version 1.3.0+)

Deprecated Configuration

Starting with 3dexperience-module 1.3.0 and istari-agent 9.8.0+, the old configuration variables (dassault_install_dir, product_attr_name) are deprecated. While they remain supported for backward compatibility, we strongly encourage using the new standardized configuration variables and the centralized istari_digital_agent_module_configurations approach.

The Istari Agent is configured via the file istari_digital_config.yaml. The Agent expects the file to be located at:

  • %LOCALAPPDATA%\istari_digital\ on Windows
  • ~/.config/istari_digital/ on RHEL/Ubuntu

Configure the 3DExperience module using the istari_digital_agent_module_configurations section. The agent will pass this centralized configuration to the module:

agent:
istari_digital_agent_module_configurations:
"@istari:dassault_3dexperience":
"dassault_3dexperience_install_dir": "/path/to/3dexperience/installation"
"dassault_3dexperience_product_attr_name": "PLM_ExternalID"

Legacy Configuration (module_config.json)

For backward compatibility, you can still use the legacy module_config.json file located at {istari_agent_dir}\istari_modules\dassault_3dexperience\resources\module_config.json:

{
"dassault_3dexperience_install_dir": "/path/to/3dexperience/installation",
"dassault_3dexperience_product_attr_name": "PLM_ExternalID"
}

Configuration Parameters

  • dassault_3dexperience_install_dir: Sets the installation path of the 3DExperience thick client to use. This is useful when executing on systems in which multiple versions of 3DExperience are installed.
  • dassault_3dexperience_product_attr_name: This is the attribute name associated with product identifiers used to locate products. In out-of-the-box installations, this will be PLM_ExternalID, but can be configured with other options.

Troubleshooting

  1. For general Agent and Software Troubleshooting Click Here
  2. Missing Artifacts Or Data:
    • 2.1 parameters.json: Check source file, are there user defined parameters defined in the file? If not, refer to the software's manual for defining appropriate parameters.
    • 2.2 parts.json: Check source model for properly defined materials? Refer to the software manual for defining appropriate material assignment.

FAQ