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:
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.
Methods to Link to Istari Digital Platform
Upload: Yes
Link: No
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+)
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.
Centralized Configuration (Recommended)
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 viewsdassault_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.
Route | Coverage | Artifact Content Example |
---|---|---|
Extract model 6 side model views - PNG | Yes | |
Extract model isometric view - PNG | Yes | |
Extract OBJ for viewing | Yes | |
Extract user defined parameters - JSON | Yes | |
Extract mass properties and bounding box - JSON | Yes | |
Extract bill of materials (Products) - JSON | Yes | |
Extract material properties assigned - JSON | Coming soon | JSON |
Update material properties | No | |
Update user defined parameters - JSON | Yes | Updates 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:
- Parameter Format: Parameters are specified using the format
"CATEGORY\\PARAMETER_NAME": "value with unit"
- Supported Types: Supports updating user-defined parameters in CATIA V5 models
- File Support: Works with both
.CATPart
and.CATProduct
files - 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
- For general Agent and Software Troubleshooting Click Here
- 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.