Design Settings#
![]() |
In this example we will demonstrate:
|
from dlubal.api import rfem, common
# Connect to the RFEM application
with rfem.Application() as rfem_app:
# Step 1: Retrieve the global settings tree table for Steel Design (active model)
design_settings: rfem.GlobalSettingsTreeTable = rfem_app.get_design_settings(
addon=rfem.DesignAddons.STEEL_DESIGN
)
print(f"DESIGN SETTINGS:\n{design_settings}")
# Step 2: Retrieve a specific value
# Path to access specific value
member_slendernesses_path = [
'member_slendernesses',
'member_slendernesses_tension_ec3'
]
# Get and print specific value
member_slendernesses_val = common.get_tree_value(
tree=design_settings,
path=member_slendernesses_path
)
print(f"\nMember slendernesses: {member_slendernesses_val}")
# Step 3: Modify the value and save the updated design settings
# Set a new value
common.set_tree_value(
tree=design_settings,
path=member_slendernesses_path,
value=280,
)
# Apply the updated design settings to the model
rfem_app.set_design_settings(
addon=rfem.DesignAddons.STEEL_DESIGN,
global_settings_tree_table=design_settings
)
using Rfem = Dlubal.Api.Rfem;
using Common = Dlubal.Api.Common;
ApplicationRfem? RfemApp = null;
try
{
RfemApp = new ApplicationRfem();
// Step 1: Retrieve the global settings tree table for Steel Design (active model)
Rfem.GlobalSettingsTreeTable? designSettings = await RfemApp.get_design_settings(
addon: Rfem.DesignAddons.SteelDesign
);
Console.WriteLine($"DESIGN SETTINGS:\n{designSettings}");
// Step 2: Retrieve a specific value
// Path to access the member slenderness setting
var memberSlendernessesPath = new List<string> {
"member_slendernesses",
"member_slendernesses_tension_ec3"
};
// Fetch the value of the specific setting
var memberSlendernessesVal = Common.TreeHelpers.GetTreeValue(
tree: designSettings,
path: memberSlendernessesPath
);
Console.WriteLine($"Member Slenderness: {memberSlendernessesVal}");
// Step 3: Modify the value and save the updated design settings
// Set a new value
Common.TreeHelpers.SetTreeValue(
tree: designSettings,
path: memberSlendernessesPath,
value: 280
);
// Apply the updated design settings to the model
await RfemApp.set_design_settings(
addon: Rfem.DesignAddons.SteelDesign,
globalSettingsTreeTable: designSettings
);
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
finally
{
if (RfemApp != null) await RfemApp.close_connection();
}