dlubal.api 0.1.293714a1__py3-none-any.whl → 2.12.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of dlubal.api might be problematic. Click here for more details.
- dlubal/api/common/__init__.py +8 -3
- dlubal/api/common/common_messages_pb2.py +78 -0
- dlubal/api/common/common_messages_pb2.pyi +230 -0
- dlubal/api/common/common_pb2.py +7 -3
- dlubal/api/common/common_pb2.pyi +16 -0
- dlubal/api/common/connection.py +243 -251
- dlubal/api/common/exceptions.py +11 -11
- dlubal/api/common/import_export/__init__.py +2 -0
- dlubal/api/common/import_export/export_attributes_pb2.py +46 -0
- dlubal/api/common/import_export/export_attributes_pb2.pyi +77 -0
- dlubal/api/common/import_export/import_attributes_pb2.py +40 -0
- dlubal/api/common/import_export/import_attributes_pb2.pyi +17 -0
- dlubal/api/common/model_id_pb2.py +4 -4
- dlubal/api/common/model_id_pb2.pyi +8 -8
- dlubal/api/{rfem/results/results_id_pb2.py → common/options_pb2.py} +5 -6
- dlubal/api/common/options_pb2.pyi +7 -0
- dlubal/api/common/packing.py +144 -0
- dlubal/api/common/table.py +36 -34
- dlubal/api/common/utility.py +131 -0
- dlubal/api/rfem/__init__.py +53 -32
- dlubal/api/rfem/all_pb2.py +36 -0
- dlubal/api/rfem/all_pb2.pyi +9 -0
- dlubal/api/rfem/aluminum_design_objects/__init__.py +2 -2
- dlubal/api/rfem/aluminum_design_objects/aluminum_design_sls_configuration_pb2.py +44 -3
- dlubal/api/rfem/aluminum_design_objects/aluminum_design_sls_configuration_pb2.pyi +242 -3
- dlubal/api/rfem/aluminum_design_objects/aluminum_design_uls_configuration_pb2.py +44 -3
- dlubal/api/rfem/aluminum_design_objects/aluminum_design_uls_configuration_pb2.pyi +242 -3
- dlubal/api/rfem/application.py +807 -290
- dlubal/api/rfem/application_pb2.py +37 -30
- dlubal/api/rfem/application_pb2.pyi +107 -102
- dlubal/api/rfem/application_pb2_grpc.py +1046 -61
- dlubal/api/rfem/{base_data → base_data_objects}/__init__.py +1 -1
- dlubal/api/rfem/base_data_objects/terrain_pb2.py +42 -0
- dlubal/api/rfem/base_data_objects/terrain_pb2.pyi +71 -0
- dlubal/api/rfem/base_data_pb2.py +108 -0
- dlubal/api/rfem/base_data_pb2.pyi +2627 -0
- dlubal/api/rfem/beam_panels/__init__.py +4 -0
- dlubal/api/rfem/beam_panels/beam_to_beam_connector_pb2.py +38 -0
- dlubal/api/rfem/beam_panels/beam_to_beam_connector_pb2.pyi +39 -0
- dlubal/api/rfem/beam_panels/inner_studs_structure_pb2.py +38 -0
- dlubal/api/rfem/beam_panels/inner_studs_structure_pb2.pyi +53 -0
- dlubal/api/rfem/beam_panels/sheathing_pb2.py +38 -0
- dlubal/api/rfem/beam_panels/sheathing_pb2.pyi +59 -0
- dlubal/api/rfem/beam_panels/sheathing_to_beam_connector_pb2.py +44 -0
- dlubal/api/rfem/beam_panels/sheathing_to_beam_connector_pb2.pyi +93 -0
- dlubal/api/rfem/building_model/__init__.py +4 -4
- dlubal/api/rfem/building_model/building_story_pb2.py +24 -20
- dlubal/api/rfem/building_model/building_story_pb2.pyi +133 -95
- dlubal/api/rfem/building_model/deep_beam_pb2.py +225 -7
- dlubal/api/rfem/building_model/deep_beam_pb2.pyi +3505 -42
- dlubal/api/rfem/building_model/floor_set_pb2.py +4 -4
- dlubal/api/rfem/building_model/floor_set_pb2.pyi +8 -9
- dlubal/api/rfem/building_model/shear_wall_pb2.py +123 -7
- dlubal/api/rfem/building_model/shear_wall_pb2.pyi +1843 -20
- dlubal/api/rfem/calculation_diagrams/__init__.py +1 -1
- dlubal/api/rfem/calculation_diagrams/calculation_diagram_pb2.py +28 -17
- dlubal/api/rfem/calculation_diagrams/calculation_diagram_pb2.pyi +1729 -1661
- dlubal/api/rfem/component_design_objects/__init__.py +2 -0
- dlubal/api/rfem/component_design_objects/component_pb2.py +55 -0
- dlubal/api/rfem/component_design_objects/component_pb2.pyi +164 -0
- dlubal/api/rfem/component_design_objects/component_serie_pb2.py +38 -0
- dlubal/api/rfem/component_design_objects/component_serie_pb2.pyi +54 -0
- dlubal/api/rfem/concrete_design_objects/__init__.py +4 -2
- dlubal/api/rfem/concrete_design_objects/concrete_design_fr_configuration_pb2.py +93 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_fr_configuration_pb2.pyi +369 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_seismic_configuration_pb2.py +57 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_seismic_configuration_pb2.pyi +171 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_sls_configuration_pb2.py +28 -3
- dlubal/api/rfem/concrete_design_objects/concrete_design_sls_configuration_pb2.pyi +150 -3
- dlubal/api/rfem/concrete_design_objects/concrete_design_uls_configuration_pb2.py +76 -3
- dlubal/api/rfem/concrete_design_objects/concrete_design_uls_configuration_pb2.pyi +414 -3
- dlubal/api/rfem/construction_stages/__init__.py +1 -1
- dlubal/api/rfem/construction_stages/construction_stage_pb2.py +52 -12
- dlubal/api/rfem/construction_stages/construction_stage_pb2.pyi +390 -31
- dlubal/api/rfem/design_addons_pb2.py +36 -0
- dlubal/api/rfem/design_addons_pb2.pyi +28 -0
- dlubal/api/rfem/dynamic_analysis_pb2.py +36 -0
- dlubal/api/rfem/dynamic_analysis_pb2.pyi +23 -0
- dlubal/api/rfem/dynamic_loads/__init__.py +3 -2
- dlubal/api/rfem/dynamic_loads/accelerogram_pb2.py +8 -6
- dlubal/api/rfem/dynamic_loads/accelerogram_pb2.pyi +33 -17
- dlubal/api/rfem/dynamic_loads/response_spectrum_pb2.py +10 -8
- dlubal/api/rfem/dynamic_loads/response_spectrum_pb2.pyi +49 -30
- dlubal/api/rfem/dynamic_loads/time_diagram_pb2.py +46 -0
- dlubal/api/rfem/dynamic_loads/time_diagram_pb2.pyi +83 -0
- dlubal/api/rfem/foundation_design_objects/__init__.py +2 -0
- dlubal/api/rfem/foundation_design_objects/concrete_design_configuration_pb2.py +41 -0
- dlubal/api/rfem/foundation_design_objects/concrete_design_configuration_pb2.pyi +47 -0
- dlubal/api/rfem/foundation_design_objects/geotechnical_design_configuration_pb2.py +41 -0
- dlubal/api/rfem/foundation_design_objects/geotechnical_design_configuration_pb2.pyi +47 -0
- dlubal/api/rfem/geotechnical_analysis/__init__.py +3 -2
- dlubal/api/rfem/geotechnical_analysis/borehole_pb2.py +8 -6
- dlubal/api/rfem/geotechnical_analysis/borehole_pb2.pyi +31 -15
- dlubal/api/rfem/geotechnical_analysis/pile_resistance_pb2.py +42 -0
- dlubal/api/rfem/geotechnical_analysis/pile_resistance_pb2.pyi +71 -0
- dlubal/api/rfem/geotechnical_analysis/soil_massif_pb2.py +20 -12
- dlubal/api/rfem/geotechnical_analysis/soil_massif_pb2.pyi +107 -50
- dlubal/api/rfem/glass_design_objects/__init__.py +2 -0
- dlubal/api/rfem/glass_design_objects/glass_design_sls_configuration_pb2.py +69 -0
- dlubal/api/rfem/glass_design_objects/glass_design_sls_configuration_pb2.pyi +213 -0
- dlubal/api/rfem/glass_design_objects/glass_design_uls_configuration_pb2.py +69 -0
- dlubal/api/rfem/glass_design_objects/glass_design_uls_configuration_pb2.pyi +213 -0
- dlubal/api/rfem/global_parameters/__init__.py +1 -1
- dlubal/api/rfem/global_parameters/global_parameter_pb2.py +6 -6
- dlubal/api/rfem/global_parameters/global_parameter_pb2.pyi +254 -244
- dlubal/api/rfem/guide_objects/__init__.py +15 -10
- dlubal/api/rfem/guide_objects/building_grid_pb2.py +18 -18
- dlubal/api/rfem/guide_objects/building_grid_pb2.pyi +120 -128
- dlubal/api/rfem/guide_objects/clipping_box_pb2.py +2 -2
- dlubal/api/rfem/guide_objects/clipping_plane_pb2.py +10 -10
- dlubal/api/rfem/guide_objects/clipping_plane_pb2.pyi +57 -52
- dlubal/api/rfem/guide_objects/coordinate_system_pb2.py +6 -6
- dlubal/api/rfem/guide_objects/coordinate_system_pb2.pyi +31 -33
- dlubal/api/rfem/guide_objects/dimension_pb2.py +40 -26
- dlubal/api/rfem/guide_objects/dimension_pb2.pyi +266 -129
- dlubal/api/rfem/guide_objects/dxf_file_model_object_pb2.py +6 -6
- dlubal/api/rfem/guide_objects/dxf_file_model_object_pb2.pyi +54 -52
- dlubal/api/rfem/guide_objects/dxf_model_object_pb2.py +2 -2
- dlubal/api/rfem/guide_objects/group_of_object_selections_pb2.py +38 -0
- dlubal/api/rfem/guide_objects/group_of_object_selections_pb2.pyi +35 -0
- dlubal/api/rfem/guide_objects/guideline_pb2.py +42 -0
- dlubal/api/rfem/guide_objects/guideline_pb2.pyi +90 -0
- dlubal/api/rfem/guide_objects/layer_group_pb2.py +36 -0
- dlubal/api/rfem/guide_objects/layer_group_pb2.pyi +22 -0
- dlubal/api/rfem/guide_objects/layer_pb2.py +38 -0
- dlubal/api/rfem/guide_objects/layer_pb2.pyi +44 -0
- dlubal/api/rfem/guide_objects/note_pb2.py +12 -10
- dlubal/api/rfem/guide_objects/note_pb2.pyi +90 -60
- dlubal/api/rfem/guide_objects/object_snap_pb2.py +4 -4
- dlubal/api/rfem/guide_objects/object_snap_pb2.pyi +27 -26
- dlubal/api/rfem/guide_objects/texture_pb2.py +36 -0
- dlubal/api/rfem/guide_objects/texture_pb2.pyi +41 -0
- dlubal/api/rfem/guide_objects/visual_object_pb2.py +8 -8
- dlubal/api/rfem/guide_objects/visual_object_pb2.pyi +68 -62
- dlubal/api/rfem/ifc_objects/__init__.py +2 -0
- dlubal/api/rfem/ifc_objects/ifc_file_model_object_pb2.py +46 -0
- dlubal/api/rfem/ifc_objects/ifc_file_model_object_pb2.pyi +98 -0
- dlubal/api/rfem/ifc_objects/ifc_model_object_pb2.py +38 -0
- dlubal/api/rfem/ifc_objects/ifc_model_object_pb2.pyi +32 -0
- dlubal/api/rfem/imperfections/__init__.py +3 -5
- dlubal/api/rfem/imperfections/imperfection_case_pb2.py +26 -16
- dlubal/api/rfem/imperfections/imperfection_case_pb2.pyi +155 -98
- dlubal/api/rfem/imperfections/member_imperfection_pb2.py +17 -15
- dlubal/api/rfem/imperfections/member_imperfection_pb2.pyi +128 -128
- dlubal/api/rfem/imperfections/member_set_imperfection_pb2.py +17 -15
- dlubal/api/rfem/imperfections/member_set_imperfection_pb2.pyi +130 -130
- dlubal/api/rfem/layout_and_drawing/__init__.py +2 -0
- dlubal/api/rfem/layout_and_drawing/cad_line_pb2.py +69 -0
- dlubal/api/rfem/layout_and_drawing/cad_line_pb2.pyi +410 -0
- dlubal/api/rfem/layout_and_drawing/cad_line_point_pb2.py +39 -0
- dlubal/api/rfem/layout_and_drawing/cad_line_point_pb2.pyi +37 -0
- dlubal/api/rfem/load_wizards/__init__.py +7 -2
- dlubal/api/rfem/load_wizards/import_support_reactions_pb2.py +46 -0
- dlubal/api/rfem/load_wizards/import_support_reactions_pb2.pyi +91 -0
- dlubal/api/rfem/load_wizards/load_model_pb2.py +50 -0
- dlubal/api/rfem/load_wizards/load_model_pb2.pyi +113 -0
- dlubal/api/rfem/load_wizards/member_loads_from_area_load_pb2.py +46 -0
- dlubal/api/rfem/load_wizards/member_loads_from_area_load_pb2.pyi +93 -0
- dlubal/api/rfem/load_wizards/member_loads_from_free_line_load_pb2.py +45 -0
- dlubal/api/rfem/load_wizards/member_loads_from_free_line_load_pb2.pyi +110 -0
- dlubal/api/rfem/load_wizards/moving_load_pb2.py +52 -0
- dlubal/api/rfem/load_wizards/moving_load_pb2.pyi +715 -0
- dlubal/api/rfem/load_wizards/wind_profile_pb2.py +14 -10
- dlubal/api/rfem/load_wizards/wind_profile_pb2.pyi +748 -698
- dlubal/api/rfem/load_wizards/wind_simulation_pb2.py +22 -13
- dlubal/api/rfem/load_wizards/wind_simulation_pb2.pyi +107 -43
- dlubal/api/rfem/loading/__init__.py +16 -15
- dlubal/api/rfem/loading/action_combination_pb2.py +14 -6
- dlubal/api/rfem/loading/action_combination_pb2.pyi +118 -21
- dlubal/api/rfem/loading/action_pb2.py +21 -9
- dlubal/api/rfem/loading/action_pb2.pyi +676 -37
- dlubal/api/rfem/loading/combination_wizard_pb2.py +14 -7
- dlubal/api/rfem/loading/combination_wizard_pb2.pyi +61 -20
- dlubal/api/rfem/loading/design_situation_pb2.py +14 -5
- dlubal/api/rfem/loading/design_situation_pb2.pyi +1164 -9
- dlubal/api/rfem/loading/load_case_pb2.py +70 -43
- dlubal/api/rfem/loading/load_case_pb2.pyi +1151 -255
- dlubal/api/rfem/loading/load_combination_pb2.py +32 -15
- dlubal/api/rfem/loading/load_combination_pb2.pyi +312 -72
- dlubal/api/rfem/loading/modal_analysis_settings_pb2.py +18 -14
- dlubal/api/rfem/loading/modal_analysis_settings_pb2.pyi +133 -93
- dlubal/api/rfem/loading/optimization_settings_pb2.py +12 -8
- dlubal/api/rfem/loading/optimization_settings_pb2.pyi +81 -42
- dlubal/api/rfem/loading/pushover_analysis_settings_pb2.py +4 -4
- dlubal/api/rfem/loading/pushover_analysis_settings_pb2.pyi +8 -9
- dlubal/api/rfem/loading/relationship_between_load_cases_pb2.py +10 -6
- dlubal/api/rfem/loading/relationship_between_load_cases_pb2.pyi +44 -14
- dlubal/api/rfem/loading/result_combination_pb2.py +26 -9
- dlubal/api/rfem/loading/result_combination_pb2.pyi +266 -36
- dlubal/api/rfem/loading/spectral_analysis_settings_pb2.py +12 -12
- dlubal/api/rfem/loading/spectral_analysis_settings_pb2.pyi +45 -56
- dlubal/api/rfem/loading/stability_analysis_settings_pb2.py +10 -10
- dlubal/api/rfem/loading/stability_analysis_settings_pb2.pyi +53 -57
- dlubal/api/rfem/loading/static_analysis_settings_pb2.py +14 -12
- dlubal/api/rfem/loading/static_analysis_settings_pb2.pyi +65 -52
- dlubal/api/rfem/loading/time_history_analysis_settings_pb2.py +54 -0
- dlubal/api/rfem/loading/time_history_analysis_settings_pb2.pyi +167 -0
- dlubal/api/rfem/loading/wind_simulation_analysis_settings_pb2.py +18 -14
- dlubal/api/rfem/loading/wind_simulation_analysis_settings_pb2.pyi +116 -90
- dlubal/api/rfem/loads/__init__.py +19 -17
- dlubal/api/rfem/loads/additional_foundation_load_pb2.py +41 -0
- dlubal/api/rfem/loads/additional_foundation_load_pb2.pyi +80 -0
- dlubal/api/rfem/loads/cutting_pattern_load_pb2.py +40 -0
- dlubal/api/rfem/loads/cutting_pattern_load_pb2.pyi +49 -0
- dlubal/api/rfem/loads/free_circular_load_pb2.py +8 -8
- dlubal/api/rfem/loads/free_circular_load_pb2.pyi +57 -60
- dlubal/api/rfem/loads/free_concentrated_load_pb2.py +10 -8
- dlubal/api/rfem/loads/free_concentrated_load_pb2.pyi +70 -51
- dlubal/api/rfem/loads/free_line_load_pb2.py +14 -8
- dlubal/api/rfem/loads/free_line_load_pb2.pyi +108 -63
- dlubal/api/rfem/loads/free_polygon_load_pb2.py +12 -10
- dlubal/api/rfem/loads/free_polygon_load_pb2.pyi +80 -69
- dlubal/api/rfem/loads/free_rectangular_load_pb2.py +18 -14
- dlubal/api/rfem/loads/free_rectangular_load_pb2.pyi +114 -86
- dlubal/api/rfem/loads/imposed_line_deformation_pb2.py +2 -2
- dlubal/api/rfem/loads/imposed_nodal_deformation_pb2.py +2 -2
- dlubal/api/rfem/loads/line_load_pb2.py +26 -13
- dlubal/api/rfem/loads/line_load_pb2.pyi +189 -78
- dlubal/api/rfem/loads/line_set_load_pb2.py +26 -13
- dlubal/api/rfem/loads/line_set_load_pb2.pyi +196 -85
- dlubal/api/rfem/loads/member_load_pb2.py +44 -32
- dlubal/api/rfem/loads/member_load_pb2.pyi +334 -232
- dlubal/api/rfem/loads/member_set_load_pb2.py +44 -32
- dlubal/api/rfem/loads/member_set_load_pb2.pyi +336 -234
- dlubal/api/rfem/loads/nodal_load_pb2.py +14 -12
- dlubal/api/rfem/loads/nodal_load_pb2.pyi +101 -80
- dlubal/api/rfem/loads/opening_load_pb2.py +10 -9
- dlubal/api/rfem/loads/opening_load_pb2.pyi +39 -41
- dlubal/api/rfem/loads/solid_load_pb2.py +18 -18
- dlubal/api/rfem/loads/solid_load_pb2.pyi +81 -89
- dlubal/api/rfem/loads/solid_set_load_pb2.py +18 -18
- dlubal/api/rfem/loads/solid_set_load_pb2.pyi +84 -92
- dlubal/api/rfem/loads/surface_load_pb2.py +30 -22
- dlubal/api/rfem/loads/surface_load_pb2.pyi +203 -148
- dlubal/api/rfem/loads/surface_set_load_pb2.py +30 -22
- dlubal/api/rfem/loads/surface_set_load_pb2.pyi +210 -155
- dlubal/api/rfem/mesh/__init__.py +1 -0
- dlubal/api/rfem/mesh/mesh_settings_pb2.py +51 -0
- dlubal/api/rfem/mesh/mesh_settings_pb2.pyi +218 -0
- dlubal/api/rfem/object_id_pb2.py +39 -0
- dlubal/api/rfem/object_id_pb2.pyi +25 -0
- dlubal/api/rfem/object_type_pb2.py +36 -0
- dlubal/api/rfem/object_type_pb2.pyi +406 -0
- dlubal/api/rfem/result_objects/__init__.py +2 -1
- dlubal/api/rfem/result_objects/result_point_pb2.py +41 -0
- dlubal/api/rfem/result_objects/result_point_pb2.pyi +75 -0
- dlubal/api/rfem/result_objects/result_section_pb2.py +8 -8
- dlubal/api/rfem/result_objects/result_section_pb2.pyi +48 -51
- dlubal/api/rfem/results/__init__.py +4 -2
- dlubal/api/rfem/results/result_table_pb2.py +36 -0
- dlubal/api/rfem/results/result_table_pb2.pyi +1176 -0
- dlubal/api/rfem/results/results_query_pb2.py +7 -6
- dlubal/api/rfem/results/results_query_pb2.pyi +10 -5
- dlubal/api/rfem/results/results_type_pb2.py +36 -0
- dlubal/api/rfem/results/results_type_pb2.pyi +678 -0
- dlubal/api/rfem/results/settings/__init__.py +1 -0
- dlubal/api/rfem/results/settings/result_settings_pb2.py +38 -0
- dlubal/api/rfem/results/settings/result_settings_pb2.pyi +23 -0
- dlubal/api/rfem/rsection_stresses/__init__.py +1 -0
- dlubal/api/rfem/rsection_stresses/member_configuration_pb2.py +41 -0
- dlubal/api/rfem/rsection_stresses/member_configuration_pb2.pyi +53 -0
- dlubal/api/rfem/steel_design_objects/__init__.py +4 -4
- dlubal/api/rfem/steel_design_objects/steel_design_fr_configuration_pb2.py +24 -3
- dlubal/api/rfem/steel_design_objects/steel_design_fr_configuration_pb2.pyi +124 -3
- dlubal/api/rfem/steel_design_objects/steel_design_seismic_configuration_pb2.py +20 -3
- dlubal/api/rfem/steel_design_objects/steel_design_seismic_configuration_pb2.pyi +102 -3
- dlubal/api/rfem/steel_design_objects/steel_design_sls_configuration_pb2.py +108 -3
- dlubal/api/rfem/steel_design_objects/steel_design_sls_configuration_pb2.pyi +594 -3
- dlubal/api/rfem/steel_design_objects/steel_design_uls_configuration_pb2.py +108 -3
- dlubal/api/rfem/steel_design_objects/steel_design_uls_configuration_pb2.pyi +594 -3
- dlubal/api/rfem/steel_joint_design_addon_objects/__init__.py +2 -0
- dlubal/api/rfem/steel_joint_design_addon_objects/joint_stiffness_analysis_configuration_pb2.py +49 -0
- dlubal/api/rfem/steel_joint_design_addon_objects/joint_stiffness_analysis_configuration_pb2.pyi +91 -0
- dlubal/api/rfem/steel_joint_design_addon_objects/joint_uls_configuration_pb2.py +49 -0
- dlubal/api/rfem/steel_joint_design_addon_objects/joint_uls_configuration_pb2.pyi +91 -0
- dlubal/api/rfem/stress_analysis_objects/__init__.py +3 -0
- dlubal/api/rfem/stress_analysis_objects/line_welded_joint_configuration_pb2.py +41 -0
- dlubal/api/rfem/stress_analysis_objects/line_welded_joint_configuration_pb2.pyi +47 -0
- dlubal/api/rfem/stress_analysis_objects/solid_configuration_pb2.py +36 -0
- dlubal/api/rfem/stress_analysis_objects/solid_configuration_pb2.pyi +26 -0
- dlubal/api/rfem/stress_analysis_objects/surface_configuration_pb2.py +36 -0
- dlubal/api/rfem/stress_analysis_objects/surface_configuration_pb2.pyi +26 -0
- dlubal/api/rfem/structure_advanced/__init__.py +13 -9
- dlubal/api/rfem/structure_advanced/block_pb2.py +20 -16
- dlubal/api/rfem/structure_advanced/block_pb2.pyi +99 -83
- dlubal/api/rfem/structure_advanced/cutting_pattern_pb2.py +44 -0
- dlubal/api/rfem/structure_advanced/cutting_pattern_pb2.pyi +71 -0
- dlubal/api/rfem/structure_advanced/design_strip_pb2.py +61 -0
- dlubal/api/rfem/structure_advanced/design_strip_pb2.pyi +460 -0
- dlubal/api/rfem/structure_advanced/design_strip_wizard_pb2.py +53 -0
- dlubal/api/rfem/structure_advanced/design_strip_wizard_pb2.pyi +158 -0
- dlubal/api/rfem/structure_advanced/intersection_pb2.py +2 -2
- dlubal/api/rfem/structure_advanced/intersection_pb2.pyi +8 -8
- dlubal/api/rfem/structure_advanced/line_release_pb2.py +8 -6
- dlubal/api/rfem/structure_advanced/line_release_pb2.pyi +25 -14
- dlubal/api/rfem/structure_advanced/nodal_release_pb2.py +8 -4
- dlubal/api/rfem/structure_advanced/nodal_release_pb2.pyi +30 -11
- dlubal/api/rfem/structure_advanced/rigid_link_pb2.py +6 -6
- dlubal/api/rfem/structure_advanced/rigid_link_pb2.pyi +24 -24
- dlubal/api/rfem/structure_advanced/structure_modification_pb2.py +60 -22
- dlubal/api/rfem/structure_advanced/structure_modification_pb2.pyi +345 -53
- dlubal/api/rfem/structure_advanced/surface_cell_pb2.py +41 -0
- dlubal/api/rfem/structure_advanced/surface_cell_pb2.pyi +74 -0
- dlubal/api/rfem/structure_advanced/surface_release_pb2.py +8 -4
- dlubal/api/rfem/structure_advanced/surface_release_pb2.pyi +30 -11
- dlubal/api/rfem/structure_advanced/surface_results_adjustment_pb2.py +26 -20
- dlubal/api/rfem/structure_advanced/surface_results_adjustment_pb2.pyi +113 -88
- dlubal/api/rfem/structure_advanced/surfaces_contact_pb2.py +4 -2
- dlubal/api/rfem/structure_advanced/surfaces_contact_pb2.pyi +20 -5
- dlubal/api/rfem/structure_core/__init__.py +15 -15
- dlubal/api/rfem/structure_core/line_pb2.py +53 -19
- dlubal/api/rfem/structure_core/line_pb2.pyi +401 -109
- dlubal/api/rfem/structure_core/line_set_pb2.py +4 -4
- dlubal/api/rfem/structure_core/line_set_pb2.pyi +19 -10
- dlubal/api/rfem/structure_core/material_pb2.py +111 -67
- dlubal/api/rfem/structure_core/material_pb2.pyi +1235 -689
- dlubal/api/rfem/structure_core/member_pb2.py +192 -45
- dlubal/api/rfem/structure_core/member_pb2.pyi +2434 -317
- dlubal/api/rfem/structure_core/member_representative_pb2.py +288 -49
- dlubal/api/rfem/structure_core/member_representative_pb2.pyi +4011 -302
- dlubal/api/rfem/structure_core/member_set_pb2.py +122 -19
- dlubal/api/rfem/structure_core/member_set_pb2.pyi +1739 -79
- dlubal/api/rfem/structure_core/member_set_representative_pb2.py +406 -65
- dlubal/api/rfem/structure_core/member_set_representative_pb2.pyi +5761 -393
- dlubal/api/rfem/structure_core/node_pb2.py +14 -8
- dlubal/api/rfem/structure_core/node_pb2.pyi +93 -53
- dlubal/api/rfem/structure_core/opening_pb2.py +2 -2
- dlubal/api/rfem/structure_core/opening_pb2.pyi +12 -8
- dlubal/api/rfem/structure_core/section_pb2.py +42 -32
- dlubal/api/rfem/structure_core/section_pb2.pyi +1582 -1386
- dlubal/api/rfem/structure_core/solid_pb2.py +28 -18
- dlubal/api/rfem/structure_core/solid_pb2.pyi +202 -128
- dlubal/api/rfem/structure_core/solid_set_pb2.py +10 -4
- dlubal/api/rfem/structure_core/solid_set_pb2.pyi +49 -12
- dlubal/api/rfem/structure_core/surface_pb2.py +63 -33
- dlubal/api/rfem/structure_core/surface_pb2.pyi +346 -168
- dlubal/api/rfem/structure_core/surface_set_pb2.py +14 -12
- dlubal/api/rfem/structure_core/surface_set_pb2.pyi +67 -49
- dlubal/api/rfem/structure_core/thickness_pb2.py +42 -30
- dlubal/api/rfem/structure_core/thickness_pb2.pyi +356 -280
- dlubal/api/rfem/timber_design_objects/__init__.py +3 -3
- dlubal/api/rfem/timber_design_objects/timber_design_fr_configuration_pb2.py +92 -3
- dlubal/api/rfem/timber_design_objects/timber_design_fr_configuration_pb2.pyi +498 -3
- dlubal/api/rfem/timber_design_objects/timber_design_sls_configuration_pb2.py +92 -3
- dlubal/api/rfem/timber_design_objects/timber_design_sls_configuration_pb2.pyi +498 -3
- dlubal/api/rfem/timber_design_objects/timber_design_uls_configuration_pb2.py +132 -3
- dlubal/api/rfem/timber_design_objects/timber_design_uls_configuration_pb2.pyi +726 -3
- dlubal/api/rfem/types_for_aluminum_design/__init__.py +4 -3
- dlubal/api/rfem/types_for_aluminum_design/aluminum_boundary_conditions_pb2.py +51 -0
- dlubal/api/rfem/types_for_aluminum_design/aluminum_boundary_conditions_pb2.pyi +192 -0
- dlubal/api/rfem/types_for_aluminum_design/aluminum_effective_lengths_pb2.py +58 -23
- dlubal/api/rfem/types_for_aluminum_design/aluminum_effective_lengths_pb2.pyi +315 -83
- dlubal/api/rfem/types_for_aluminum_design/aluminum_member_local_section_reduction_pb2.py +14 -5
- dlubal/api/rfem/types_for_aluminum_design/aluminum_member_local_section_reduction_pb2.pyi +141 -7
- dlubal/api/rfem/types_for_aluminum_design/aluminum_member_transverse_weld_pb2.py +14 -4
- dlubal/api/rfem/types_for_aluminum_design/aluminum_member_transverse_weld_pb2.pyi +76 -7
- dlubal/api/rfem/types_for_concrete_design/__init__.py +5 -5
- dlubal/api/rfem/types_for_concrete_design/concrete_durability_pb2.py +34 -34
- dlubal/api/rfem/types_for_concrete_design/concrete_durability_pb2.pyi +164 -176
- dlubal/api/rfem/types_for_concrete_design/concrete_effective_lengths_pb2.py +74 -33
- dlubal/api/rfem/types_for_concrete_design/concrete_effective_lengths_pb2.pyi +423 -113
- dlubal/api/rfem/types_for_concrete_design/punching_reinforcement_pb2.py +24 -18
- dlubal/api/rfem/types_for_concrete_design/punching_reinforcement_pb2.pyi +217 -128
- dlubal/api/rfem/types_for_concrete_design/reinforcement_direction_pb2.py +4 -4
- dlubal/api/rfem/types_for_concrete_design/reinforcement_direction_pb2.pyi +13 -14
- dlubal/api/rfem/types_for_concrete_design/surface_reinforcement_pb2.py +47 -39
- dlubal/api/rfem/types_for_concrete_design/surface_reinforcement_pb2.pyi +546 -381
- dlubal/api/rfem/types_for_craneway_design/__init__.py +2 -0
- dlubal/api/rfem/types_for_craneway_design/crane_pb2.py +36 -0
- dlubal/api/rfem/types_for_craneway_design/crane_pb2.pyi +24 -0
- dlubal/api/rfem/types_for_craneway_design/craneway_pb2.py +52 -0
- dlubal/api/rfem/types_for_craneway_design/craneway_pb2.pyi +117 -0
- dlubal/api/rfem/types_for_foundations/__init__.py +1 -0
- dlubal/api/rfem/types_for_foundations/single_foundation_pb2.py +79 -0
- dlubal/api/rfem/types_for_foundations/single_foundation_pb2.pyi +336 -0
- dlubal/api/rfem/types_for_glass_design/__init__.py +1 -0
- dlubal/api/rfem/types_for_glass_design/glass_composition_model_pb2.py +91 -0
- dlubal/api/rfem/types_for_glass_design/glass_composition_model_pb2.pyi +456 -0
- dlubal/api/rfem/types_for_lines/__init__.py +6 -4
- dlubal/api/rfem/types_for_lines/cutting_line_setting_pb2.py +38 -0
- dlubal/api/rfem/types_for_lines/cutting_line_setting_pb2.pyi +30 -0
- dlubal/api/rfem/types_for_lines/line_hinge_pb2.py +121 -69
- dlubal/api/rfem/types_for_lines/line_hinge_pb2.pyi +826 -428
- dlubal/api/rfem/types_for_lines/line_link_pb2.py +43 -0
- dlubal/api/rfem/types_for_lines/line_link_pb2.pyi +66 -0
- dlubal/api/rfem/types_for_lines/line_mesh_refinement_pb2.py +4 -4
- dlubal/api/rfem/types_for_lines/line_mesh_refinement_pb2.pyi +25 -26
- dlubal/api/rfem/types_for_lines/line_support_pb2.py +124 -92
- dlubal/api/rfem/types_for_lines/line_support_pb2.pyi +884 -699
- dlubal/api/rfem/types_for_lines/line_welded_joint_pb2.py +10 -8
- dlubal/api/rfem/types_for_lines/line_welded_joint_pb2.pyi +63 -56
- dlubal/api/rfem/types_for_members/__init__.py +14 -13
- dlubal/api/rfem/types_for_members/design_support_pb2.py +28 -16
- dlubal/api/rfem/types_for_members/design_support_pb2.pyi +206 -119
- dlubal/api/rfem/types_for_members/diagonal_brace_pb2.py +46 -0
- dlubal/api/rfem/types_for_members/diagonal_brace_pb2.pyi +103 -0
- dlubal/api/rfem/types_for_members/member_definable_stiffness_pb2.py +2 -2
- dlubal/api/rfem/types_for_members/member_eccentricity_pb2.py +14 -14
- dlubal/api/rfem/types_for_members/member_eccentricity_pb2.pyi +59 -63
- dlubal/api/rfem/types_for_members/member_hinge_pb2.py +214 -116
- dlubal/api/rfem/types_for_members/member_hinge_pb2.pyi +1286 -742
- dlubal/api/rfem/types_for_members/member_nonlinearity_pb2.py +4 -4
- dlubal/api/rfem/types_for_members/member_nonlinearity_pb2.pyi +40 -41
- dlubal/api/rfem/types_for_members/member_openings_pb2.py +12 -4
- dlubal/api/rfem/types_for_members/member_openings_pb2.pyi +68 -7
- dlubal/api/rfem/types_for_members/member_result_intermediate_point_pb2.py +6 -4
- dlubal/api/rfem/types_for_members/member_result_intermediate_point_pb2.pyi +18 -6
- dlubal/api/rfem/types_for_members/member_rotational_restraint_pb2.py +16 -14
- dlubal/api/rfem/types_for_members/member_rotational_restraint_pb2.pyi +66 -50
- dlubal/api/rfem/types_for_members/member_shear_panel_pb2.py +6 -6
- dlubal/api/rfem/types_for_members/member_shear_panel_pb2.pyi +32 -34
- dlubal/api/rfem/types_for_members/member_spring_pb2.py +18 -16
- dlubal/api/rfem/types_for_members/member_spring_pb2.pyi +90 -80
- dlubal/api/rfem/types_for_members/member_stiffness_modification_pb2.py +14 -12
- dlubal/api/rfem/types_for_members/member_stiffness_modification_pb2.pyi +77 -68
- dlubal/api/rfem/types_for_members/member_support_pb2.py +14 -14
- dlubal/api/rfem/types_for_members/member_support_pb2.pyi +90 -96
- dlubal/api/rfem/types_for_members/member_transverse_stiffener_pb2.py +14 -4
- dlubal/api/rfem/types_for_members/member_transverse_stiffener_pb2.pyi +120 -9
- dlubal/api/rfem/types_for_nodes/__init__.py +3 -2
- dlubal/api/rfem/types_for_nodes/nodal_link_pb2.py +43 -0
- dlubal/api/rfem/types_for_nodes/nodal_link_pb2.pyi +74 -0
- dlubal/api/rfem/types_for_nodes/nodal_mesh_refinement_pb2.py +6 -6
- dlubal/api/rfem/types_for_nodes/nodal_mesh_refinement_pb2.pyi +19 -21
- dlubal/api/rfem/types_for_nodes/nodal_support_pb2.py +176 -136
- dlubal/api/rfem/types_for_nodes/nodal_support_pb2.pyi +1293 -1039
- dlubal/api/rfem/types_for_solids/__init__.py +3 -3
- dlubal/api/rfem/types_for_solids/solid_contacts_pb2.py +6 -6
- dlubal/api/rfem/types_for_solids/solid_contacts_pb2.pyi +27 -29
- dlubal/api/rfem/types_for_solids/solid_gas_pb2.py +2 -2
- dlubal/api/rfem/types_for_solids/solid_gas_pb2.pyi +8 -8
- dlubal/api/rfem/types_for_solids/solid_mesh_refinement_pb2.py +2 -2
- dlubal/api/rfem/types_for_solids/solid_mesh_refinement_pb2.pyi +4 -4
- dlubal/api/rfem/types_for_special_objects/__init__.py +4 -4
- dlubal/api/rfem/types_for_special_objects/line_release_type_pb2.py +122 -71
- dlubal/api/rfem/types_for_special_objects/line_release_type_pb2.pyi +796 -442
- dlubal/api/rfem/types_for_special_objects/nodal_release_type_pb2.py +165 -77
- dlubal/api/rfem/types_for_special_objects/nodal_release_type_pb2.pyi +1215 -564
- dlubal/api/rfem/types_for_special_objects/surface_release_type_pb2.py +46 -34
- dlubal/api/rfem/types_for_special_objects/surface_release_type_pb2.pyi +277 -209
- dlubal/api/rfem/types_for_special_objects/surfaces_contact_type_pb2.py +10 -10
- dlubal/api/rfem/types_for_special_objects/surfaces_contact_type_pb2.pyi +42 -46
- dlubal/api/rfem/types_for_steel_design/__init__.py +4 -3
- dlubal/api/rfem/types_for_steel_design/steel_boundary_conditions_pb2.py +18 -9
- dlubal/api/rfem/types_for_steel_design/steel_boundary_conditions_pb2.pyi +154 -22
- dlubal/api/rfem/types_for_steel_design/steel_effective_lengths_pb2.py +84 -57
- dlubal/api/rfem/types_for_steel_design/steel_effective_lengths_pb2.pyi +423 -236
- dlubal/api/rfem/types_for_steel_design/steel_member_local_section_reduction_pb2.py +14 -5
- dlubal/api/rfem/types_for_steel_design/steel_member_local_section_reduction_pb2.pyi +141 -7
- dlubal/api/rfem/types_for_steel_design/steel_member_transverse_weld_pb2.py +48 -0
- dlubal/api/rfem/types_for_steel_design/steel_member_transverse_weld_pb2.pyi +105 -0
- dlubal/api/rfem/types_for_steel_joints/__init__.py +1 -0
- dlubal/api/rfem/types_for_steel_joints/steel_joint_pb2.py +51 -0
- dlubal/api/rfem/types_for_steel_joints/steel_joint_pb2.pyi +160 -0
- dlubal/api/rfem/types_for_surfaces/__init__.py +4 -4
- dlubal/api/rfem/types_for_surfaces/surface_eccentricity_pb2.py +8 -8
- dlubal/api/rfem/types_for_surfaces/surface_eccentricity_pb2.pyi +28 -31
- dlubal/api/rfem/types_for_surfaces/surface_mesh_refinement_pb2.py +2 -2
- dlubal/api/rfem/types_for_surfaces/surface_mesh_refinement_pb2.pyi +4 -4
- dlubal/api/rfem/types_for_surfaces/surface_stiffness_modification_pb2.py +6 -6
- dlubal/api/rfem/types_for_surfaces/surface_stiffness_modification_pb2.pyi +36 -30
- dlubal/api/rfem/types_for_surfaces/surface_support_pb2.py +8 -8
- dlubal/api/rfem/types_for_surfaces/surface_support_pb2.pyi +37 -38
- dlubal/api/rfem/types_for_timber_design/__init__.py +6 -5
- dlubal/api/rfem/types_for_timber_design/timber_effective_lengths_pb2.py +72 -23
- dlubal/api/rfem/types_for_timber_design/timber_effective_lengths_pb2.pyi +404 -65
- dlubal/api/rfem/types_for_timber_design/timber_member_local_section_reduction_pb2.py +14 -4
- dlubal/api/rfem/types_for_timber_design/timber_member_local_section_reduction_pb2.pyi +96 -7
- dlubal/api/rfem/types_for_timber_design/timber_moisture_class_pb2.py +4 -4
- dlubal/api/rfem/types_for_timber_design/timber_moisture_class_pb2.pyi +17 -14
- dlubal/api/rfem/types_for_timber_design/timber_screw_type_pb2.py +38 -0
- dlubal/api/rfem/types_for_timber_design/timber_screw_type_pb2.pyi +58 -0
- dlubal/api/rfem/types_for_timber_design/timber_service_class_pb2.py +4 -4
- dlubal/api/rfem/types_for_timber_design/timber_service_class_pb2.pyi +17 -14
- dlubal/api/rfem/types_for_timber_design/timber_service_conditions_pb2.py +8 -8
- dlubal/api/rfem/types_for_timber_design/timber_service_conditions_pb2.pyi +61 -56
- dlubal/api/rfem/types_for_wind_simulation/__init__.py +2 -0
- dlubal/api/rfem/types_for_wind_simulation/roughness_and_permeability_pb2.py +40 -0
- dlubal/api/rfem/types_for_wind_simulation/roughness_and_permeability_pb2.pyi +85 -0
- dlubal/api/rfem/types_for_wind_simulation/shrink_wrapping_pb2.py +40 -0
- dlubal/api/rfem/types_for_wind_simulation/shrink_wrapping_pb2.pyi +59 -0
- dlubal/api/rsection/__init__.py +14 -0
- dlubal/api/rsection/all_pb2.py +36 -0
- dlubal/api/rsection/all_pb2.pyi +9 -0
- dlubal/api/rsection/application.py +508 -0
- dlubal/api/rsection/application_pb2.py +48 -0
- dlubal/api/rsection/application_pb2.pyi +39 -0
- dlubal/api/rsection/application_pb2_grpc.py +1293 -0
- dlubal/api/rsection/base_data_pb2.py +58 -0
- dlubal/api/rsection/base_data_pb2.pyi +158 -0
- dlubal/api/rsection/global_parameters/__init__.py +1 -0
- dlubal/api/rsection/global_parameters/global_parameter_pb2.py +40 -0
- dlubal/api/rsection/global_parameters/global_parameter_pb2.pyi +150 -0
- dlubal/api/rsection/guide_objects/__init__.py +4 -0
- dlubal/api/rsection/guide_objects/dimension_pb2.py +71 -0
- dlubal/api/rsection/guide_objects/dimension_pb2.pyi +312 -0
- dlubal/api/rsection/guide_objects/dxf_file_model_object_pb2.py +43 -0
- dlubal/api/rsection/guide_objects/dxf_file_model_object_pb2.pyi +125 -0
- dlubal/api/rsection/guide_objects/group_of_object_selections_pb2.py +38 -0
- dlubal/api/rsection/guide_objects/group_of_object_selections_pb2.pyi +35 -0
- dlubal/api/rsection/guide_objects/object_snap_pb2.py +38 -0
- dlubal/api/rsection/guide_objects/object_snap_pb2.pyi +86 -0
- dlubal/api/rsection/internal_forces/__init__.py +1 -0
- dlubal/api/rsection/internal_forces/internal_forces_pb2.py +38 -0
- dlubal/api/rsection/internal_forces/internal_forces_pb2.pyi +58 -0
- dlubal/api/rsection/loading/__init__.py +2 -0
- dlubal/api/rsection/loading/load_case_pb2.py +38 -0
- dlubal/api/rsection/loading/load_case_pb2.pyi +616 -0
- dlubal/api/rsection/loading/load_combination_pb2.py +42 -0
- dlubal/api/rsection/loading/load_combination_pb2.pyi +113 -0
- dlubal/api/rsection/object_id_pb2.py +39 -0
- dlubal/api/rsection/object_id_pb2.pyi +25 -0
- dlubal/api/rsection/object_type_pb2.py +36 -0
- dlubal/api/rsection/object_type_pb2.pyi +60 -0
- dlubal/api/rsection/results/__init__.py +4 -0
- dlubal/api/rsection/results/result_table_pb2.py +36 -0
- dlubal/api/rsection/results/result_table_pb2.pyi +10 -0
- dlubal/api/rsection/results/results_query_pb2.py +41 -0
- dlubal/api/rsection/results/results_query_pb2.pyi +31 -0
- dlubal/api/rsection/results/results_type_pb2.py +36 -0
- dlubal/api/rsection/results/results_type_pb2.pyi +10 -0
- dlubal/api/rsection/results/settings/__init__.py +1 -0
- dlubal/api/rsection/results/settings/result_settings_pb2.py +38 -0
- dlubal/api/rsection/results/settings/result_settings_pb2.pyi +23 -0
- dlubal/api/rsection/rsection_stresses/__init__.py +1 -0
- dlubal/api/rsection/rsection_stresses/member_configuration_pb2.py +41 -0
- dlubal/api/rsection/rsection_stresses/member_configuration_pb2.pyi +53 -0
- dlubal/api/rsection/structure_advanced/__init__.py +1 -0
- dlubal/api/rsection/structure_advanced/block_pb2.py +55 -0
- dlubal/api/rsection/structure_advanced/block_pb2.pyi +190 -0
- dlubal/api/rsection/structure_core/__init__.py +15 -0
- dlubal/api/rsection/structure_core/bar_pb2.py +40 -0
- dlubal/api/rsection/structure_core/bar_pb2.pyi +102 -0
- dlubal/api/rsection/structure_core/element_pb2.py +53 -0
- dlubal/api/rsection/structure_core/element_pb2.pyi +204 -0
- dlubal/api/rsection/structure_core/layer_group_pb2.py +36 -0
- dlubal/api/rsection/structure_core/layer_group_pb2.pyi +22 -0
- dlubal/api/rsection/structure_core/layer_pb2.py +38 -0
- dlubal/api/rsection/structure_core/layer_pb2.pyi +44 -0
- dlubal/api/rsection/structure_core/line_pb2.py +59 -0
- dlubal/api/rsection/structure_core/line_pb2.pyi +222 -0
- dlubal/api/rsection/structure_core/material_pb2.py +110 -0
- dlubal/api/rsection/structure_core/material_pb2.pyi +1037 -0
- dlubal/api/rsection/structure_core/opening_pb2.py +37 -0
- dlubal/api/rsection/structure_core/opening_pb2.pyi +39 -0
- dlubal/api/rsection/structure_core/part_pb2.py +39 -0
- dlubal/api/rsection/structure_core/part_pb2.pyi +58 -0
- dlubal/api/rsection/structure_core/point_pb2.py +43 -0
- dlubal/api/rsection/structure_core/point_pb2.pyi +109 -0
- dlubal/api/rsection/structure_core/reinforcement_layer_pb2.py +36 -0
- dlubal/api/rsection/structure_core/reinforcement_layer_pb2.pyi +23 -0
- dlubal/api/rsection/structure_core/section_pb2.py +50 -0
- dlubal/api/rsection/structure_core/section_pb2.pyi +1723 -0
- dlubal/api/rsection/structure_core/stirrup_pb2.py +36 -0
- dlubal/api/rsection/structure_core/stirrup_pb2.pyi +42 -0
- dlubal/api/rsection/structure_core/stress_point_pb2.py +45 -0
- dlubal/api/rsection/structure_core/stress_point_pb2.pyi +101 -0
- dlubal/api/rsection/structure_core/subpanel_pb2.py +38 -0
- dlubal/api/rsection/structure_core/subpanel_pb2.pyi +49 -0
- dlubal/api/rsection/structure_core/weld_pb2.py +38 -0
- dlubal/api/rsection/structure_core/weld_pb2.pyi +46 -0
- dlubal/api/rstab/__init__.py +37 -0
- dlubal/api/rstab/all_pb2.py +36 -0
- dlubal/api/rstab/all_pb2.pyi +9 -0
- dlubal/api/rstab/aluminum_design_objects/__init__.py +2 -0
- dlubal/api/rstab/aluminum_design_objects/aluminum_design_sls_configuration_pb2.py +77 -0
- dlubal/api/rstab/aluminum_design_objects/aluminum_design_sls_configuration_pb2.pyi +261 -0
- dlubal/api/rstab/aluminum_design_objects/aluminum_design_uls_configuration_pb2.py +77 -0
- dlubal/api/rstab/aluminum_design_objects/aluminum_design_uls_configuration_pb2.pyi +261 -0
- dlubal/api/rstab/application.py +740 -0
- dlubal/api/rstab/application_pb2.py +69 -0
- dlubal/api/rstab/application_pb2.pyi +121 -0
- dlubal/api/rstab/application_pb2_grpc.py +1736 -0
- dlubal/api/rstab/base_data_objects/__init__.py +1 -0
- dlubal/api/rstab/base_data_objects/terrain_pb2.py +42 -0
- dlubal/api/rstab/base_data_objects/terrain_pb2.pyi +71 -0
- dlubal/api/rstab/base_data_pb2.py +92 -0
- dlubal/api/rstab/base_data_pb2.pyi +2361 -0
- dlubal/api/rstab/calculation_diagrams/__init__.py +1 -0
- dlubal/api/rstab/calculation_diagrams/calculation_diagram_pb2.py +61 -0
- dlubal/api/rstab/calculation_diagrams/calculation_diagram_pb2.pyi +1762 -0
- dlubal/api/rstab/concrete_design_objects/__init__.py +4 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_fr_configuration_pb2.py +93 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_fr_configuration_pb2.pyi +369 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_seismic_configuration_pb2.py +57 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_seismic_configuration_pb2.pyi +171 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_sls_configuration_pb2.py +61 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_sls_configuration_pb2.pyi +181 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_uls_configuration_pb2.py +109 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_uls_configuration_pb2.pyi +445 -0
- dlubal/api/rstab/design_addons_pb2.py +36 -0
- dlubal/api/rstab/design_addons_pb2.pyi +22 -0
- dlubal/api/rstab/dynamic_analysis_pb2.py +36 -0
- dlubal/api/rstab/dynamic_analysis_pb2.pyi +23 -0
- dlubal/api/rstab/dynamic_loads/__init__.py +3 -0
- dlubal/api/rstab/dynamic_loads/accelerogram_pb2.py +42 -0
- dlubal/api/rstab/dynamic_loads/accelerogram_pb2.pyi +67 -0
- dlubal/api/rstab/dynamic_loads/response_spectrum_pb2.py +44 -0
- dlubal/api/rstab/dynamic_loads/response_spectrum_pb2.pyi +91 -0
- dlubal/api/rstab/dynamic_loads/time_diagram_pb2.py +46 -0
- dlubal/api/rstab/dynamic_loads/time_diagram_pb2.pyi +83 -0
- dlubal/api/rstab/foundation_design_objects/__init__.py +2 -0
- dlubal/api/rstab/foundation_design_objects/concrete_design_configuration_pb2.py +41 -0
- dlubal/api/rstab/foundation_design_objects/concrete_design_configuration_pb2.pyi +47 -0
- dlubal/api/rstab/foundation_design_objects/geotechnical_design_configuration_pb2.py +41 -0
- dlubal/api/rstab/foundation_design_objects/geotechnical_design_configuration_pb2.pyi +47 -0
- dlubal/api/rstab/global_parameters/__init__.py +1 -0
- dlubal/api/rstab/global_parameters/global_parameter_pb2.py +40 -0
- dlubal/api/rstab/global_parameters/global_parameter_pb2.pyi +278 -0
- dlubal/api/rstab/guide_objects/__init__.py +15 -0
- dlubal/api/rstab/guide_objects/building_grid_pb2.py +53 -0
- dlubal/api/rstab/guide_objects/building_grid_pb2.pyi +207 -0
- dlubal/api/rstab/guide_objects/clipping_box_pb2.py +37 -0
- dlubal/api/rstab/guide_objects/clipping_box_pb2.pyi +40 -0
- dlubal/api/rstab/guide_objects/clipping_plane_pb2.py +45 -0
- dlubal/api/rstab/guide_objects/clipping_plane_pb2.pyi +121 -0
- dlubal/api/rstab/guide_objects/coordinate_system_pb2.py +41 -0
- dlubal/api/rstab/guide_objects/coordinate_system_pb2.pyi +91 -0
- dlubal/api/rstab/guide_objects/dimension_pb2.py +69 -0
- dlubal/api/rstab/guide_objects/dimension_pb2.pyi +280 -0
- dlubal/api/rstab/guide_objects/dxf_file_model_object_pb2.py +41 -0
- dlubal/api/rstab/guide_objects/dxf_file_model_object_pb2.pyi +121 -0
- dlubal/api/rstab/guide_objects/dxf_model_object_pb2.py +36 -0
- dlubal/api/rstab/guide_objects/dxf_model_object_pb2.pyi +15 -0
- dlubal/api/rstab/guide_objects/group_of_object_selections_pb2.py +38 -0
- dlubal/api/rstab/guide_objects/group_of_object_selections_pb2.pyi +35 -0
- dlubal/api/rstab/guide_objects/guideline_pb2.py +42 -0
- dlubal/api/rstab/guide_objects/guideline_pb2.pyi +90 -0
- dlubal/api/rstab/guide_objects/layer_group_pb2.py +36 -0
- dlubal/api/rstab/guide_objects/layer_group_pb2.pyi +22 -0
- dlubal/api/rstab/guide_objects/layer_pb2.py +38 -0
- dlubal/api/rstab/guide_objects/layer_pb2.pyi +44 -0
- dlubal/api/rstab/guide_objects/note_pb2.py +43 -0
- dlubal/api/rstab/guide_objects/note_pb2.pyi +117 -0
- dlubal/api/rstab/guide_objects/object_snap_pb2.py +38 -0
- dlubal/api/rstab/guide_objects/object_snap_pb2.pyi +86 -0
- dlubal/api/rstab/guide_objects/texture_pb2.py +36 -0
- dlubal/api/rstab/guide_objects/texture_pb2.pyi +41 -0
- dlubal/api/rstab/guide_objects/visual_object_pb2.py +43 -0
- dlubal/api/rstab/guide_objects/visual_object_pb2.pyi +135 -0
- dlubal/api/rstab/ifc_objects/__init__.py +2 -0
- dlubal/api/rstab/ifc_objects/ifc_file_model_object_pb2.py +46 -0
- dlubal/api/rstab/ifc_objects/ifc_file_model_object_pb2.pyi +98 -0
- dlubal/api/rstab/ifc_objects/ifc_model_object_pb2.py +38 -0
- dlubal/api/rstab/ifc_objects/ifc_model_object_pb2.pyi +32 -0
- dlubal/api/rstab/imperfections/__init__.py +3 -0
- dlubal/api/rstab/imperfections/imperfection_case_pb2.py +60 -0
- dlubal/api/rstab/imperfections/imperfection_case_pb2.pyi +215 -0
- dlubal/api/rstab/imperfections/member_imperfection_pb2.py +50 -0
- dlubal/api/rstab/imperfections/member_imperfection_pb2.pyi +205 -0
- dlubal/api/rstab/imperfections/member_set_imperfection_pb2.py +50 -0
- dlubal/api/rstab/imperfections/member_set_imperfection_pb2.pyi +203 -0
- dlubal/api/rstab/load_wizards/__init__.py +7 -0
- dlubal/api/rstab/load_wizards/import_support_reactions_pb2.py +46 -0
- dlubal/api/rstab/load_wizards/import_support_reactions_pb2.pyi +89 -0
- dlubal/api/rstab/load_wizards/load_model_pb2.py +50 -0
- dlubal/api/rstab/load_wizards/load_model_pb2.pyi +113 -0
- dlubal/api/rstab/load_wizards/member_loads_from_area_load_pb2.py +46 -0
- dlubal/api/rstab/load_wizards/member_loads_from_area_load_pb2.pyi +93 -0
- dlubal/api/rstab/load_wizards/member_loads_from_free_line_load_pb2.py +45 -0
- dlubal/api/rstab/load_wizards/member_loads_from_free_line_load_pb2.pyi +110 -0
- dlubal/api/rstab/load_wizards/moving_load_pb2.py +52 -0
- dlubal/api/rstab/load_wizards/moving_load_pb2.pyi +715 -0
- dlubal/api/rstab/load_wizards/wind_profile_pb2.py +48 -0
- dlubal/api/rstab/load_wizards/wind_profile_pb2.pyi +777 -0
- dlubal/api/rstab/load_wizards/wind_simulation_pb2.py +55 -0
- dlubal/api/rstab/load_wizards/wind_simulation_pb2.pyi +148 -0
- dlubal/api/rstab/loading/__init__.py +16 -0
- dlubal/api/rstab/loading/action_combination_pb2.py +48 -0
- dlubal/api/rstab/loading/action_combination_pb2.pyi +153 -0
- dlubal/api/rstab/loading/action_pb2.py +54 -0
- dlubal/api/rstab/loading/action_pb2.pyi +719 -0
- dlubal/api/rstab/loading/combination_wizard_pb2.py +47 -0
- dlubal/api/rstab/loading/combination_wizard_pb2.pyi +106 -0
- dlubal/api/rstab/loading/design_situation_pb2.py +47 -0
- dlubal/api/rstab/loading/design_situation_pb2.pyi +1196 -0
- dlubal/api/rstab/loading/load_case_pb2.py +102 -0
- dlubal/api/rstab/loading/load_case_pb2.pyi +1365 -0
- dlubal/api/rstab/loading/load_combination_pb2.py +65 -0
- dlubal/api/rstab/loading/load_combination_pb2.pyi +384 -0
- dlubal/api/rstab/loading/modal_analysis_settings_pb2.py +52 -0
- dlubal/api/rstab/loading/modal_analysis_settings_pb2.pyi +147 -0
- dlubal/api/rstab/loading/optimization_settings_pb2.py +46 -0
- dlubal/api/rstab/loading/optimization_settings_pb2.pyi +111 -0
- dlubal/api/rstab/loading/pushover_analysis_settings_pb2.py +38 -0
- dlubal/api/rstab/loading/pushover_analysis_settings_pb2.pyi +50 -0
- dlubal/api/rstab/loading/relationship_between_load_cases_pb2.py +44 -0
- dlubal/api/rstab/loading/relationship_between_load_cases_pb2.pyi +66 -0
- dlubal/api/rstab/loading/result_combination_pb2.py +59 -0
- dlubal/api/rstab/loading/result_combination_pb2.pyi +300 -0
- dlubal/api/rstab/loading/spectral_analysis_settings_pb2.py +46 -0
- dlubal/api/rstab/loading/spectral_analysis_settings_pb2.pyi +80 -0
- dlubal/api/rstab/loading/stability_analysis_settings_pb2.py +44 -0
- dlubal/api/rstab/loading/stability_analysis_settings_pb2.pyi +114 -0
- dlubal/api/rstab/loading/static_analysis_settings_pb2.py +42 -0
- dlubal/api/rstab/loading/static_analysis_settings_pb2.pyi +110 -0
- dlubal/api/rstab/loading/time_history_analysis_settings_pb2.py +54 -0
- dlubal/api/rstab/loading/time_history_analysis_settings_pb2.pyi +159 -0
- dlubal/api/rstab/loading/wind_simulation_analysis_settings_pb2.py +52 -0
- dlubal/api/rstab/loading/wind_simulation_analysis_settings_pb2.pyi +176 -0
- dlubal/api/rstab/loads/__init__.py +5 -0
- dlubal/api/rstab/loads/additional_foundation_load_pb2.py +41 -0
- dlubal/api/rstab/loads/additional_foundation_load_pb2.pyi +80 -0
- dlubal/api/rstab/loads/imposed_nodal_deformation_pb2.py +37 -0
- dlubal/api/rstab/loads/imposed_nodal_deformation_pb2.pyi +43 -0
- dlubal/api/rstab/loads/member_load_pb2.py +79 -0
- dlubal/api/rstab/loads/member_load_pb2.pyi +492 -0
- dlubal/api/rstab/loads/member_set_load_pb2.py +79 -0
- dlubal/api/rstab/loads/member_set_load_pb2.pyi +490 -0
- dlubal/api/rstab/loads/nodal_load_pb2.py +49 -0
- dlubal/api/rstab/loads/nodal_load_pb2.pyi +224 -0
- dlubal/api/rstab/object_id_pb2.py +39 -0
- dlubal/api/rstab/object_id_pb2.pyi +25 -0
- dlubal/api/rstab/object_type_pb2.py +36 -0
- dlubal/api/rstab/object_type_pb2.pyi +248 -0
- dlubal/api/rstab/results/__init__.py +4 -0
- dlubal/api/rstab/results/result_table_pb2.py +36 -0
- dlubal/api/rstab/results/result_table_pb2.pyi +480 -0
- dlubal/api/rstab/results/results_query_pb2.py +41 -0
- dlubal/api/rstab/results/results_query_pb2.pyi +31 -0
- dlubal/api/rstab/results/results_type_pb2.py +36 -0
- dlubal/api/rstab/results/results_type_pb2.pyi +338 -0
- dlubal/api/rstab/results/settings/__init__.py +1 -0
- dlubal/api/rstab/results/settings/result_settings_pb2.py +38 -0
- dlubal/api/rstab/results/settings/result_settings_pb2.pyi +23 -0
- dlubal/api/rstab/rsection_stresses/__init__.py +1 -0
- dlubal/api/rstab/rsection_stresses/member_configuration_pb2.py +41 -0
- dlubal/api/rstab/rsection_stresses/member_configuration_pb2.pyi +53 -0
- dlubal/api/rstab/steel_design_objects/__init__.py +4 -0
- dlubal/api/rstab/steel_design_objects/steel_design_fr_configuration_pb2.py +57 -0
- dlubal/api/rstab/steel_design_objects/steel_design_fr_configuration_pb2.pyi +143 -0
- dlubal/api/rstab/steel_design_objects/steel_design_seismic_configuration_pb2.py +53 -0
- dlubal/api/rstab/steel_design_objects/steel_design_seismic_configuration_pb2.pyi +121 -0
- dlubal/api/rstab/steel_design_objects/steel_design_sls_configuration_pb2.py +141 -0
- dlubal/api/rstab/steel_design_objects/steel_design_sls_configuration_pb2.pyi +613 -0
- dlubal/api/rstab/steel_design_objects/steel_design_uls_configuration_pb2.py +141 -0
- dlubal/api/rstab/steel_design_objects/steel_design_uls_configuration_pb2.pyi +613 -0
- dlubal/api/rstab/structure_advanced/__init__.py +4 -0
- dlubal/api/rstab/structure_advanced/block_pb2.py +55 -0
- dlubal/api/rstab/structure_advanced/block_pb2.pyi +192 -0
- dlubal/api/rstab/structure_advanced/cutting_pattern_pb2.py +44 -0
- dlubal/api/rstab/structure_advanced/cutting_pattern_pb2.pyi +71 -0
- dlubal/api/rstab/structure_advanced/nodal_release_pb2.py +42 -0
- dlubal/api/rstab/structure_advanced/nodal_release_pb2.pyi +61 -0
- dlubal/api/rstab/structure_advanced/structure_modification_pb2.py +66 -0
- dlubal/api/rstab/structure_advanced/structure_modification_pb2.pyi +255 -0
- dlubal/api/rstab/structure_core/__init__.py +7 -0
- dlubal/api/rstab/structure_core/material_pb2.py +112 -0
- dlubal/api/rstab/structure_core/material_pb2.pyi +1047 -0
- dlubal/api/rstab/structure_core/member_pb2.py +214 -0
- dlubal/api/rstab/structure_core/member_pb2.pyi +2525 -0
- dlubal/api/rstab/structure_core/member_representative_pb2.py +310 -0
- dlubal/api/rstab/structure_core/member_representative_pb2.pyi +4141 -0
- dlubal/api/rstab/structure_core/member_set_pb2.py +156 -0
- dlubal/api/rstab/structure_core/member_set_pb2.pyi +1885 -0
- dlubal/api/rstab/structure_core/member_set_representative_pb2.py +430 -0
- dlubal/api/rstab/structure_core/member_set_representative_pb2.pyi +6065 -0
- dlubal/api/rstab/structure_core/node_pb2.py +49 -0
- dlubal/api/rstab/structure_core/node_pb2.pyi +174 -0
- dlubal/api/rstab/structure_core/section_pb2.py +76 -0
- dlubal/api/rstab/structure_core/section_pb2.pyi +2135 -0
- dlubal/api/rstab/timber_design_objects/__init__.py +3 -0
- dlubal/api/rstab/timber_design_objects/timber_design_fr_configuration_pb2.py +125 -0
- dlubal/api/rstab/timber_design_objects/timber_design_fr_configuration_pb2.pyi +517 -0
- dlubal/api/rstab/timber_design_objects/timber_design_sls_configuration_pb2.py +125 -0
- dlubal/api/rstab/timber_design_objects/timber_design_sls_configuration_pb2.pyi +517 -0
- dlubal/api/rstab/timber_design_objects/timber_design_uls_configuration_pb2.py +165 -0
- dlubal/api/rstab/timber_design_objects/timber_design_uls_configuration_pb2.pyi +745 -0
- dlubal/api/rstab/types_for_aluminum_design/__init__.py +4 -0
- dlubal/api/rstab/types_for_aluminum_design/aluminum_boundary_conditions_pb2.py +51 -0
- dlubal/api/rstab/types_for_aluminum_design/aluminum_boundary_conditions_pb2.pyi +188 -0
- dlubal/api/rstab/types_for_aluminum_design/aluminum_effective_lengths_pb2.py +91 -0
- dlubal/api/rstab/types_for_aluminum_design/aluminum_effective_lengths_pb2.pyi +382 -0
- dlubal/api/rstab/types_for_aluminum_design/aluminum_member_local_section_reduction_pb2.py +47 -0
- dlubal/api/rstab/types_for_aluminum_design/aluminum_member_local_section_reduction_pb2.pyi +166 -0
- dlubal/api/rstab/types_for_aluminum_design/aluminum_member_transverse_weld_pb2.py +48 -0
- dlubal/api/rstab/types_for_aluminum_design/aluminum_member_transverse_weld_pb2.pyi +101 -0
- dlubal/api/rstab/types_for_concrete_design/__init__.py +2 -0
- dlubal/api/rstab/types_for_concrete_design/concrete_durability_pb2.py +68 -0
- dlubal/api/rstab/types_for_concrete_design/concrete_durability_pb2.pyi +251 -0
- dlubal/api/rstab/types_for_concrete_design/concrete_effective_lengths_pb2.py +107 -0
- dlubal/api/rstab/types_for_concrete_design/concrete_effective_lengths_pb2.pyi +496 -0
- dlubal/api/rstab/types_for_craneway_design/__init__.py +2 -0
- dlubal/api/rstab/types_for_craneway_design/crane_pb2.py +36 -0
- dlubal/api/rstab/types_for_craneway_design/crane_pb2.pyi +24 -0
- dlubal/api/rstab/types_for_craneway_design/craneway_pb2.py +52 -0
- dlubal/api/rstab/types_for_craneway_design/craneway_pb2.pyi +117 -0
- dlubal/api/rstab/types_for_foundations/__init__.py +1 -0
- dlubal/api/rstab/types_for_foundations/single_foundation_pb2.py +79 -0
- dlubal/api/rstab/types_for_foundations/single_foundation_pb2.pyi +334 -0
- dlubal/api/rstab/types_for_members/__init__.py +13 -0
- dlubal/api/rstab/types_for_members/design_support_pb2.py +62 -0
- dlubal/api/rstab/types_for_members/design_support_pb2.pyi +249 -0
- dlubal/api/rstab/types_for_members/diagonal_brace_pb2.py +46 -0
- dlubal/api/rstab/types_for_members/diagonal_brace_pb2.pyi +99 -0
- dlubal/api/rstab/types_for_members/member_definable_stiffness_pb2.py +36 -0
- dlubal/api/rstab/types_for_members/member_definable_stiffness_pb2.pyi +52 -0
- dlubal/api/rstab/types_for_members/member_eccentricity_pb2.py +49 -0
- dlubal/api/rstab/types_for_members/member_eccentricity_pb2.pyi +107 -0
- dlubal/api/rstab/types_for_members/member_hinge_pb2.py +249 -0
- dlubal/api/rstab/types_for_members/member_hinge_pb2.pyi +1770 -0
- dlubal/api/rstab/types_for_members/member_nonlinearity_pb2.py +38 -0
- dlubal/api/rstab/types_for_members/member_nonlinearity_pb2.pyi +61 -0
- dlubal/api/rstab/types_for_members/member_result_intermediate_point_pb2.py +40 -0
- dlubal/api/rstab/types_for_members/member_result_intermediate_point_pb2.pyi +52 -0
- dlubal/api/rstab/types_for_members/member_rotational_restraint_pb2.py +50 -0
- dlubal/api/rstab/types_for_members/member_rotational_restraint_pb2.pyi +127 -0
- dlubal/api/rstab/types_for_members/member_shear_panel_pb2.py +40 -0
- dlubal/api/rstab/types_for_members/member_shear_panel_pb2.pyi +80 -0
- dlubal/api/rstab/types_for_members/member_spring_pb2.py +52 -0
- dlubal/api/rstab/types_for_members/member_spring_pb2.pyi +149 -0
- dlubal/api/rstab/types_for_members/member_stiffness_modification_pb2.py +48 -0
- dlubal/api/rstab/types_for_members/member_stiffness_modification_pb2.pyi +139 -0
- dlubal/api/rstab/types_for_members/member_support_pb2.py +49 -0
- dlubal/api/rstab/types_for_members/member_support_pb2.pyi +156 -0
- dlubal/api/rstab/types_for_members/member_transverse_stiffener_pb2.py +48 -0
- dlubal/api/rstab/types_for_members/member_transverse_stiffener_pb2.pyi +143 -0
- dlubal/api/rstab/types_for_nodes/__init__.py +2 -0
- dlubal/api/rstab/types_for_nodes/nodal_link_pb2.py +43 -0
- dlubal/api/rstab/types_for_nodes/nodal_link_pb2.pyi +74 -0
- dlubal/api/rstab/types_for_nodes/nodal_support_pb2.py +211 -0
- dlubal/api/rstab/types_for_nodes/nodal_support_pb2.pyi +1444 -0
- dlubal/api/rstab/types_for_special_objects/__init__.py +1 -0
- dlubal/api/rstab/types_for_special_objects/nodal_release_type_pb2.py +198 -0
- dlubal/api/rstab/types_for_special_objects/nodal_release_type_pb2.pyi +1381 -0
- dlubal/api/rstab/types_for_steel_design/__init__.py +4 -0
- dlubal/api/rstab/types_for_steel_design/steel_boundary_conditions_pb2.py +51 -0
- dlubal/api/rstab/types_for_steel_design/steel_boundary_conditions_pb2.pyi +188 -0
- dlubal/api/rstab/types_for_steel_design/steel_effective_lengths_pb2.py +117 -0
- dlubal/api/rstab/types_for_steel_design/steel_effective_lengths_pb2.pyi +524 -0
- dlubal/api/rstab/types_for_steel_design/steel_member_local_section_reduction_pb2.py +47 -0
- dlubal/api/rstab/types_for_steel_design/steel_member_local_section_reduction_pb2.pyi +166 -0
- dlubal/api/rstab/types_for_steel_design/steel_member_transverse_weld_pb2.py +48 -0
- dlubal/api/rstab/types_for_steel_design/steel_member_transverse_weld_pb2.pyi +101 -0
- dlubal/api/rstab/types_for_timber_design/__init__.py +6 -0
- dlubal/api/rstab/types_for_timber_design/timber_effective_lengths_pb2.py +105 -0
- dlubal/api/rstab/types_for_timber_design/timber_effective_lengths_pb2.pyi +478 -0
- dlubal/api/rstab/types_for_timber_design/timber_member_local_section_reduction_pb2.py +48 -0
- dlubal/api/rstab/types_for_timber_design/timber_member_local_section_reduction_pb2.pyi +121 -0
- dlubal/api/rstab/types_for_timber_design/timber_moisture_class_pb2.py +38 -0
- dlubal/api/rstab/types_for_timber_design/timber_moisture_class_pb2.pyi +41 -0
- dlubal/api/rstab/types_for_timber_design/timber_screw_type_pb2.py +38 -0
- dlubal/api/rstab/types_for_timber_design/timber_screw_type_pb2.pyi +58 -0
- dlubal/api/rstab/types_for_timber_design/timber_service_class_pb2.py +38 -0
- dlubal/api/rstab/types_for_timber_design/timber_service_class_pb2.pyi +41 -0
- dlubal/api/rstab/types_for_timber_design/timber_service_conditions_pb2.py +42 -0
- dlubal/api/rstab/types_for_timber_design/timber_service_conditions_pb2.pyi +107 -0
- dlubal/api/rstab/types_for_wind_simulation/__init__.py +2 -0
- dlubal/api/rstab/types_for_wind_simulation/roughness_and_permeability_pb2.py +40 -0
- dlubal/api/rstab/types_for_wind_simulation/roughness_and_permeability_pb2.pyi +81 -0
- dlubal/api/rstab/types_for_wind_simulation/shrink_wrapping_pb2.py +40 -0
- dlubal/api/rstab/types_for_wind_simulation/shrink_wrapping_pb2.pyi +55 -0
- dlubal_api-2.12.2.dist-info/METADATA +76 -0
- dlubal_api-2.12.2.dist-info/RECORD +927 -0
- {dlubal.api-0.1.293714a1.dist-info → dlubal_api-2.12.2.dist-info}/WHEEL +1 -1
- dlubal_api-2.12.2.dist-info/top_level.txt +3 -0
- examples/rfem/base_data.py +26 -0
- examples/rfem/block.py +29 -0
- examples/rfem/bus_station.py +395 -0
- examples/rfem/cantilever.py +172 -0
- examples/rfem/column.py +185 -0
- examples/rfem/component_design.py +161 -0
- examples/rfem/demo_limits.py +373 -0
- examples/rfem/design_configuration.py +71 -0
- examples/rfem/design_settings.py +37 -0
- examples/rfem/excel.py +86 -0
- examples/rfem/export_model_to.py +159 -0
- examples/rfem/frame.py +285 -0
- examples/rfem/import_from_ifc.py +60 -0
- examples/rfem/import_from_rsection.py +107 -0
- examples/rfem/import_from_xml.py +29 -0
- examples/rfem/material_user_defined.py +25 -0
- examples/rfem/mesh_settings.py +25 -0
- examples/rfem/multiple_models.py +1608 -0
- examples/rfem/nested_tables.py +81 -0
- examples/rfem/pydantic_streamlit.py +101 -0
- examples/rfem/results_access.py +38 -0
- examples/rfem/results_axes_system.py +53 -0
- examples/rfem/results_design_addons.py +58 -0
- examples/rfem/results_filtering.py +43 -0
- examples/rfem/results_in_location.py +39 -0
- examples/rfem/results_multiple_models.py +45 -0
- examples/rfem/sectioned_roof.py +449 -0
- examples/rfem/select_objects.py +39 -0
- examples/rfem/silo.py +750 -0
- examples/rfem/steel_design_configuration.py +27 -0
- examples/rfem/steel_hall.py +670 -0
- examples/rfem/steel_station.py +890 -0
- examples/rfem/tank_wind_load.py +180 -0
- examples/rsection/base_data.py +20 -0
- examples/rsection/steel_section.py +114 -0
- examples/rstab/base_data.py +25 -0
- examples/rstab/cantilever.py +166 -0
- examples/rstab/column.py +184 -0
- examples/rstab/dataframe.py +20 -0
- examples/rstab/design_settings.py +37 -0
- examples/rstab/excel.py +86 -0
- examples/rstab/export_model_to.py +154 -0
- examples/rstab/frame.py +285 -0
- examples/rstab/import_from_ifc.py +46 -0
- examples/rstab/import_from_rsection.py +107 -0
- examples/rstab/import_from_xml.py +29 -0
- examples/rstab/multiple_models.py +1358 -0
- examples/rstab/nested_tables.py +29 -0
- examples/rstab/pydantic_streamlit.py +101 -0
- examples/rstab/results_access.py +38 -0
- examples/rstab/results_axes_system.py +53 -0
- examples/rstab/results_in_location.py +39 -0
- examples/rstab/results_multiple_models.py +40 -0
- examples/rstab/select_objects.py +39 -0
- google/protobuf/any_pb2.py +37 -0
- google/protobuf/any_pb2.pyi +14 -0
- google/protobuf/descriptor_pb2.py +3363 -0
- google/protobuf/descriptor_pb2.pyi +723 -0
- google/protobuf/empty_pb2.py +37 -0
- google/protobuf/empty_pb2.pyi +9 -0
- google/protobuf/wrappers_pb2.py +53 -0
- google/protobuf/wrappers_pb2.pyi +59 -0
- dlubal/api/rfem/base_data/terrain_pb2.py +0 -40
- dlubal/api/rfem/base_data/terrain_pb2.pyi +0 -53
- dlubal/api/rfem/imperfections/surface_imperfection_pb2.py +0 -40
- dlubal/api/rfem/imperfections/surface_imperfection_pb2.pyi +0 -55
- dlubal/api/rfem/imperfections/surface_set_imperfection_pb2.py +0 -40
- dlubal/api/rfem/imperfections/surface_set_imperfection_pb2.pyi +0 -55
- dlubal/api/rfem/packing.py +0 -45
- dlubal/api/rfem/results/results_id_pb2.pyi +0 -14
- dlubal.api-0.1.293714a1.dist-info/METADATA +0 -40
- dlubal.api-0.1.293714a1.dist-info/RECORD +0 -342
- dlubal.api-0.1.293714a1.dist-info/top_level.txt +0 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
from dlubal.api import rstab
|
|
2
|
+
|
|
3
|
+
# Connect to the RSTAB application
|
|
4
|
+
with rstab.Application() as rstab_app:
|
|
5
|
+
|
|
6
|
+
rstab_app.close_all_models(save_changes=False)
|
|
7
|
+
rstab_app.create_model(name='dataframe')
|
|
8
|
+
|
|
9
|
+
# GetResults returns Table, which is just a convenience wrapper around a Pandas Dataframe.
|
|
10
|
+
# The Dataframe can be directly accessed as .data
|
|
11
|
+
|
|
12
|
+
print("Filtered results:")
|
|
13
|
+
results = rstab_app.get_results(
|
|
14
|
+
rstab.results.TEST,
|
|
15
|
+
filters=[rstab.results.ResultsFilter(
|
|
16
|
+
column_id="support_force_p_x",
|
|
17
|
+
filter_expression="max")],
|
|
18
|
+
)
|
|
19
|
+
|
|
20
|
+
print(results.data)
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
from dlubal.api import rstab, common
|
|
2
|
+
|
|
3
|
+
# Connect to the rstab application
|
|
4
|
+
with rstab.Application() as rstab_app:
|
|
5
|
+
|
|
6
|
+
# Step 1: Retrieve the global settings tree table for Steel Design (active model)
|
|
7
|
+
design_settings: rstab.GlobalSettingsTreeTable = rstab_app.get_design_settings(
|
|
8
|
+
addon=rstab.DesignAddons.STEEL_DESIGN
|
|
9
|
+
)
|
|
10
|
+
print(f"DESIGN SETTINGS:\n{design_settings}")
|
|
11
|
+
|
|
12
|
+
# Step 2: Retrieve a specific value
|
|
13
|
+
# Path to access the member slenderness setting
|
|
14
|
+
member_slendernesses_path = [
|
|
15
|
+
'member_slendernesses',
|
|
16
|
+
'member_slendernesses_tension_ec3'
|
|
17
|
+
]
|
|
18
|
+
# Fetch the value of the specific setting
|
|
19
|
+
member_slendernesses_val = common.get_tree_value(
|
|
20
|
+
tree=design_settings,
|
|
21
|
+
path=member_slendernesses_path
|
|
22
|
+
)
|
|
23
|
+
print(f"\nMember slendernesses: {member_slendernesses_val}")
|
|
24
|
+
|
|
25
|
+
# Step 3: Modify the value and save the updated design settings
|
|
26
|
+
# Set a new value
|
|
27
|
+
common.set_tree_value(
|
|
28
|
+
tree=design_settings,
|
|
29
|
+
path=member_slendernesses_path,
|
|
30
|
+
value=250,
|
|
31
|
+
)
|
|
32
|
+
# Apply the updated design settings to the model
|
|
33
|
+
rstab_app.set_design_settings(
|
|
34
|
+
addon=rstab.DesignAddons.STEEL_DESIGN,
|
|
35
|
+
global_settings_tree_table=design_settings
|
|
36
|
+
)
|
|
37
|
+
|
examples/rstab/excel.py
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import xlwings as xw
|
|
3
|
+
from dlubal.api import rstab
|
|
4
|
+
|
|
5
|
+
def open_work_book():
|
|
6
|
+
"""Open excel file."""
|
|
7
|
+
|
|
8
|
+
dirname = os.path.join(os.getcwd(), os.path.dirname(__file__))
|
|
9
|
+
path = os.path.join(dirname,'src/Nodes.xlsx')
|
|
10
|
+
|
|
11
|
+
wb = xw.Book(path)
|
|
12
|
+
|
|
13
|
+
return wb
|
|
14
|
+
|
|
15
|
+
def close_work_book(wb):
|
|
16
|
+
"""Close excel file."""
|
|
17
|
+
|
|
18
|
+
wb.save()
|
|
19
|
+
app = wb.app
|
|
20
|
+
wb.close()
|
|
21
|
+
app.kill()
|
|
22
|
+
|
|
23
|
+
def get_node_from_excel(work_book) -> dict:
|
|
24
|
+
"""Retrieve node from excel file."""
|
|
25
|
+
|
|
26
|
+
input_sheet = work_book.sheets('Nodes')
|
|
27
|
+
|
|
28
|
+
node1 = {'no' : int(input_sheet["A2"].value),
|
|
29
|
+
'x' : input_sheet["B2"].value,
|
|
30
|
+
'y' : input_sheet["C2"].value,
|
|
31
|
+
'z' : input_sheet["D2"].value}
|
|
32
|
+
|
|
33
|
+
return node1
|
|
34
|
+
|
|
35
|
+
def write_node_to_excel(node, work_book) -> None:
|
|
36
|
+
"""Write data to excel file."""
|
|
37
|
+
|
|
38
|
+
input_sheet = work_book.sheets('Nodes')
|
|
39
|
+
|
|
40
|
+
input_sheet["A3"].value = node.no
|
|
41
|
+
input_sheet["B3"].value = node.coordinate_1
|
|
42
|
+
input_sheet["C3"].value = node.coordinate_2
|
|
43
|
+
input_sheet["D3"].value = node.coordinate_3
|
|
44
|
+
if node.comment:
|
|
45
|
+
input_sheet["E3"].value = node.comment
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
if __name__ == "__main__":
|
|
49
|
+
"""Main routine."""
|
|
50
|
+
|
|
51
|
+
with rstab.Application() as rstab_app:
|
|
52
|
+
|
|
53
|
+
# Step 1: Create a new model
|
|
54
|
+
rstab_app.close_all_models(save_changes=False)
|
|
55
|
+
rstab_app.create_model(name='excel')
|
|
56
|
+
|
|
57
|
+
# Step 2: Clear existing objects
|
|
58
|
+
rstab_app.delete_all_objects()
|
|
59
|
+
|
|
60
|
+
# Step 3: Get data for node from excel
|
|
61
|
+
work_book = open_work_book()
|
|
62
|
+
|
|
63
|
+
# Step 4: Create nodes in RSTAB
|
|
64
|
+
node1 = get_node_from_excel(work_book)
|
|
65
|
+
|
|
66
|
+
rstab_app.create_object_list(objs = [
|
|
67
|
+
rstab.structure_core.Node(
|
|
68
|
+
no = node1['no'],
|
|
69
|
+
coordinate_1 = node1['x'],
|
|
70
|
+
coordinate_2 = node1['y'],
|
|
71
|
+
coordinate_3 = node1['z']),
|
|
72
|
+
rstab.structure_core.Node(
|
|
73
|
+
no = 2,
|
|
74
|
+
coordinate_1 = 1,
|
|
75
|
+
coordinate_2 = 2,
|
|
76
|
+
coordinate_3 = 4,
|
|
77
|
+
comment = 'Node 2')])
|
|
78
|
+
|
|
79
|
+
# Step 4: Get node 2 from RSTAB
|
|
80
|
+
node2 = rstab_app.get_object(
|
|
81
|
+
obj = rstab.structure_core.Node(
|
|
82
|
+
no = 2))
|
|
83
|
+
write_node_to_excel(node2, work_book)
|
|
84
|
+
|
|
85
|
+
# Step 5: Save and close excel file
|
|
86
|
+
close_work_book(work_book)
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import os
|
|
2
|
+
from math import inf
|
|
3
|
+
from dlubal.api import rstab, common
|
|
4
|
+
|
|
5
|
+
def define_structure() -> list:
|
|
6
|
+
"""Define and return a list of structural objects."""
|
|
7
|
+
|
|
8
|
+
return [
|
|
9
|
+
# Define material
|
|
10
|
+
rstab.structure_core.Material(
|
|
11
|
+
no=1,
|
|
12
|
+
name='S235',
|
|
13
|
+
),
|
|
14
|
+
|
|
15
|
+
# Define section
|
|
16
|
+
rstab.structure_core.Section(
|
|
17
|
+
no=1,
|
|
18
|
+
name='HE 300 A',
|
|
19
|
+
material=1,
|
|
20
|
+
),
|
|
21
|
+
|
|
22
|
+
# Define nodes
|
|
23
|
+
rstab.structure_core.Node(
|
|
24
|
+
no=1,
|
|
25
|
+
),
|
|
26
|
+
rstab.structure_core.Node(
|
|
27
|
+
no=2,
|
|
28
|
+
coordinate_1=6.0,
|
|
29
|
+
),
|
|
30
|
+
|
|
31
|
+
# Define member
|
|
32
|
+
rstab.structure_core.Member(
|
|
33
|
+
no=1,
|
|
34
|
+
node_start=1,
|
|
35
|
+
node_end=2,
|
|
36
|
+
section_start=1,
|
|
37
|
+
),
|
|
38
|
+
|
|
39
|
+
# Define nodal support at Node 1 (fully fixed)
|
|
40
|
+
rstab.types_for_nodes.NodalSupport(
|
|
41
|
+
no=1,
|
|
42
|
+
nodes=[1],
|
|
43
|
+
spring_x=inf,
|
|
44
|
+
spring_y=inf,
|
|
45
|
+
spring_z=inf,
|
|
46
|
+
rotational_restraint_x=inf,
|
|
47
|
+
rotational_restraint_y=inf,
|
|
48
|
+
rotational_restraint_z=inf,
|
|
49
|
+
),
|
|
50
|
+
]
|
|
51
|
+
|
|
52
|
+
def define_loading() -> list:
|
|
53
|
+
"""Define and return a list of loading objects."""
|
|
54
|
+
|
|
55
|
+
return [
|
|
56
|
+
# Static analysis settings
|
|
57
|
+
rstab.loading.StaticAnalysisSettings(
|
|
58
|
+
no=1,
|
|
59
|
+
analysis_type=rstab.loading.StaticAnalysisSettings.ANALYSIS_TYPE_GEOMETRICALLY_LINEAR
|
|
60
|
+
),
|
|
61
|
+
|
|
62
|
+
# Define load cases
|
|
63
|
+
rstab.loading.LoadCase(
|
|
64
|
+
no=1,
|
|
65
|
+
static_analysis_settings=1,
|
|
66
|
+
),
|
|
67
|
+
rstab.loading.LoadCase(
|
|
68
|
+
no=2,
|
|
69
|
+
static_analysis_settings=1,
|
|
70
|
+
),
|
|
71
|
+
|
|
72
|
+
# Define nodal loads
|
|
73
|
+
rstab.loads.NodalLoad(
|
|
74
|
+
no=1,
|
|
75
|
+
load_case=1,
|
|
76
|
+
nodes=[2],
|
|
77
|
+
load_type=rstab.loads.NodalLoad.LOAD_TYPE_COMPONENTS,
|
|
78
|
+
components_force_y=5000, # Force in Y direction (N)
|
|
79
|
+
components_force_z=10000, # Force in Z direction (N)
|
|
80
|
+
),
|
|
81
|
+
rstab.loads.MemberLoad(
|
|
82
|
+
no=1,
|
|
83
|
+
load_case=2,
|
|
84
|
+
members=[1],
|
|
85
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
86
|
+
magnitude=10000,
|
|
87
|
+
),
|
|
88
|
+
|
|
89
|
+
# Define design situation
|
|
90
|
+
rstab.loading.DesignSituation(
|
|
91
|
+
no=1,
|
|
92
|
+
design_situation_type=rstab.loading.DesignSituation.DESIGN_SITUATION_TYPE_STR_PERMANENT_AND_TRANSIENT_6_10,
|
|
93
|
+
),
|
|
94
|
+
|
|
95
|
+
# Define load combination
|
|
96
|
+
rstab.loading.LoadCombination(
|
|
97
|
+
no=1,
|
|
98
|
+
name='CO1',
|
|
99
|
+
items = rstab.loading.LoadCombination.ItemsTable(
|
|
100
|
+
rows=[
|
|
101
|
+
rstab.loading.LoadCombination.ItemsRow(
|
|
102
|
+
load_case=1,
|
|
103
|
+
factor=1.35,
|
|
104
|
+
),
|
|
105
|
+
rstab.loading.LoadCombination.ItemsRow(
|
|
106
|
+
load_case=2,
|
|
107
|
+
factor=1.5,
|
|
108
|
+
)
|
|
109
|
+
]
|
|
110
|
+
),
|
|
111
|
+
design_situation=1,
|
|
112
|
+
),
|
|
113
|
+
rstab.loading.LoadCombination(
|
|
114
|
+
no=2,
|
|
115
|
+
name='CO2',
|
|
116
|
+
items = rstab.loading.LoadCombination.ItemsTable(
|
|
117
|
+
rows=[
|
|
118
|
+
rstab.loading.LoadCombination.ItemsRow(
|
|
119
|
+
load_case=1,
|
|
120
|
+
factor=0.85,
|
|
121
|
+
),
|
|
122
|
+
rstab.loading.LoadCombination.ItemsRow(
|
|
123
|
+
load_case=2,
|
|
124
|
+
factor=1.0,
|
|
125
|
+
)
|
|
126
|
+
]
|
|
127
|
+
),
|
|
128
|
+
design_situation=1,
|
|
129
|
+
),
|
|
130
|
+
]
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
"""Runs the structural analysis example."""
|
|
134
|
+
|
|
135
|
+
with rstab.Application() as rstab_app:
|
|
136
|
+
|
|
137
|
+
# Step 1: Create a model
|
|
138
|
+
rstab_app.create_model(name='cantilever')
|
|
139
|
+
rstab_app.delete_all_objects()
|
|
140
|
+
rstab_app.create_object_list(
|
|
141
|
+
objs=define_structure() + define_loading()
|
|
142
|
+
)
|
|
143
|
+
|
|
144
|
+
# Step 2: Export the model to Python script
|
|
145
|
+
rstab_app.export_to(
|
|
146
|
+
filepath=os.path.abspath('./model_export.py'),
|
|
147
|
+
export_attributes=common.import_export.PythonGrpcExportAttributes()
|
|
148
|
+
)
|
|
149
|
+
|
|
150
|
+
# Step 3: Export the model to IFC
|
|
151
|
+
rstab_app.export_to(
|
|
152
|
+
filepath=os.path.abspath('./model_export.ifc'),
|
|
153
|
+
export_attributes=common.import_export.IfcExportAttributes()
|
|
154
|
+
)
|
examples/rstab/frame.py
ADDED
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
from dlubal.api import rstab
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def define_structure() -> list:
|
|
5
|
+
"""Define and return a list of structural objects."""
|
|
6
|
+
|
|
7
|
+
inf = float('inf')
|
|
8
|
+
|
|
9
|
+
return [
|
|
10
|
+
# Define material
|
|
11
|
+
rstab.structure_core.Material(no=1, name='S235'),
|
|
12
|
+
|
|
13
|
+
# Define section
|
|
14
|
+
rstab.structure_core.Section(no=1, name='HE 200 A', material=1),
|
|
15
|
+
|
|
16
|
+
# Define nodes
|
|
17
|
+
rstab.structure_core.Node(no=1),
|
|
18
|
+
rstab.structure_core.Node(no=2, coordinate_3=-3.0),
|
|
19
|
+
rstab.structure_core.Node(no=3, coordinate_1=4.0, coordinate_3=-3.0),
|
|
20
|
+
rstab.structure_core.Node(no=4, coordinate_1=4.0),
|
|
21
|
+
|
|
22
|
+
# Define member
|
|
23
|
+
rstab.structure_core.Member(no=1, node_start=1, node_end=2, section_start=1),
|
|
24
|
+
rstab.structure_core.Member(no=2, node_start=2, node_end=3, section_start=1),
|
|
25
|
+
rstab.structure_core.Member(no=3, node_start=3, node_end=4, section_start=1),
|
|
26
|
+
|
|
27
|
+
# Define nodal support at Node 1 (fully fixed)
|
|
28
|
+
rstab.types_for_nodes.NodalSupport(
|
|
29
|
+
no=1,
|
|
30
|
+
nodes=[1,4],
|
|
31
|
+
spring_x=inf, spring_y=inf, spring_z=inf,
|
|
32
|
+
rotational_restraint_x=inf,
|
|
33
|
+
rotational_restraint_y=inf,
|
|
34
|
+
rotational_restraint_z=inf
|
|
35
|
+
),
|
|
36
|
+
]
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def define_loads() -> list:
|
|
40
|
+
"""Define and return a list of loading objects."""
|
|
41
|
+
|
|
42
|
+
return [
|
|
43
|
+
# Static analysis settings
|
|
44
|
+
rstab.loading.StaticAnalysisSettings(
|
|
45
|
+
no=1,
|
|
46
|
+
analysis_type=rstab.loading.StaticAnalysisSettings.ANALYSIS_TYPE_GEOMETRICALLY_LINEAR,
|
|
47
|
+
),
|
|
48
|
+
|
|
49
|
+
# Define load cases
|
|
50
|
+
rstab.loading.LoadCase(
|
|
51
|
+
no=1,
|
|
52
|
+
name='Self-weight',
|
|
53
|
+
self_weight_active=True,
|
|
54
|
+
static_analysis_settings=1,
|
|
55
|
+
),
|
|
56
|
+
rstab.loading.LoadCase(
|
|
57
|
+
no=2,
|
|
58
|
+
name='Snow',
|
|
59
|
+
action_category=rstab.loading.LoadCase.ACTION_CATEGORY_SNOW_ICE_LOADS_H_LESS_OR_EQUAL_TO_1000_M_QS,
|
|
60
|
+
static_analysis_settings=1,
|
|
61
|
+
),
|
|
62
|
+
rstab.loading.LoadCase(
|
|
63
|
+
no=3,
|
|
64
|
+
name='Wind +x',
|
|
65
|
+
action_category=rstab.loading.LoadCase.ACTION_CATEGORY_WIND_QW,
|
|
66
|
+
static_analysis_settings=1,
|
|
67
|
+
),
|
|
68
|
+
rstab.loading.LoadCase(
|
|
69
|
+
no=4,
|
|
70
|
+
name='Wind +x, with wind suction',
|
|
71
|
+
action_category=rstab.loading.LoadCase.ACTION_CATEGORY_WIND_QW,
|
|
72
|
+
static_analysis_settings=1,
|
|
73
|
+
),
|
|
74
|
+
rstab.loading.LoadCase(
|
|
75
|
+
no=5,
|
|
76
|
+
name='Wind -x',
|
|
77
|
+
action_category=rstab.loading.LoadCase.ACTION_CATEGORY_WIND_QW,
|
|
78
|
+
static_analysis_settings=1,
|
|
79
|
+
),
|
|
80
|
+
rstab.loading.LoadCase(
|
|
81
|
+
no=6,
|
|
82
|
+
name='Wind -x, with wind suction',
|
|
83
|
+
action_category=rstab.loading.LoadCase.ACTION_CATEGORY_WIND_QW,
|
|
84
|
+
static_analysis_settings=1,
|
|
85
|
+
),
|
|
86
|
+
|
|
87
|
+
# Define loads
|
|
88
|
+
rstab.loads.MemberLoad(
|
|
89
|
+
no=1,
|
|
90
|
+
load_case=1,
|
|
91
|
+
members=[2],
|
|
92
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
93
|
+
magnitude=1000
|
|
94
|
+
),
|
|
95
|
+
rstab.loads.MemberLoad(
|
|
96
|
+
no=2,
|
|
97
|
+
load_case=2,
|
|
98
|
+
members=[2],
|
|
99
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
100
|
+
magnitude=3000
|
|
101
|
+
),
|
|
102
|
+
rstab.loads.MemberLoad(
|
|
103
|
+
no=3,
|
|
104
|
+
load_case=3,
|
|
105
|
+
members=[1],
|
|
106
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
107
|
+
magnitude=2000,
|
|
108
|
+
load_direction=rstab.loads.MemberLoad.LOAD_DIRECTION_GLOBAL_X_OR_USER_DEFINED_U_TRUE_LENGTH,
|
|
109
|
+
),
|
|
110
|
+
rstab.loads.MemberLoad(
|
|
111
|
+
no=4,
|
|
112
|
+
load_case=3,
|
|
113
|
+
members=[3],
|
|
114
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
115
|
+
magnitude=1000,
|
|
116
|
+
load_direction=rstab.loads.MemberLoad.LOAD_DIRECTION_GLOBAL_X_OR_USER_DEFINED_U_TRUE_LENGTH,
|
|
117
|
+
),
|
|
118
|
+
rstab.loads.MemberLoad(
|
|
119
|
+
no=5,
|
|
120
|
+
load_case=4,
|
|
121
|
+
members=[1],
|
|
122
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
123
|
+
magnitude=2000,
|
|
124
|
+
load_direction=rstab.loads.MemberLoad.LOAD_DIRECTION_GLOBAL_X_OR_USER_DEFINED_U_TRUE_LENGTH,
|
|
125
|
+
),
|
|
126
|
+
rstab.loads.MemberLoad(
|
|
127
|
+
no=6,
|
|
128
|
+
load_case=4,
|
|
129
|
+
members=[3],
|
|
130
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
131
|
+
magnitude=1000,
|
|
132
|
+
load_direction=rstab.loads.MemberLoad.LOAD_DIRECTION_GLOBAL_X_OR_USER_DEFINED_U_TRUE_LENGTH,
|
|
133
|
+
),
|
|
134
|
+
rstab.loads.MemberLoad(
|
|
135
|
+
no=7,
|
|
136
|
+
load_case=4,
|
|
137
|
+
members=[2],
|
|
138
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
139
|
+
magnitude=-500
|
|
140
|
+
),
|
|
141
|
+
rstab.loads.MemberLoad(
|
|
142
|
+
no=8,
|
|
143
|
+
load_case=5,
|
|
144
|
+
members=[1],
|
|
145
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
146
|
+
magnitude=-2000,
|
|
147
|
+
load_direction=rstab.loads.MemberLoad.LOAD_DIRECTION_GLOBAL_X_OR_USER_DEFINED_U_TRUE_LENGTH,
|
|
148
|
+
),
|
|
149
|
+
rstab.loads.MemberLoad(
|
|
150
|
+
no=9,
|
|
151
|
+
load_case=5,
|
|
152
|
+
members=[3],
|
|
153
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
154
|
+
magnitude=-1000,
|
|
155
|
+
load_direction=rstab.loads.MemberLoad.LOAD_DIRECTION_GLOBAL_X_OR_USER_DEFINED_U_TRUE_LENGTH,
|
|
156
|
+
),
|
|
157
|
+
rstab.loads.MemberLoad(
|
|
158
|
+
no=10,
|
|
159
|
+
load_case=6,
|
|
160
|
+
members=[1],
|
|
161
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
162
|
+
magnitude=-2000,
|
|
163
|
+
load_direction=rstab.loads.MemberLoad.LOAD_DIRECTION_GLOBAL_X_OR_USER_DEFINED_U_TRUE_LENGTH,
|
|
164
|
+
),
|
|
165
|
+
rstab.loads.MemberLoad(
|
|
166
|
+
no=11,
|
|
167
|
+
load_case=6,
|
|
168
|
+
members=[3],
|
|
169
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
170
|
+
magnitude=-1000,
|
|
171
|
+
load_direction=rstab.loads.MemberLoad.LOAD_DIRECTION_GLOBAL_X_OR_USER_DEFINED_U_TRUE_LENGTH,
|
|
172
|
+
),
|
|
173
|
+
rstab.loads.MemberLoad(
|
|
174
|
+
no=12,
|
|
175
|
+
load_case=6,
|
|
176
|
+
members=[2],
|
|
177
|
+
load_type=rstab.loads.MemberLoad.LOAD_TYPE_FORCE,
|
|
178
|
+
magnitude=-500
|
|
179
|
+
),
|
|
180
|
+
rstab.loading.CombinationWizard(
|
|
181
|
+
no=1,
|
|
182
|
+
static_analysis_settings=1,
|
|
183
|
+
),
|
|
184
|
+
rstab.loading.DesignSituation(
|
|
185
|
+
no=1,
|
|
186
|
+
design_situation_type=rstab.loading.DesignSituation.DESIGN_SITUATION_TYPE_STR_PERMANENT_AND_TRANSIENT_6_10,
|
|
187
|
+
combination_wizard=1,
|
|
188
|
+
),
|
|
189
|
+
]
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
with rstab.Application() as rstab_app:
|
|
193
|
+
|
|
194
|
+
# Step 1: Create a new model and clear existing objects
|
|
195
|
+
rstab_app.create_model(name='frame')
|
|
196
|
+
rstab_app.delete_all_objects()
|
|
197
|
+
|
|
198
|
+
# Step 2: Define and create the structure and load objects
|
|
199
|
+
base_data = rstab_app.get_base_data()
|
|
200
|
+
base_data.combinations_settings.combination_wizard_active = True
|
|
201
|
+
base_data.combinations_settings.result_combinations_active = True
|
|
202
|
+
rstab_app.set_base_data(base_data=base_data)
|
|
203
|
+
|
|
204
|
+
# Step 3: Define and create the structure and load objects
|
|
205
|
+
objects = define_structure() + define_loads()
|
|
206
|
+
rstab_app.create_object_list(objects)
|
|
207
|
+
|
|
208
|
+
# Step 4: Generate Load Combinations
|
|
209
|
+
print("\nLoad Combinations:")
|
|
210
|
+
rstab_app.generate_combinations()
|
|
211
|
+
all_load_combi = rstab_app.get_object_list([rstab.loading.LoadCombination()])
|
|
212
|
+
|
|
213
|
+
# Step 5: Create Result Combination as an envelope from all Load Combinations
|
|
214
|
+
result_combi_rows = []
|
|
215
|
+
for i, load_combi in enumerate(all_load_combi):
|
|
216
|
+
# Check if this is the last item in the list
|
|
217
|
+
print(f"CO{load_combi.no} - {load_combi.combination_rule_str}")
|
|
218
|
+
|
|
219
|
+
if i < len(all_load_combi) - 1:
|
|
220
|
+
operator = rstab.loading.ResultCombination.ItemsRow.OPERATOR_OR
|
|
221
|
+
else:
|
|
222
|
+
operator = rstab.loading.ResultCombination.ItemsRow.OPERATOR_NONE
|
|
223
|
+
|
|
224
|
+
result_combi_rows.append(
|
|
225
|
+
rstab.loading.ResultCombination.ItemsRow(
|
|
226
|
+
case_object_item=rstab.ObjectId(
|
|
227
|
+
no=load_combi.no,
|
|
228
|
+
object_type=rstab.OBJECT_TYPE_LOAD_COMBINATION,
|
|
229
|
+
),
|
|
230
|
+
case_object_factor=1,
|
|
231
|
+
operator=operator,
|
|
232
|
+
)
|
|
233
|
+
)
|
|
234
|
+
|
|
235
|
+
print("\nResult Combination:")
|
|
236
|
+
rstab_app.create_object(
|
|
237
|
+
rstab.loading.ResultCombination(
|
|
238
|
+
no=1,
|
|
239
|
+
user_defined_name_enabled=True,
|
|
240
|
+
name='All ULS',
|
|
241
|
+
design_situation=1,
|
|
242
|
+
items=rstab.loading.ResultCombination.ItemsTable(
|
|
243
|
+
rows = result_combi_rows,
|
|
244
|
+
)
|
|
245
|
+
)
|
|
246
|
+
)
|
|
247
|
+
result_combi = rstab_app.get_object(rstab.loading.ResultCombination(no=1))
|
|
248
|
+
print(f"{result_combi.name} - {result_combi.combination_rule_str}")
|
|
249
|
+
|
|
250
|
+
# Step 6: Calculate specific
|
|
251
|
+
rstab_app.calculate_specific(
|
|
252
|
+
loadings=[
|
|
253
|
+
rstab.ObjectId(
|
|
254
|
+
no=1,
|
|
255
|
+
object_type=rstab.OBJECT_TYPE_RESULT_COMBINATION
|
|
256
|
+
)
|
|
257
|
+
],
|
|
258
|
+
skip_warnings=False,
|
|
259
|
+
)
|
|
260
|
+
|
|
261
|
+
# Step 7: Read results using optional filtering
|
|
262
|
+
member_filter = rstab.results.ResultsFilter(
|
|
263
|
+
column_id='member_no',
|
|
264
|
+
filter_expression='2'
|
|
265
|
+
)
|
|
266
|
+
|
|
267
|
+
results_df = rstab_app.get_results(
|
|
268
|
+
results_type=rstab.results.STATIC_ANALYSIS_MEMBERS_INTERNAL_FORCES,
|
|
269
|
+
filters=[member_filter],
|
|
270
|
+
).data
|
|
271
|
+
|
|
272
|
+
print("\nAll Results:")
|
|
273
|
+
print(results_df)
|
|
274
|
+
|
|
275
|
+
# Step 8: Find maximum m_y envelope on specific member
|
|
276
|
+
loading = "RC1"
|
|
277
|
+
tag = 'm_y_max'
|
|
278
|
+
|
|
279
|
+
my_max_df = results_df[
|
|
280
|
+
(results_df['loading'] == loading) &
|
|
281
|
+
(results_df['tag'] == tag)
|
|
282
|
+
]
|
|
283
|
+
|
|
284
|
+
print("\nMaximum My:")
|
|
285
|
+
print(my_max_df)
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import os
|
|
2
|
+
from dlubal.api import rstab, common
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
# Connect to the RSTAB application
|
|
6
|
+
with rstab.Application() as rstab_app:
|
|
7
|
+
|
|
8
|
+
rstab_app.create_model(name='import_from_ifc')
|
|
9
|
+
|
|
10
|
+
# Step 1: Import IFC model from the file
|
|
11
|
+
ifc_file_path = os.path.join(os.path.dirname(__file__), 'src', 'ifc_structure.ifc')
|
|
12
|
+
|
|
13
|
+
rstab_app.import_from(
|
|
14
|
+
filepath=ifc_file_path,
|
|
15
|
+
import_attributes=common.import_export.IfcImportAttributes()
|
|
16
|
+
)
|
|
17
|
+
|
|
18
|
+
# Step 2: Edit IFC model (e.g., mirror it along the Z-axis)
|
|
19
|
+
ifc_model: rstab.ifc_objects.IfcFileModelObject = rstab_app.get_object(
|
|
20
|
+
rstab.ifc_objects.IfcFileModelObject(no=1)
|
|
21
|
+
)
|
|
22
|
+
ifc_model.mirror_axis_z=True
|
|
23
|
+
rstab_app.update_object(ifc_model)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
# Step 3: Categorize IFC model objects for conversion
|
|
27
|
+
ifc_object_list = rstab_app.get_object_list(
|
|
28
|
+
objs=[
|
|
29
|
+
rstab.ifc_objects.IfcModelObject()
|
|
30
|
+
]
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
members = []
|
|
34
|
+
|
|
35
|
+
for ifc_object in ifc_object_list:
|
|
36
|
+
ifc_type = ifc_object.ifc_type
|
|
37
|
+
if ifc_type in ["IfcColumn", "IfcBeam"]:
|
|
38
|
+
members.append(ifc_object)
|
|
39
|
+
|
|
40
|
+
# Step 4: Convert IFC model objects to appropriate RSTAB model objects
|
|
41
|
+
# Convert columns and beams to RSTAB straight members
|
|
42
|
+
rstab_app.convert_objects(
|
|
43
|
+
convert_into=common.ConvertObjectInto.CONVERT_IFC_OBJECT_INTO_STRAIGHT_MEMBER,
|
|
44
|
+
objs=members
|
|
45
|
+
)
|
|
46
|
+
|