Skip to main content

Dassault Catia V5

Note: Users must procure and maintain valid licenses to integrate this commercial DE tool with the Istari Digital platform. Please contact your local IT administrator for assistance.

Supported Functions:

extract
update

Getting Started

The Catia integration provides support for Dassault CATIA V5-R62023, allowing users to extract data from and modify Catia V5-R62023 CAD models.

Upload: Yes

Files Supported

The istari Digital Platform can extract from the following file types: .CATPart
.CATProduct (Note: Products need to be in a .zip folder with all dependent files included to be properly extracted)

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

Example Files

Setup for Administrators

Ensure that Dassault CATIA v5 is installed on a Virtual Machine (VM) with Istari Digital Agent and appropriate Istari Digital Software. Verify that the installation is up to date with the latest patches and updates from Dassault.

Version Compatibility

This software was tested with Dassault CATIA V5-R62023, and is intended to run in a Windows environment. It was tested on Windows Server 2019.

Module Configuration (Version 2.4.0+)

Deprecated Configuration

Starting with catia-module 2.4.0 and istari-agent 9.8.0+, the old configuration variables (log_level, log_file_path, render_tool_path, convert_tool_path) 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 CATIA V5 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_catia_v5":
"dassault_catia_v5_renderer_executable_path": "/path/to/render/tool"
"dassault_catia_v5_converter_executable_path": "/path/to/convert/tool"

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_catia_v5\2.4.0\app\resources\module_config.json:

{
"dassault_catia_v5_renderer_executable_path": "/path/to/render/tool",
"dassault_catia_v5_converter_executable_path": "/path/to/convert/tool"
}

Configuration Parameters

  • dassault_catia_v5_renderer_executable_path: Path to the rendering tool for generating model views
  • dassault_catia_v5_converter_executable_path: Path to the conversion tool for file format conversion

Function Coverage and Outputs

The Catia software can produce a number of artifacts extracted from the Catia V5 CAD model. The table below describes each output artifact and its type.

RouteCoverageArtifact Content Example
Extract model 6 side model views - PNGYes
Extract model isometric view - PNGYes
Extract OBJ for viewingYes
Extract user defined parameters - JSONYes
Extract mass properties and bounding box - JSONYes
Extract bill of materials (Products) - JSONYes
Extract material properties assigned - JSONComing soonJSON
Update material propertiesNo
Update user defined parameters - JSONYesUpdates parameters in CATIA V5 models using the @istari:update_parameters function

Tips and tricks for model extraction and Reuse

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

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

2. Material Properties: Ensure the correct material is defined in the CATIAv5 models

Detailed SDK Reference

Prerequisite: Install Istari Digital SDK and initialize Istari Digital Client per instructions here

Step 1: Upload and Extract the File(s)

Upload the file as a model

model = client.add_model(
path="example.CATPart",
description="Catia example model",
display_name="Catia Model Name",
)
print(f"Uploaded base model with ID {model.id}")

Extract once you have the model ID

extraction_job = client.add_job(
model_id = model.id,
function = "@istari:extract",
tool_name = "dassault_catia_v5",
tool_version = "2.4.0",
operating_system = "Windows 10",
)
print(f"Extraction started for model ID {model.id}, job ID: {extraction_job.id}")

Please choose appropriate tool_name, tool_version, and operating_system for your installation of this software.
Above is an example of how to call the function

Step 2: Check the Job Status

extraction_job.poll_job()

Step 3: Retrieve Results

Example

for artifact in model.artifacts:
output_file_path = f"c:\\extracts\\{artifact.name}"

if artifact.extension in ["txt", "csv", "md", "json", "html"]:
with open(output_file_path, "w") as f:
f.write(artifact.read_text())
else:
with open(output_file_path, "wb") as f:
f.write(artifact.read_bytes())

Step 4: Update Parameters

The following example demonstrates how to update parameters in a CATIA V5 model:


# Create update job
update_job = client.add_job(
model_id=catia_model.id,
function="@istari:update_parameters",
tool_name="dassault_catia_v5",
operating_system="Windows 10",
parameters={
"parameters": {
"WING\\DIHEDRAL_ANGLE":"2deg",
"WING\\WING_LENGTH":"200in",
}
}
)

Parameter Update Workflow

The @istari:update_parameters function for CATIA V5:

  1. Parameter Format: Parameters are specified using the format "CATEGORY\\PARAMETER_NAME": "value with unit"
  2. Supported Types: Supports updating user-defined parameters in CATIA V5 models
  3. File Support: Works with both .CATPart and .CATProduct files
  4. Output: Returns the updated model with modified parameters

Note: Ensure that the parameters you want to update exist in the CATIA model before attempting to modify them.

Parameter Schema

The @istari:update_parameters function expects a specific format for parameter values. Each parameter value should include both the numerical value and the unit of measurement without any spaces between them.

Schema Format

{
"parameters": {
"CATEGORY\\PARAMETER_NAME": "XXXyyy"
}
}

Where:

  • XXX = Numerical value (e.g., "2", "200", "0.125")
  • yyy = Unit of measurement (e.g., "deg", "in", "mm")

Example Parameters

{
"parameters": {
"WING\\DIHEDRAL_ANGLE": "2deg",
"WING\\WING_SPAN": "1500mm",
"WING\\THICKNESS": "0.125in"
}
}

Important Notes

  • No spaces between the value and unit
  • Case sensitive - use lowercase for units
  • Decimal values are supported (e.g., 0.125in)
  • Parameter names must exactly match those defined in your CATIA model

Troubleshooting

  1. For general Agent and Software Troubleshooting Click Here
  2. Missing Artifacts:
    • 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 mass_properties.json: Check source file, is material properly defined? If not, refer to the software's manual for defining appropriate material assignment.

FAQ