Design Settings#
![]() |
In this example we will demonstrate:
|
from dlubal.api import rstab, common
# Connect to the rstab application
with rstab.Application() as rstab_app:
# Step 1: Retrieve the global settings tree table for Steel Design (active model)
design_settings: rstab.GlobalSettingsTreeTable = rstab_app.get_design_settings(
addon=rstab.DesignAddons.STEEL_DESIGN
)
print(f"DESIGN SETTINGS:\n{design_settings}")
# Step 2: Retrieve a specific value
# Path to access the member slenderness setting
member_slendernesses_path = [
'member_slendernesses',
'member_slendernesses_tension_ec3'
]
# Fetch the value of the specific setting
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=250,
)
# Apply the updated design settings to the model
rstab_app.set_design_settings(
addon=rstab.DesignAddons.STEEL_DESIGN,
global_settings_tree_table=design_settings
)
using Rstab = Dlubal.Api.Rstab;
using Common = Dlubal.Api.Common;
ApplicationRstab? RstabApp = null;
try
{
RstabApp = new ApplicationRstab();
// Step 1: Retrieve the global settings tree table for Steel Design (active model)
Rstab.GlobalSettingsTreeTable? designSettings = await RstabApp.get_design_settings(
addon: Rstab.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: 250
);
// Apply the updated design settings to the model
await RstabApp.set_design_settings(
addon: Rstab.DesignAddons.SteelDesign,
globalSettingsTreeTable: designSettings
);
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
finally
{
if (RstabApp != null) await RstabApp.close_connection();
}