dlubal.api 2.12.11__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.
- dlubal/__init__.py +0 -0
- dlubal/api/__init__.py +0 -0
- dlubal/api/common/__init__.py +8 -0
- dlubal/api/common/common_messages_pb2.py +78 -0
- dlubal/api/common/common_messages_pb2.pyi +230 -0
- dlubal/api/common/common_pb2.py +48 -0
- dlubal/api/common/common_pb2.pyi +65 -0
- dlubal/api/common/connection.py +252 -0
- dlubal/api/common/exceptions.py +12 -0
- 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 +38 -0
- dlubal/api/common/model_id_pb2.pyi +17 -0
- dlubal/api/common/options_pb2.py +35 -0
- dlubal/api/common/options_pb2.pyi +7 -0
- dlubal/api/common/packing.py +144 -0
- dlubal/api/common/table.py +37 -0
- dlubal/api/common/table_data_pb2.py +39 -0
- dlubal/api/common/table_data_pb2.pyi +21 -0
- dlubal/api/common/utility.py +131 -0
- dlubal/api/rfem/__init__.py +55 -0
- dlubal/api/rfem/all_pb2.py +36 -0
- dlubal/api/rfem/all_pb2.pyi +9 -0
- dlubal/api/rfem/aluminum_design/__init__.py +4 -0
- dlubal/api/rfem/aluminum_design/aluminum_boundary_conditions_pb2.py +51 -0
- dlubal/api/rfem/aluminum_design/aluminum_boundary_conditions_pb2.pyi +192 -0
- dlubal/api/rfem/aluminum_design/aluminum_effective_lengths_pb2.py +91 -0
- dlubal/api/rfem/aluminum_design/aluminum_effective_lengths_pb2.pyi +382 -0
- dlubal/api/rfem/aluminum_design/aluminum_member_local_cross_section_reduction_pb2.py +47 -0
- dlubal/api/rfem/aluminum_design/aluminum_member_local_cross_section_reduction_pb2.pyi +170 -0
- dlubal/api/rfem/aluminum_design/aluminum_member_transverse_weld_pb2.py +48 -0
- dlubal/api/rfem/aluminum_design/aluminum_member_transverse_weld_pb2.pyi +105 -0
- dlubal/api/rfem/aluminum_design_objects/__init__.py +2 -0
- dlubal/api/rfem/aluminum_design_objects/aluminum_design_sls_configuration_pb2.py +77 -0
- dlubal/api/rfem/aluminum_design_objects/aluminum_design_sls_configuration_pb2.pyi +269 -0
- dlubal/api/rfem/aluminum_design_objects/aluminum_design_uls_configuration_pb2.py +77 -0
- dlubal/api/rfem/aluminum_design_objects/aluminum_design_uls_configuration_pb2.pyi +269 -0
- dlubal/api/rfem/application.py +893 -0
- dlubal/api/rfem/application_pb2.py +77 -0
- dlubal/api/rfem/application_pb2.pyi +167 -0
- dlubal/api/rfem/application_pb2_grpc.py +2002 -0
- dlubal/api/rfem/base_data_objects/__init__.py +1 -0
- 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 +2639 -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 +55 -0
- dlubal/api/rfem/beam_panels/sheathing_pb2.py +38 -0
- dlubal/api/rfem/beam_panels/sheathing_pb2.pyi +63 -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 +95 -0
- dlubal/api/rfem/building_model/__init__.py +4 -0
- dlubal/api/rfem/building_model/building_story_pb2.py +59 -0
- dlubal/api/rfem/building_model/building_story_pb2.pyi +194 -0
- dlubal/api/rfem/building_model/deep_beam_pb2.py +271 -0
- dlubal/api/rfem/building_model/deep_beam_pb2.pyi +3606 -0
- dlubal/api/rfem/building_model/floor_set_pb2.py +39 -0
- dlubal/api/rfem/building_model/floor_set_pb2.pyi +60 -0
- dlubal/api/rfem/building_model/shear_wall_pb2.py +169 -0
- dlubal/api/rfem/building_model/shear_wall_pb2.pyi +1966 -0
- dlubal/api/rfem/calculation_diagrams/__init__.py +1 -0
- dlubal/api/rfem/calculation_diagrams/calculation_diagram_pb2.py +61 -0
- dlubal/api/rfem/calculation_diagrams/calculation_diagram_pb2.pyi +1762 -0
- 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 +56 -0
- dlubal/api/rfem/concrete_design_objects/__init__.py +5 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_fr_configuration_pb2.py +105 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_fr_configuration_pb2.pyi +435 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_seismic_configuration_pb2.py +61 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_seismic_configuration_pb2.pyi +193 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_sls_configuration_pb2.py +65 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_sls_configuration_pb2.pyi +215 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_uls_configuration_pb2.py +125 -0
- dlubal/api/rfem/concrete_design_objects/concrete_design_uls_configuration_pb2.pyi +545 -0
- dlubal/api/rfem/concrete_design_objects/concrete_effective_lengths_pb2.py +107 -0
- dlubal/api/rfem/concrete_design_objects/concrete_effective_lengths_pb2.pyi +496 -0
- dlubal/api/rfem/concrete_foundations/__init__.py +1 -0
- dlubal/api/rfem/concrete_foundations/single_foundation_pb2.py +75 -0
- dlubal/api/rfem/concrete_foundations/single_foundation_pb2.pyi +314 -0
- dlubal/api/rfem/construction_stages/__init__.py +1 -0
- dlubal/api/rfem/construction_stages/construction_stage_pb2.py +86 -0
- dlubal/api/rfem/construction_stages/construction_stage_pb2.pyi +535 -0
- dlubal/api/rfem/design_addons_pb2.py +36 -0
- dlubal/api/rfem/design_addons_pb2.pyi +28 -0
- dlubal/api/rfem/digital_twins/__init__.py +1 -0
- dlubal/api/rfem/digital_twins/digital_twins/__init__.py +3 -0
- dlubal/api/rfem/digital_twins/digital_twins/sensor_pb2.py +47 -0
- dlubal/api/rfem/digital_twins/digital_twins/sensor_pb2.pyi +126 -0
- dlubal/api/rfem/digital_twins/digital_twins/sensor_set_pb2.py +44 -0
- dlubal/api/rfem/digital_twins/digital_twins/sensor_set_pb2.pyi +71 -0
- dlubal/api/rfem/digital_twins/digital_twins/sensor_value_definition_pb2.py +44 -0
- dlubal/api/rfem/digital_twins/digital_twins/sensor_value_definition_pb2.pyi +98 -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 -0
- dlubal/api/rfem/dynamic_loads/accelerogram_pb2.py +42 -0
- dlubal/api/rfem/dynamic_loads/accelerogram_pb2.pyi +67 -0
- dlubal/api/rfem/dynamic_loads/response_spectrum_pb2.py +44 -0
- dlubal/api/rfem/dynamic_loads/response_spectrum_pb2.pyi +91 -0
- 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 -0
- dlubal/api/rfem/geotechnical_analysis/borehole_pb2.py +43 -0
- dlubal/api/rfem/geotechnical_analysis/borehole_pb2.pyi +70 -0
- dlubal/api/rfem/geotechnical_analysis/pile_resistance_pb2.py +42 -0
- dlubal/api/rfem/geotechnical_analysis/pile_resistance_pb2.pyi +75 -0
- dlubal/api/rfem/geotechnical_analysis/soil_massif_pb2.py +53 -0
- dlubal/api/rfem/geotechnical_analysis/soil_massif_pb2.pyi +164 -0
- dlubal/api/rfem/glass_design/__init__.py +1 -0
- dlubal/api/rfem/glass_design/glass_composition_model_pb2.py +91 -0
- dlubal/api/rfem/glass_design/glass_composition_model_pb2.pyi +456 -0
- 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 -0
- dlubal/api/rfem/global_parameters/global_parameter_pb2.py +40 -0
- dlubal/api/rfem/global_parameters/global_parameter_pb2.pyi +294 -0
- dlubal/api/rfem/guide_objects/__init__.py +15 -0
- dlubal/api/rfem/guide_objects/building_grid_pb2.py +53 -0
- dlubal/api/rfem/guide_objects/building_grid_pb2.pyi +211 -0
- dlubal/api/rfem/guide_objects/clipping_box_pb2.py +37 -0
- dlubal/api/rfem/guide_objects/clipping_box_pb2.pyi +40 -0
- dlubal/api/rfem/guide_objects/clipping_plane_pb2.py +45 -0
- dlubal/api/rfem/guide_objects/clipping_plane_pb2.pyi +121 -0
- dlubal/api/rfem/guide_objects/coordinate_system_pb2.py +41 -0
- dlubal/api/rfem/guide_objects/coordinate_system_pb2.pyi +91 -0
- dlubal/api/rfem/guide_objects/dimension_pb2.py +79 -0
- dlubal/api/rfem/guide_objects/dimension_pb2.pyi +422 -0
- dlubal/api/rfem/guide_objects/dxf_file_model_object_pb2.py +41 -0
- dlubal/api/rfem/guide_objects/dxf_file_model_object_pb2.pyi +121 -0
- dlubal/api/rfem/guide_objects/dxf_model_object_pb2.py +36 -0
- dlubal/api/rfem/guide_objects/dxf_model_object_pb2.pyi +15 -0
- 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 +47 -0
- dlubal/api/rfem/guide_objects/note_pb2.pyi +163 -0
- dlubal/api/rfem/guide_objects/object_snap_pb2.py +38 -0
- dlubal/api/rfem/guide_objects/object_snap_pb2.pyi +86 -0
- 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 +43 -0
- dlubal/api/rfem/guide_objects/visual_object_pb2.pyi +135 -0
- 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 -0
- dlubal/api/rfem/imperfections/imperfection_case_pb2.py +60 -0
- dlubal/api/rfem/imperfections/imperfection_case_pb2.pyi +215 -0
- dlubal/api/rfem/imperfections/member_imperfection_pb2.py +50 -0
- dlubal/api/rfem/imperfections/member_imperfection_pb2.pyi +205 -0
- dlubal/api/rfem/imperfections/member_set_imperfection_pb2.py +50 -0
- dlubal/api/rfem/imperfections/member_set_imperfection_pb2.pyi +203 -0
- dlubal/api/rfem/layout_and_drawing/__init__.py +2 -0
- dlubal/api/rfem/layout_and_drawing/cad_line_pb2.py +65 -0
- dlubal/api/rfem/layout_and_drawing/cad_line_pb2.pyi +372 -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 -0
- 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 +48 -0
- dlubal/api/rfem/load_wizards/wind_profile_pb2.pyi +777 -0
- dlubal/api/rfem/load_wizards/wind_simulation_pb2.py +55 -0
- dlubal/api/rfem/load_wizards/wind_simulation_pb2.pyi +148 -0
- dlubal/api/rfem/loading/__init__.py +16 -0
- dlubal/api/rfem/loading/action_combination_pb2.py +48 -0
- dlubal/api/rfem/loading/action_combination_pb2.pyi +155 -0
- dlubal/api/rfem/loading/action_pb2.py +54 -0
- dlubal/api/rfem/loading/action_pb2.pyi +719 -0
- dlubal/api/rfem/loading/combination_wizard_pb2.py +49 -0
- dlubal/api/rfem/loading/combination_wizard_pb2.pyi +116 -0
- dlubal/api/rfem/loading/design_situation_pb2.py +47 -0
- dlubal/api/rfem/loading/design_situation_pb2.pyi +1222 -0
- dlubal/api/rfem/loading/load_case_pb2.py +104 -0
- dlubal/api/rfem/loading/load_case_pb2.pyi +1385 -0
- dlubal/api/rfem/loading/load_combination_pb2.py +65 -0
- dlubal/api/rfem/loading/load_combination_pb2.pyi +390 -0
- dlubal/api/rfem/loading/modal_analysis_settings_pb2.py +52 -0
- dlubal/api/rfem/loading/modal_analysis_settings_pb2.pyi +155 -0
- dlubal/api/rfem/loading/optimization_settings_pb2.py +46 -0
- dlubal/api/rfem/loading/optimization_settings_pb2.pyi +111 -0
- dlubal/api/rfem/loading/pushover_analysis_settings_pb2.py +38 -0
- dlubal/api/rfem/loading/pushover_analysis_settings_pb2.pyi +50 -0
- dlubal/api/rfem/loading/relationship_between_load_cases_pb2.py +44 -0
- dlubal/api/rfem/loading/relationship_between_load_cases_pb2.pyi +66 -0
- dlubal/api/rfem/loading/result_combination_pb2.py +59 -0
- dlubal/api/rfem/loading/result_combination_pb2.pyi +304 -0
- dlubal/api/rfem/loading/spectral_analysis_settings_pb2.py +46 -0
- dlubal/api/rfem/loading/spectral_analysis_settings_pb2.pyi +80 -0
- dlubal/api/rfem/loading/stability_analysis_settings_pb2.py +44 -0
- dlubal/api/rfem/loading/stability_analysis_settings_pb2.pyi +118 -0
- dlubal/api/rfem/loading/static_analysis_settings_pb2.py +48 -0
- dlubal/api/rfem/loading/static_analysis_settings_pb2.pyi +172 -0
- dlubal/api/rfem/loading/time_history_analysis_settings_pb2.py +54 -0
- dlubal/api/rfem/loading/time_history_analysis_settings_pb2.pyi +169 -0
- dlubal/api/rfem/loading/wind_simulation_analysis_settings_pb2.py +52 -0
- dlubal/api/rfem/loading/wind_simulation_analysis_settings_pb2.pyi +176 -0
- dlubal/api/rfem/loads/__init__.py +19 -0
- 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 +42 -0
- dlubal/api/rfem/loads/free_circular_load_pb2.pyi +97 -0
- dlubal/api/rfem/loads/free_concentrated_load_pb2.py +44 -0
- dlubal/api/rfem/loads/free_concentrated_load_pb2.pyi +103 -0
- dlubal/api/rfem/loads/free_line_load_pb2.py +48 -0
- dlubal/api/rfem/loads/free_line_load_pb2.pyi +149 -0
- dlubal/api/rfem/loads/free_polygon_load_pb2.py +46 -0
- dlubal/api/rfem/loads/free_polygon_load_pb2.pyi +123 -0
- dlubal/api/rfem/loads/free_rectangular_load_pb2.py +53 -0
- dlubal/api/rfem/loads/free_rectangular_load_pb2.pyi +194 -0
- dlubal/api/rfem/loads/imposed_line_deformation_pb2.py +37 -0
- dlubal/api/rfem/loads/imposed_line_deformation_pb2.pyi +47 -0
- dlubal/api/rfem/loads/imposed_nodal_deformation_pb2.py +37 -0
- dlubal/api/rfem/loads/imposed_nodal_deformation_pb2.pyi +43 -0
- dlubal/api/rfem/loads/line_load_pb2.py +59 -0
- dlubal/api/rfem/loads/line_load_pb2.pyi +266 -0
- dlubal/api/rfem/loads/line_set_load_pb2.py +59 -0
- dlubal/api/rfem/loads/line_set_load_pb2.pyi +266 -0
- dlubal/api/rfem/loads/member_load_pb2.py +79 -0
- dlubal/api/rfem/loads/member_load_pb2.pyi +492 -0
- dlubal/api/rfem/loads/member_set_load_pb2.py +79 -0
- dlubal/api/rfem/loads/member_set_load_pb2.pyi +490 -0
- dlubal/api/rfem/loads/nodal_load_pb2.py +49 -0
- dlubal/api/rfem/loads/nodal_load_pb2.pyi +228 -0
- dlubal/api/rfem/loads/opening_load_pb2.py +43 -0
- dlubal/api/rfem/loads/opening_load_pb2.pyi +82 -0
- dlubal/api/rfem/loads/solid_load_pb2.py +53 -0
- dlubal/api/rfem/loads/solid_load_pb2.pyi +172 -0
- dlubal/api/rfem/loads/solid_set_load_pb2.py +53 -0
- dlubal/api/rfem/loads/solid_set_load_pb2.pyi +172 -0
- dlubal/api/rfem/loads/surface_load_pb2.py +65 -0
- dlubal/api/rfem/loads/surface_load_pb2.pyi +340 -0
- dlubal/api/rfem/loads/surface_set_load_pb2.py +65 -0
- dlubal/api/rfem/loads/surface_set_load_pb2.pyi +340 -0
- dlubal/api/rfem/manipulation/__init__.py +1 -0
- dlubal/api/rfem/manipulation/manipulation_pb2.py +38 -0
- dlubal/api/rfem/manipulation/manipulation_pb2.pyi +25 -0
- 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 +416 -0
- dlubal/api/rfem/reinforcement/__init__.py +4 -0
- dlubal/api/rfem/reinforcement/concrete_durability_pb2.py +68 -0
- dlubal/api/rfem/reinforcement/concrete_durability_pb2.pyi +257 -0
- dlubal/api/rfem/reinforcement/punching_reinforcement_pb2.py +58 -0
- dlubal/api/rfem/reinforcement/punching_reinforcement_pb2.pyi +319 -0
- dlubal/api/rfem/reinforcement/reinforcement_direction_pb2.py +38 -0
- dlubal/api/rfem/reinforcement/reinforcement_direction_pb2.pyi +47 -0
- dlubal/api/rfem/reinforcement/surface_reinforcement_pb2.py +84 -0
- dlubal/api/rfem/reinforcement/surface_reinforcement_pb2.pyi +743 -0
- dlubal/api/rfem/result_objects/__init__.py +2 -0
- 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 +43 -0
- dlubal/api/rfem/result_objects/result_section_pb2.pyi +116 -0
- dlubal/api/rfem/results/__init__.py +4 -0
- dlubal/api/rfem/results/result_table_pb2.py +36 -0
- dlubal/api/rfem/results/result_table_pb2.pyi +1462 -0
- dlubal/api/rfem/results/results_query_pb2.py +41 -0
- dlubal/api/rfem/results/results_query_pb2.pyi +31 -0
- dlubal/api/rfem/results/results_type_pb2.py +36 -0
- dlubal/api/rfem/results/results_type_pb2.pyi +1200 -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/__init__.py +4 -0
- dlubal/api/rfem/steel_design/steel_boundary_conditions_pb2.py +51 -0
- dlubal/api/rfem/steel_design/steel_boundary_conditions_pb2.pyi +192 -0
- dlubal/api/rfem/steel_design/steel_effective_lengths_pb2.py +117 -0
- dlubal/api/rfem/steel_design/steel_effective_lengths_pb2.pyi +524 -0
- dlubal/api/rfem/steel_design/steel_member_local_cross_section_reduction_pb2.py +47 -0
- dlubal/api/rfem/steel_design/steel_member_local_cross_section_reduction_pb2.pyi +170 -0
- dlubal/api/rfem/steel_design/steel_member_transverse_weld_pb2.py +48 -0
- dlubal/api/rfem/steel_design/steel_member_transverse_weld_pb2.pyi +105 -0
- dlubal/api/rfem/steel_design_objects/__init__.py +4 -0
- dlubal/api/rfem/steel_design_objects/steel_design_fr_configuration_pb2.py +57 -0
- dlubal/api/rfem/steel_design_objects/steel_design_fr_configuration_pb2.pyi +151 -0
- dlubal/api/rfem/steel_design_objects/steel_design_seismic_configuration_pb2.py +53 -0
- dlubal/api/rfem/steel_design_objects/steel_design_seismic_configuration_pb2.pyi +129 -0
- dlubal/api/rfem/steel_design_objects/steel_design_sls_configuration_pb2.py +141 -0
- dlubal/api/rfem/steel_design_objects/steel_design_sls_configuration_pb2.pyi +621 -0
- dlubal/api/rfem/steel_design_objects/steel_design_uls_configuration_pb2.py +141 -0
- dlubal/api/rfem/steel_design_objects/steel_design_uls_configuration_pb2.pyi +621 -0
- 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 +15 -0
- dlubal/api/rfem/structure_advanced/block_pb2.py +55 -0
- dlubal/api/rfem/structure_advanced/block_pb2.pyi +196 -0
- 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 +36 -0
- dlubal/api/rfem/structure_advanced/intersection_pb2.pyi +26 -0
- dlubal/api/rfem/structure_advanced/line_release_pb2.py +42 -0
- dlubal/api/rfem/structure_advanced/line_release_pb2.pyi +71 -0
- dlubal/api/rfem/structure_advanced/nodal_release_pb2.py +42 -0
- dlubal/api/rfem/structure_advanced/nodal_release_pb2.pyi +69 -0
- dlubal/api/rfem/structure_advanced/rigid_link_pb2.py +41 -0
- dlubal/api/rfem/structure_advanced/rigid_link_pb2.pyi +104 -0
- dlubal/api/rfem/structure_advanced/rule_based_link_generator_pb2.py +49 -0
- dlubal/api/rfem/structure_advanced/rule_based_link_generator_pb2.pyi +108 -0
- dlubal/api/rfem/structure_advanced/structure_modification_pb2.py +98 -0
- dlubal/api/rfem/structure_advanced/structure_modification_pb2.pyi +473 -0
- 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_cell_set_pb2.py +39 -0
- dlubal/api/rfem/structure_advanced/surface_cell_set_pb2.pyi +56 -0
- dlubal/api/rfem/structure_advanced/surface_release_pb2.py +42 -0
- dlubal/api/rfem/structure_advanced/surface_release_pb2.pyi +73 -0
- dlubal/api/rfem/structure_advanced/surface_results_adjustment_pb2.py +61 -0
- dlubal/api/rfem/structure_advanced/surface_results_adjustment_pb2.pyi +165 -0
- dlubal/api/rfem/structure_advanced/surfaces_contact_pb2.py +38 -0
- dlubal/api/rfem/structure_advanced/surfaces_contact_pb2.pyi +39 -0
- dlubal/api/rfem/structure_core/__init__.py +15 -0
- dlubal/api/rfem/structure_core/cross_section_pb2.py +76 -0
- dlubal/api/rfem/structure_core/cross_section_pb2.pyi +2141 -0
- dlubal/api/rfem/structure_core/line_pb2.py +87 -0
- dlubal/api/rfem/structure_core/line_pb2.pyi +592 -0
- dlubal/api/rfem/structure_core/line_set_pb2.py +39 -0
- dlubal/api/rfem/structure_core/line_set_pb2.pyi +62 -0
- dlubal/api/rfem/structure_core/material_pb2.py +161 -0
- dlubal/api/rfem/structure_core/material_pb2.pyi +1586 -0
- dlubal/api/rfem/structure_core/member_pb2.py +240 -0
- dlubal/api/rfem/structure_core/member_pb2.pyi +2767 -0
- dlubal/api/rfem/structure_core/member_representative_pb2.py +336 -0
- dlubal/api/rfem/structure_core/member_representative_pb2.pyi +4383 -0
- dlubal/api/rfem/structure_core/member_set_pb2.py +168 -0
- dlubal/api/rfem/structure_core/member_set_pb2.pyi +1955 -0
- dlubal/api/rfem/structure_core/member_set_representative_pb2.py +466 -0
- dlubal/api/rfem/structure_core/member_set_representative_pb2.pyi +6333 -0
- dlubal/api/rfem/structure_core/node_pb2.py +49 -0
- dlubal/api/rfem/structure_core/node_pb2.pyi +180 -0
- dlubal/api/rfem/structure_core/opening_pb2.py +37 -0
- dlubal/api/rfem/structure_core/opening_pb2.pyi +45 -0
- dlubal/api/rfem/structure_core/solid_pb2.py +63 -0
- dlubal/api/rfem/structure_core/solid_pb2.pyi +292 -0
- dlubal/api/rfem/structure_core/solid_set_pb2.py +45 -0
- dlubal/api/rfem/structure_core/solid_set_pb2.pyi +92 -0
- dlubal/api/rfem/structure_core/surface_pb2.py +97 -0
- dlubal/api/rfem/structure_core/surface_pb2.pyi +651 -0
- dlubal/api/rfem/structure_core/surface_set_pb2.py +49 -0
- dlubal/api/rfem/structure_core/surface_set_pb2.pyi +182 -0
- dlubal/api/rfem/structure_core/thickness_pb2.py +76 -0
- dlubal/api/rfem/structure_core/thickness_pb2.pyi +555 -0
- dlubal/api/rfem/timber_design/__init__.py +6 -0
- dlubal/api/rfem/timber_design/timber_effective_lengths_pb2.py +105 -0
- dlubal/api/rfem/timber_design/timber_effective_lengths_pb2.pyi +478 -0
- dlubal/api/rfem/timber_design/timber_member_local_cross_section_reduction_pb2.py +48 -0
- dlubal/api/rfem/timber_design/timber_member_local_cross_section_reduction_pb2.pyi +125 -0
- dlubal/api/rfem/timber_design/timber_moisture_class_pb2.py +38 -0
- dlubal/api/rfem/timber_design/timber_moisture_class_pb2.pyi +49 -0
- dlubal/api/rfem/timber_design/timber_screw_type_pb2.py +38 -0
- dlubal/api/rfem/timber_design/timber_screw_type_pb2.pyi +58 -0
- dlubal/api/rfem/timber_design/timber_service_class_pb2.py +38 -0
- dlubal/api/rfem/timber_design/timber_service_class_pb2.pyi +49 -0
- dlubal/api/rfem/timber_design/timber_service_conditions_pb2.py +42 -0
- dlubal/api/rfem/timber_design/timber_service_conditions_pb2.pyi +115 -0
- dlubal/api/rfem/timber_design_objects/__init__.py +3 -0
- dlubal/api/rfem/timber_design_objects/timber_design_fr_configuration_pb2.py +125 -0
- dlubal/api/rfem/timber_design_objects/timber_design_fr_configuration_pb2.pyi +525 -0
- dlubal/api/rfem/timber_design_objects/timber_design_sls_configuration_pb2.py +125 -0
- dlubal/api/rfem/timber_design_objects/timber_design_sls_configuration_pb2.pyi +525 -0
- dlubal/api/rfem/timber_design_objects/timber_design_uls_configuration_pb2.py +165 -0
- dlubal/api/rfem/timber_design_objects/timber_design_uls_configuration_pb2.pyi +753 -0
- 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_lines/__init__.py +6 -0
- 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 +155 -0
- dlubal/api/rfem/types_for_lines/line_hinge_pb2.pyi +1008 -0
- dlubal/api/rfem/types_for_lines/line_link_pb2.py +43 -0
- dlubal/api/rfem/types_for_lines/line_link_pb2.pyi +70 -0
- dlubal/api/rfem/types_for_lines/line_mesh_refinement_pb2.py +38 -0
- dlubal/api/rfem/types_for_lines/line_mesh_refinement_pb2.pyi +49 -0
- dlubal/api/rfem/types_for_lines/line_support_pb2.py +159 -0
- dlubal/api/rfem/types_for_lines/line_support_pb2.pyi +1068 -0
- dlubal/api/rfem/types_for_lines/line_welded_joint_pb2.py +44 -0
- dlubal/api/rfem/types_for_lines/line_welded_joint_pb2.pyi +100 -0
- dlubal/api/rfem/types_for_members/__init__.py +14 -0
- dlubal/api/rfem/types_for_members/design_support_pb2.py +62 -0
- dlubal/api/rfem/types_for_members/design_support_pb2.pyi +253 -0
- 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 +36 -0
- dlubal/api/rfem/types_for_members/member_definable_stiffness_pb2.pyi +52 -0
- dlubal/api/rfem/types_for_members/member_eccentricity_pb2.py +49 -0
- dlubal/api/rfem/types_for_members/member_eccentricity_pb2.pyi +113 -0
- dlubal/api/rfem/types_for_members/member_hinge_pb2.py +249 -0
- dlubal/api/rfem/types_for_members/member_hinge_pb2.pyi +1782 -0
- dlubal/api/rfem/types_for_members/member_nonlinearity_pb2.py +38 -0
- dlubal/api/rfem/types_for_members/member_nonlinearity_pb2.pyi +61 -0
- dlubal/api/rfem/types_for_members/member_openings_pb2.py +46 -0
- dlubal/api/rfem/types_for_members/member_openings_pb2.pyi +97 -0
- dlubal/api/rfem/types_for_members/member_result_intermediate_point_pb2.py +40 -0
- dlubal/api/rfem/types_for_members/member_result_intermediate_point_pb2.pyi +52 -0
- dlubal/api/rfem/types_for_members/member_rotational_restraint_pb2.py +50 -0
- dlubal/api/rfem/types_for_members/member_rotational_restraint_pb2.pyi +127 -0
- dlubal/api/rfem/types_for_members/member_shear_panel_pb2.py +40 -0
- dlubal/api/rfem/types_for_members/member_shear_panel_pb2.pyi +80 -0
- dlubal/api/rfem/types_for_members/member_spring_pb2.py +52 -0
- dlubal/api/rfem/types_for_members/member_spring_pb2.pyi +149 -0
- dlubal/api/rfem/types_for_members/member_stiffness_modification_pb2.py +48 -0
- dlubal/api/rfem/types_for_members/member_stiffness_modification_pb2.pyi +139 -0
- dlubal/api/rfem/types_for_members/member_support_pb2.py +49 -0
- dlubal/api/rfem/types_for_members/member_support_pb2.pyi +156 -0
- dlubal/api/rfem/types_for_members/member_transverse_stiffener_pb2.py +48 -0
- dlubal/api/rfem/types_for_members/member_transverse_stiffener_pb2.pyi +147 -0
- dlubal/api/rfem/types_for_nodes/__init__.py +3 -0
- dlubal/api/rfem/types_for_nodes/nodal_link_pb2.py +43 -0
- dlubal/api/rfem/types_for_nodes/nodal_link_pb2.pyi +78 -0
- dlubal/api/rfem/types_for_nodes/nodal_mesh_refinement_pb2.py +40 -0
- dlubal/api/rfem/types_for_nodes/nodal_mesh_refinement_pb2.pyi +63 -0
- dlubal/api/rfem/types_for_nodes/nodal_support_pb2.py +211 -0
- dlubal/api/rfem/types_for_nodes/nodal_support_pb2.pyi +1456 -0
- dlubal/api/rfem/types_for_solids/__init__.py +3 -0
- dlubal/api/rfem/types_for_solids/solid_contacts_pb2.py +40 -0
- dlubal/api/rfem/types_for_solids/solid_contacts_pb2.pyi +59 -0
- dlubal/api/rfem/types_for_solids/solid_gas_pb2.py +36 -0
- dlubal/api/rfem/types_for_solids/solid_gas_pb2.pyi +28 -0
- dlubal/api/rfem/types_for_solids/solid_mesh_refinement_pb2.py +36 -0
- dlubal/api/rfem/types_for_solids/solid_mesh_refinement_pb2.pyi +30 -0
- dlubal/api/rfem/types_for_special_objects/__init__.py +4 -0
- dlubal/api/rfem/types_for_special_objects/line_release_type_pb2.py +156 -0
- dlubal/api/rfem/types_for_special_objects/line_release_type_pb2.pyi +1017 -0
- dlubal/api/rfem/types_for_special_objects/nodal_release_type_pb2.py +198 -0
- dlubal/api/rfem/types_for_special_objects/nodal_release_type_pb2.pyi +1385 -0
- dlubal/api/rfem/types_for_special_objects/surface_release_type_pb2.py +81 -0
- dlubal/api/rfem/types_for_special_objects/surface_release_type_pb2.pyi +374 -0
- dlubal/api/rfem/types_for_special_objects/surfaces_contact_type_pb2.py +44 -0
- dlubal/api/rfem/types_for_special_objects/surfaces_contact_type_pb2.pyi +77 -0
- dlubal/api/rfem/types_for_steel_joints/__init__.py +1 -0
- dlubal/api/rfem/types_for_steel_joints/steel_joint_pb2.py +53 -0
- dlubal/api/rfem/types_for_steel_joints/steel_joint_pb2.pyi +188 -0
- dlubal/api/rfem/types_for_surfaces/__init__.py +4 -0
- dlubal/api/rfem/types_for_surfaces/surface_eccentricity_pb2.py +42 -0
- dlubal/api/rfem/types_for_surfaces/surface_eccentricity_pb2.pyi +71 -0
- dlubal/api/rfem/types_for_surfaces/surface_mesh_refinement_pb2.py +36 -0
- dlubal/api/rfem/types_for_surfaces/surface_mesh_refinement_pb2.pyi +30 -0
- dlubal/api/rfem/types_for_surfaces/surface_stiffness_modification_pb2.py +40 -0
- dlubal/api/rfem/types_for_surfaces/surface_stiffness_modification_pb2.pyi +163 -0
- dlubal/api/rfem/types_for_surfaces/surface_support_pb2.py +43 -0
- dlubal/api/rfem/types_for_surfaces/surface_support_pb2.pyi +82 -0
- 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 +42 -0
- dlubal/api/rfem/types_for_wind_simulation/shrink_wrapping_pb2.pyi +73 -0
- dlubal/api/rsection/__init__.py +15 -0
- dlubal/api/rsection/all_pb2.py +36 -0
- dlubal/api/rsection/all_pb2.pyi +9 -0
- dlubal/api/rsection/application.py +572 -0
- dlubal/api/rsection/application_pb2.py +52 -0
- dlubal/api/rsection/application_pb2.pyi +59 -0
- dlubal/api/rsection/application_pb2_grpc.py +1337 -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 +314 -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/manipulation/__init__.py +1 -0
- dlubal/api/rsection/manipulation/manipulation_pb2.py +38 -0
- dlubal/api/rsection/manipulation/manipulation_pb2.pyi +23 -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/cross_section_pb2.py +50 -0
- dlubal/api/rsection/structure_core/cross_section_pb2.pyi +1731 -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 +127 -0
- dlubal/api/rsection/structure_core/material_pb2.pyi +1122 -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/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 +39 -0
- dlubal/api/rstab/all_pb2.py +36 -0
- dlubal/api/rstab/all_pb2.pyi +9 -0
- dlubal/api/rstab/aluminum_design/__init__.py +4 -0
- dlubal/api/rstab/aluminum_design/aluminum_boundary_conditions_pb2.py +51 -0
- dlubal/api/rstab/aluminum_design/aluminum_boundary_conditions_pb2.pyi +188 -0
- dlubal/api/rstab/aluminum_design/aluminum_effective_lengths_pb2.py +91 -0
- dlubal/api/rstab/aluminum_design/aluminum_effective_lengths_pb2.pyi +382 -0
- dlubal/api/rstab/aluminum_design/aluminum_member_local_cross_section_reduction_pb2.py +47 -0
- dlubal/api/rstab/aluminum_design/aluminum_member_local_cross_section_reduction_pb2.pyi +166 -0
- dlubal/api/rstab/aluminum_design/aluminum_member_transverse_weld_pb2.py +48 -0
- dlubal/api/rstab/aluminum_design/aluminum_member_transverse_weld_pb2.pyi +101 -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 +827 -0
- dlubal/api/rstab/application_pb2.py +72 -0
- dlubal/api/rstab/application_pb2.pyi +148 -0
- dlubal/api/rstab/application_pb2_grpc.py +1780 -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 +2373 -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 +5 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_fr_configuration_pb2.py +105 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_fr_configuration_pb2.pyi +435 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_seismic_configuration_pb2.py +61 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_seismic_configuration_pb2.pyi +193 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_sls_configuration_pb2.py +65 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_sls_configuration_pb2.pyi +203 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_uls_configuration_pb2.py +125 -0
- dlubal/api/rstab/concrete_design_objects/concrete_design_uls_configuration_pb2.pyi +533 -0
- dlubal/api/rstab/concrete_design_objects/concrete_effective_lengths_pb2.py +107 -0
- dlubal/api/rstab/concrete_design_objects/concrete_effective_lengths_pb2.pyi +496 -0
- dlubal/api/rstab/concrete_foundations/__init__.py +1 -0
- dlubal/api/rstab/concrete_foundations/single_foundation_pb2.py +75 -0
- dlubal/api/rstab/concrete_foundations/single_foundation_pb2.pyi +310 -0
- dlubal/api/rstab/design_addons_pb2.py +36 -0
- dlubal/api/rstab/design_addons_pb2.pyi +22 -0
- dlubal/api/rstab/digital_twins/__init__.py +1 -0
- dlubal/api/rstab/digital_twins/digital_twins/__init__.py +3 -0
- dlubal/api/rstab/digital_twins/digital_twins/sensor_pb2.py +47 -0
- dlubal/api/rstab/digital_twins/digital_twins/sensor_pb2.pyi +126 -0
- dlubal/api/rstab/digital_twins/digital_twins/sensor_set_pb2.py +44 -0
- dlubal/api/rstab/digital_twins/digital_twins/sensor_set_pb2.pyi +71 -0
- dlubal/api/rstab/digital_twins/digital_twins/sensor_value_definition_pb2.py +44 -0
- dlubal/api/rstab/digital_twins/digital_twins/sensor_value_definition_pb2.pyi +98 -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 +282 -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 +121 -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 +49 -0
- dlubal/api/rstab/loading/combination_wizard_pb2.pyi +116 -0
- dlubal/api/rstab/loading/design_situation_pb2.py +47 -0
- dlubal/api/rstab/loading/design_situation_pb2.pyi +1222 -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 +118 -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 +163 -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/manipulation/__init__.py +1 -0
- dlubal/api/rstab/manipulation/manipulation_pb2.py +38 -0
- dlubal/api/rstab/manipulation/manipulation_pb2.pyi +25 -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 +256 -0
- dlubal/api/rstab/reinforcement/__init__.py +1 -0
- dlubal/api/rstab/reinforcement/concrete_durability_pb2.py +68 -0
- dlubal/api/rstab/reinforcement/concrete_durability_pb2.pyi +251 -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 +584 -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 +454 -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/__init__.py +4 -0
- dlubal/api/rstab/steel_design/steel_boundary_conditions_pb2.py +51 -0
- dlubal/api/rstab/steel_design/steel_boundary_conditions_pb2.pyi +188 -0
- dlubal/api/rstab/steel_design/steel_effective_lengths_pb2.py +117 -0
- dlubal/api/rstab/steel_design/steel_effective_lengths_pb2.pyi +524 -0
- dlubal/api/rstab/steel_design/steel_member_local_cross_section_reduction_pb2.py +47 -0
- dlubal/api/rstab/steel_design/steel_member_local_cross_section_reduction_pb2.pyi +166 -0
- dlubal/api/rstab/steel_design/steel_member_transverse_weld_pb2.py +48 -0
- dlubal/api/rstab/steel_design/steel_member_transverse_weld_pb2.pyi +101 -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 +5 -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 +65 -0
- dlubal/api/rstab/structure_advanced/rule_based_link_generator_pb2.py +49 -0
- dlubal/api/rstab/structure_advanced/rule_based_link_generator_pb2.pyi +108 -0
- dlubal/api/rstab/structure_advanced/structure_modification_pb2.py +70 -0
- dlubal/api/rstab/structure_advanced/structure_modification_pb2.pyi +275 -0
- dlubal/api/rstab/structure_core/__init__.py +7 -0
- dlubal/api/rstab/structure_core/cross_section_pb2.py +76 -0
- dlubal/api/rstab/structure_core/cross_section_pb2.pyi +2141 -0
- dlubal/api/rstab/structure_core/material_pb2.py +129 -0
- dlubal/api/rstab/structure_core/material_pb2.pyi +1132 -0
- dlubal/api/rstab/structure_core/member_pb2.py +228 -0
- dlubal/api/rstab/structure_core/member_pb2.pyi +2605 -0
- dlubal/api/rstab/structure_core/member_representative_pb2.py +324 -0
- dlubal/api/rstab/structure_core/member_representative_pb2.pyi +4221 -0
- dlubal/api/rstab/structure_core/member_set_pb2.py +168 -0
- dlubal/api/rstab/structure_core/member_set_pb2.pyi +1955 -0
- dlubal/api/rstab/structure_core/member_set_representative_pb2.py +456 -0
- dlubal/api/rstab/structure_core/member_set_representative_pb2.pyi +6215 -0
- dlubal/api/rstab/structure_core/node_pb2.py +49 -0
- dlubal/api/rstab/structure_core/node_pb2.pyi +172 -0
- dlubal/api/rstab/timber_design/__init__.py +6 -0
- dlubal/api/rstab/timber_design/timber_effective_lengths_pb2.py +105 -0
- dlubal/api/rstab/timber_design/timber_effective_lengths_pb2.pyi +478 -0
- dlubal/api/rstab/timber_design/timber_member_local_cross_section_reduction_pb2.py +48 -0
- dlubal/api/rstab/timber_design/timber_member_local_cross_section_reduction_pb2.pyi +121 -0
- dlubal/api/rstab/timber_design/timber_moisture_class_pb2.py +38 -0
- dlubal/api/rstab/timber_design/timber_moisture_class_pb2.pyi +41 -0
- dlubal/api/rstab/timber_design/timber_screw_type_pb2.py +38 -0
- dlubal/api/rstab/timber_design/timber_screw_type_pb2.pyi +58 -0
- dlubal/api/rstab/timber_design/timber_service_class_pb2.py +38 -0
- dlubal/api/rstab/timber_design/timber_service_class_pb2.pyi +41 -0
- dlubal/api/rstab/timber_design/timber_service_conditions_pb2.py +42 -0
- dlubal/api/rstab/timber_design/timber_service_conditions_pb2.pyi +107 -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_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_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 +1782 -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 +78 -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 +1383 -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 +42 -0
- dlubal/api/rstab/types_for_wind_simulation/shrink_wrapping_pb2.pyi +69 -0
- dlubal_api-2.12.11.dist-info/METADATA +76 -0
- dlubal_api-2.12.11.dist-info/RECORD +960 -0
- dlubal_api-2.12.11.dist-info/WHEEL +5 -0
- dlubal_api-2.12.11.dist-info/top_level.txt +3 -0
- examples/rfem/base_data.py +28 -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 +87 -0
- examples/rfem/design_results.py +58 -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 +64 -0
- examples/rfem/mesh_settings.py +25 -0
- examples/rfem/modal_analysis.py +243 -0
- examples/rfem/multiple_models.py +93 -0
- examples/rfem/nurbs_topology.py +54 -0
- examples/rfem/results_access.py +38 -0
- examples/rfem/results_axes_system.py +53 -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/spectral_analysis.py +21124 -0
- examples/rfem/steel_hall.py +175 -0
- examples/rfem/steel_station.py +890 -0
- examples/rfem/stress_strain_analysis.py +95 -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 +27 -0
- examples/rstab/cantilever.py +166 -0
- examples/rstab/column.py +184 -0
- examples/rstab/dataframe.py +20 -0
- examples/rstab/design_configuration.py +87 -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/modal_analysis.py +238 -0
- examples/rstab/multiple_models.py +91 -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
- examples/rstab/steel_hall.py +165 -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
|
@@ -0,0 +1,893 @@
|
|
|
1
|
+
# Autogenerated code. DO NOT EDIT. Manual code can be added to the corresponding .template.py file.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from dlubal.api.common.connection import _ApiKey, check_ssl, init_channel
|
|
5
|
+
from dlubal.api.common.packing import pack_message_to_any, pack_object, pack_object_list, unpack_object, unpack_object_list, convert_table_data_to_table
|
|
6
|
+
from dlubal.api.common.table_data_pb2 import TableData
|
|
7
|
+
from dlubal.api.common.model_id_pb2 import ModelId
|
|
8
|
+
from dlubal.api.common.common_messages_pb2 import ConvertObjectsRequest, ImportRequest, ExportRequest, GetObjectListRequest
|
|
9
|
+
from dlubal.api.rfem.results import ResultsType
|
|
10
|
+
from dlubal.api.rfem.results.results_query_pb2 import ResultsQuery, ResultsFilter
|
|
11
|
+
import grpc
|
|
12
|
+
from collections.abc import Iterable
|
|
13
|
+
import sys
|
|
14
|
+
from importlib.metadata import version, PackageNotFoundError
|
|
15
|
+
import collections.abc
|
|
16
|
+
import dlubal.api.common.common_messages_pb2
|
|
17
|
+
import dlubal.api.common.model_id_pb2
|
|
18
|
+
import dlubal.api.rfem.application_pb2
|
|
19
|
+
import dlubal.api.rfem.application_pb2_grpc
|
|
20
|
+
import dlubal.api.rfem.base_data_pb2
|
|
21
|
+
import dlubal.api.rfem.design_addons_pb2
|
|
22
|
+
import dlubal.api.rfem.mesh.mesh_settings_pb2
|
|
23
|
+
import dlubal.api.rfem.object_id_pb2
|
|
24
|
+
import dlubal.api.rfem.object_type_pb2
|
|
25
|
+
import google.protobuf.empty_pb2
|
|
26
|
+
import google.protobuf.wrappers_pb2
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class Application:
|
|
30
|
+
|
|
31
|
+
def __init__(self,
|
|
32
|
+
api_key_value=None,
|
|
33
|
+
api_key_name=None,
|
|
34
|
+
url='127.0.0.1',
|
|
35
|
+
port=9000,
|
|
36
|
+
ssl=False,
|
|
37
|
+
ssl_file=''):
|
|
38
|
+
'''
|
|
39
|
+
Initialize the RFEM client and connect to gRPC server.
|
|
40
|
+
|
|
41
|
+
Args:
|
|
42
|
+
api_key_value (str | None):
|
|
43
|
+
The API key for authentication, obtained from the Extranet > My Data.
|
|
44
|
+
Can be skipped if an API key is stored in ``config.ini`` file.
|
|
45
|
+
api_key_name (str | None):
|
|
46
|
+
The name of a stored API key in the ``config.ini`` file.
|
|
47
|
+
Used to retrieve the corresponding ``api_key_value``.
|
|
48
|
+
If not provided, the default API key will be used.
|
|
49
|
+
url (str | 127.0.0.1):
|
|
50
|
+
The gRPC server's URL. Use this to connect to a remote server by specifying its IP.
|
|
51
|
+
port (int | 9000):
|
|
52
|
+
The server's port number. Adjust if the server uses a different port.
|
|
53
|
+
ssl (bool | False):
|
|
54
|
+
Enables SSL encryption for secure communication.
|
|
55
|
+
ssl_file (str | None):
|
|
56
|
+
Path to the SSL certificate file (e.g., .crt).
|
|
57
|
+
Used only if SSL encryption is enabled.
|
|
58
|
+
'''
|
|
59
|
+
self.url = url
|
|
60
|
+
self.port = port
|
|
61
|
+
check_ssl(ssl, ssl_file)
|
|
62
|
+
self.ssl = ssl
|
|
63
|
+
self.ssl_file = ssl_file
|
|
64
|
+
self.api_key = _ApiKey(api_key_name, api_key_value)
|
|
65
|
+
self.channel = init_channel(self.api_key.value, self.url, self.port, self.ssl, self.ssl_file)
|
|
66
|
+
self.stub = dlubal.api.rfem.application_pb2_grpc.ApplicationStub(self.channel) if self.channel else None
|
|
67
|
+
self.__check_connection()
|
|
68
|
+
|
|
69
|
+
def __enter__(self):
|
|
70
|
+
'''
|
|
71
|
+
Start a session by entering the context manager
|
|
72
|
+
'''
|
|
73
|
+
return self
|
|
74
|
+
|
|
75
|
+
def __exit__(self, exc_type, exc_value, traceback):
|
|
76
|
+
'''
|
|
77
|
+
Ensure the session is finished and channel is closed properly before handling exceptions.
|
|
78
|
+
'''
|
|
79
|
+
|
|
80
|
+
# Attempt to close the connection first to prevent delays
|
|
81
|
+
try:
|
|
82
|
+
self.close_connection()
|
|
83
|
+
except Exception as e:
|
|
84
|
+
pass
|
|
85
|
+
|
|
86
|
+
# Now handle exceptions that occurred in the `with` block
|
|
87
|
+
if exc_type is not None:
|
|
88
|
+
if issubclass(exc_type, grpc.RpcError):
|
|
89
|
+
raise RuntimeError(f"gRPC Error: {exc_value.code().name} - {exc_value.details()}") from None
|
|
90
|
+
elif issubclass(exc_type, (SystemExit, KeyboardInterrupt)):
|
|
91
|
+
return False
|
|
92
|
+
raise RuntimeError(f"Unexpected error: {str(exc_value)}") from None
|
|
93
|
+
|
|
94
|
+
def __check_connection(self):
|
|
95
|
+
'''
|
|
96
|
+
Check connection and package version compatibility.
|
|
97
|
+
'''
|
|
98
|
+
|
|
99
|
+
# Check connection
|
|
100
|
+
try:
|
|
101
|
+
application_info = self.get_application_info()
|
|
102
|
+
except grpc._channel._InactiveRpcError as e:
|
|
103
|
+
sys.tracebacklimit = 0
|
|
104
|
+
raise RuntimeError(f"gRPC Connection error: {e.code().name} - {e.details()}") from None
|
|
105
|
+
|
|
106
|
+
# Check package version compatibility
|
|
107
|
+
try:
|
|
108
|
+
client_version = version('dlubal.api')
|
|
109
|
+
client_major, client_minor = map(int, client_version.split('.')[1:3])
|
|
110
|
+
app_major, app_minor = map(int, application_info.version.split('.')[1:3])
|
|
111
|
+
|
|
112
|
+
# If the versions differ, print a warning
|
|
113
|
+
if app_major != client_major or app_minor != client_minor:
|
|
114
|
+
print('\033[93mWARNING:\033[0m')
|
|
115
|
+
print(f'Version mismatch between dlubal.api client package \033[91m{client_version}\033[0m and server application {application_info.name}.')
|
|
116
|
+
print(f'To ensure full compatibility, please use the client version 2.{app_major}.{app_minor}.')
|
|
117
|
+
print(f'To update, run: \033[92mpython.exe -m pip install --upgrade dlubal.api==2.{app_major}.{app_minor}\033[0m\n')
|
|
118
|
+
|
|
119
|
+
except PackageNotFoundError:
|
|
120
|
+
return
|
|
121
|
+
|
|
122
|
+
# Functions using packing
|
|
123
|
+
def get_object(self, obj, model_id: ModelId | None = None):
|
|
124
|
+
"""
|
|
125
|
+
Retrieves a single object from the model.
|
|
126
|
+
|
|
127
|
+
Args:
|
|
128
|
+
obj (obj):
|
|
129
|
+
An object to be retrieved.
|
|
130
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
131
|
+
Unique identifier of the model. If None, the active model is used.
|
|
132
|
+
|
|
133
|
+
Returns:
|
|
134
|
+
:ref:`rfem_objects`: A retrieved object.
|
|
135
|
+
"""
|
|
136
|
+
result = self.stub.get_object_impl(pack_object(obj, model_id))
|
|
137
|
+
return unpack_object(result, type(obj))
|
|
138
|
+
|
|
139
|
+
def get_object_list(self, objs: list, only_selected: bool = False, model_id: ModelId | None = None):
|
|
140
|
+
"""
|
|
141
|
+
Retrieves a list of objects from the model.
|
|
142
|
+
|
|
143
|
+
Args:
|
|
144
|
+
objs (list[obj]):
|
|
145
|
+
A list of model objects to retrieve.
|
|
146
|
+
only_selected (bool, optional):
|
|
147
|
+
If True, only returns objects from the list that are currently selected in the model.
|
|
148
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
149
|
+
Unique identifier of the model. If None, the active model is used.
|
|
150
|
+
|
|
151
|
+
Returns:
|
|
152
|
+
list[obj]: A list of the retrieved objects.
|
|
153
|
+
"""
|
|
154
|
+
result = self.stub.get_object_list_impl(
|
|
155
|
+
GetObjectListRequest(
|
|
156
|
+
objects=pack_object_list(objs, model_id),
|
|
157
|
+
return_only_selected_objects=only_selected
|
|
158
|
+
)
|
|
159
|
+
)
|
|
160
|
+
return unpack_object_list(result, objs)
|
|
161
|
+
|
|
162
|
+
def create_object(self, obj, model_id: ModelId | None = None):
|
|
163
|
+
"""
|
|
164
|
+
Creates a single object in the model.
|
|
165
|
+
|
|
166
|
+
Args:
|
|
167
|
+
obj (obj):
|
|
168
|
+
An object to be created.
|
|
169
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
170
|
+
Unique identifier of the model. If None, the active model is used.
|
|
171
|
+
|
|
172
|
+
Returns:
|
|
173
|
+
None
|
|
174
|
+
"""
|
|
175
|
+
return self.stub.create_object_impl(pack_object(obj, model_id))
|
|
176
|
+
|
|
177
|
+
def create_object_list(self, objs: list, model_id: ModelId | None = None):
|
|
178
|
+
"""
|
|
179
|
+
Creates a list of objects in the model.
|
|
180
|
+
|
|
181
|
+
Args:
|
|
182
|
+
objs (list[obj]):
|
|
183
|
+
A list of objects to be created.
|
|
184
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
185
|
+
Unique identifier of the model. If None, the active model is used.
|
|
186
|
+
|
|
187
|
+
Returns:
|
|
188
|
+
None
|
|
189
|
+
"""
|
|
190
|
+
return self.stub.create_object_list_impl(pack_object_list(objs, model_id))
|
|
191
|
+
|
|
192
|
+
def update_object(self, obj, model_id: ModelId | None = None):
|
|
193
|
+
"""
|
|
194
|
+
Updates a single object in the model.
|
|
195
|
+
|
|
196
|
+
Args:
|
|
197
|
+
obj (obj):
|
|
198
|
+
An object to be updated.
|
|
199
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
200
|
+
Unique identifier of the model. If None, the active model is used.
|
|
201
|
+
|
|
202
|
+
Returns:
|
|
203
|
+
None
|
|
204
|
+
"""
|
|
205
|
+
self.stub.update_object_impl(pack_object(obj, model_id))
|
|
206
|
+
|
|
207
|
+
def update_object_list(self, objs: list, model_id: ModelId | None = None):
|
|
208
|
+
"""
|
|
209
|
+
Updates a list of objects in the model.
|
|
210
|
+
|
|
211
|
+
Args:
|
|
212
|
+
objs (list[obj]):
|
|
213
|
+
A list of objects to be updated.
|
|
214
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
215
|
+
Unique identifier of the model. If None, the active model is used.
|
|
216
|
+
|
|
217
|
+
Returns:
|
|
218
|
+
None
|
|
219
|
+
"""
|
|
220
|
+
self.stub.update_object_list_impl(pack_object_list(objs, model_id))
|
|
221
|
+
|
|
222
|
+
def delete_object(self, obj, model_id: ModelId | None = None):
|
|
223
|
+
"""
|
|
224
|
+
Deletes a single object from the model.
|
|
225
|
+
|
|
226
|
+
Args:
|
|
227
|
+
obj (obj):
|
|
228
|
+
An object to be deleted.
|
|
229
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
230
|
+
Unique identifier of the model. If None, the active model is used.
|
|
231
|
+
|
|
232
|
+
Returns:
|
|
233
|
+
None
|
|
234
|
+
"""
|
|
235
|
+
self.stub.delete_object_impl(pack_object(obj, model_id))
|
|
236
|
+
|
|
237
|
+
def delete_object_list(self, objs: list, model_id: ModelId | None = None):
|
|
238
|
+
"""
|
|
239
|
+
Deletes a list of objects from the model.
|
|
240
|
+
|
|
241
|
+
Args:
|
|
242
|
+
objs (list[obj]):
|
|
243
|
+
A list of objects to be deleted.
|
|
244
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
245
|
+
Unique identifier of the model. If None, the active model is used.
|
|
246
|
+
|
|
247
|
+
Returns:
|
|
248
|
+
None
|
|
249
|
+
"""
|
|
250
|
+
self.stub.delete_object_list_impl(pack_object_list(objs, model_id))
|
|
251
|
+
|
|
252
|
+
def select_objects(self, objs: list, model_id: ModelId | None = None):
|
|
253
|
+
"""
|
|
254
|
+
Selects a list of objects in the model.
|
|
255
|
+
|
|
256
|
+
Args:
|
|
257
|
+
objs (list[obj]):
|
|
258
|
+
A list of objects to be selected.
|
|
259
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
260
|
+
Unique identifier of the model. If None, the active model is used.
|
|
261
|
+
|
|
262
|
+
Returns:
|
|
263
|
+
None
|
|
264
|
+
"""
|
|
265
|
+
self.stub.select_objects_impl(pack_object_list(objs, model_id))
|
|
266
|
+
|
|
267
|
+
def get_results(self, results_type: ResultsType, filters: Iterable[ResultsFilter] | None = None,
|
|
268
|
+
member_axes_system : MemberAxesSystem | None = None,
|
|
269
|
+
support_coordinate_system : CoordinateSystem | None = None,
|
|
270
|
+
model_id: ModelId | None = None, **keyword_filters):
|
|
271
|
+
'''
|
|
272
|
+
Retrieves complete, unprocessed results from the database wrapped in a DataFrame for more efficient analysis.
|
|
273
|
+
|
|
274
|
+
Args:
|
|
275
|
+
results_type (:ref:`rfem_results_results_type_ResultsType`):
|
|
276
|
+
Unique identifier for the result category type.
|
|
277
|
+
filters (:ref:`rfem_results_results_query_ResultsFilter` | None):
|
|
278
|
+
One or more filters to return only relevant results.
|
|
279
|
+
member_axes_system (:ref:`rfem_results_settings_result_settings_MemberAxesSystem` | None):
|
|
280
|
+
The axes system to use for member results. If not provided, it defaults to ``MEMBER_AXES_SYSTEM_MEMBER_AXES_X_Y_Z``.
|
|
281
|
+
support_coordinate_system (:ref:`rfem_results_settings_result_settings_CoordinateSystem` | None):
|
|
282
|
+
The coordinate system to use for support results. If not provided, it defaults to ``COORDINATE_SYSTEM_LOCAL``.
|
|
283
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
284
|
+
Unique identifier of the model. If None, the active model is used.
|
|
285
|
+
|
|
286
|
+
Returns:
|
|
287
|
+
A :ref:`common_table_Table` object containing the results as a DataFrame.
|
|
288
|
+
'''
|
|
289
|
+
|
|
290
|
+
all_filters = list(filters) if filters else []
|
|
291
|
+
|
|
292
|
+
for key, value in keyword_filters.items():
|
|
293
|
+
all_filters.append(ResultsFilter(column_id=key, filter_expression=str(value)))
|
|
294
|
+
|
|
295
|
+
results, call = self.stub.get_results_impl.with_call(
|
|
296
|
+
ResultsQuery(results_type=results_type,
|
|
297
|
+
filters=all_filters,
|
|
298
|
+
member_axes_system=member_axes_system,
|
|
299
|
+
support_coordinate_system=support_coordinate_system,
|
|
300
|
+
model_id=model_id))
|
|
301
|
+
|
|
302
|
+
warning: str = ""
|
|
303
|
+
# trailing_metadata() returns a sequence of (key, value) tuples
|
|
304
|
+
# Some gRPC implementations return bytes for values, decode if possible
|
|
305
|
+
if call is not None:
|
|
306
|
+
for key, value in call.trailing_metadata():
|
|
307
|
+
if key == "warning":
|
|
308
|
+
try:
|
|
309
|
+
warning = value.decode("utf-8")
|
|
310
|
+
except Exception:
|
|
311
|
+
warning = value
|
|
312
|
+
|
|
313
|
+
return convert_table_data_to_table(table_data=results, warning=warning)
|
|
314
|
+
|
|
315
|
+
def get_result_table(self, table: ResultTable, loading: ObjectId,
|
|
316
|
+
member_axes_system : MemberAxesSystem | None = None,
|
|
317
|
+
support_coordinate_system : CoordinateSystem | None = None,
|
|
318
|
+
model_id: ModelId | None = None):
|
|
319
|
+
"""
|
|
320
|
+
Retrieves a pre-processed result table wrapped in a DataFrame for more efficient analysis,
|
|
321
|
+
containing only the most relevant values as displayed in the desktop application.
|
|
322
|
+
|
|
323
|
+
Args:
|
|
324
|
+
table (:ref:`rfem_results_result_table_ResultTable`):
|
|
325
|
+
Unique identifier for the result table type.
|
|
326
|
+
loading (:ref:`rfem_object_id_ObjectId`):
|
|
327
|
+
Reference to the loading (e.g., load case, combination, etc.).
|
|
328
|
+
member_axes_system (:ref:`rfem_results_settings_result_settings_MemberAxesSystem` | None):
|
|
329
|
+
The axes system to use for member results. If not provided, it defaults to ``MEMBER_AXES_SYSTEM_MEMBER_AXES_X_Y_Z``.
|
|
330
|
+
support_coordinate_system (:ref:`rfem_results_settings_result_settings_CoordinateSystem` | None):
|
|
331
|
+
The coordinate system to use for support results. If not provided, it defaults to ``COORDINATE_SYSTEM_LOCAL``.
|
|
332
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
333
|
+
Unique identifier of the model. If None, the active model is used.
|
|
334
|
+
|
|
335
|
+
Returns:
|
|
336
|
+
A :ref:`common_table_Table` object containing the result table as a DataFrame.
|
|
337
|
+
"""
|
|
338
|
+
# Use with_call to access trailing metadata (warnings) from the gRPC call
|
|
339
|
+
results, call = self.stub.get_result_table_impl.with_call(
|
|
340
|
+
dlubal.api.rfem.GetResultTableRequest(
|
|
341
|
+
table=table,
|
|
342
|
+
loading=loading,
|
|
343
|
+
model_id=model_id,
|
|
344
|
+
member_axes_system=member_axes_system,
|
|
345
|
+
support_coordinate_system=support_coordinate_system)
|
|
346
|
+
)
|
|
347
|
+
|
|
348
|
+
warning: str = ""
|
|
349
|
+
# trailing_metadata() returns a sequence of (key, value) tuples
|
|
350
|
+
# Some gRPC implementations return bytes for values, decode if possible
|
|
351
|
+
if call is not None:
|
|
352
|
+
for key, value in call.trailing_metadata():
|
|
353
|
+
if key == "warning":
|
|
354
|
+
try:
|
|
355
|
+
warning = value.decode("utf-8")
|
|
356
|
+
except Exception:
|
|
357
|
+
warning = value
|
|
358
|
+
|
|
359
|
+
return convert_table_data_to_table(table_data=results, warning=warning)
|
|
360
|
+
|
|
361
|
+
def convert_objects(self, *, convert_into: ConvertObjectInto, objs: list, model_id: ModelId | None = None):
|
|
362
|
+
"""
|
|
363
|
+
Converts specified objects into a different type.
|
|
364
|
+
|
|
365
|
+
Args:
|
|
366
|
+
convert_into (:ref:`common_common_messages_ConvertObjectInto`):
|
|
367
|
+
Specifies the target conversion type.
|
|
368
|
+
objs (list):
|
|
369
|
+
Objects to be converted.
|
|
370
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
371
|
+
Unique identifier of the model. If None, the active model is used.
|
|
372
|
+
|
|
373
|
+
Returns:
|
|
374
|
+
None
|
|
375
|
+
"""
|
|
376
|
+
request = ConvertObjectsRequest(convert_into=convert_into, objects=pack_object_list(objs, model_id))
|
|
377
|
+
self.stub.convert_objects_impl(request)
|
|
378
|
+
|
|
379
|
+
def import_from(self, *, filepath: str, import_attributes: google.protobuf.any_pb2.Any, model_id: ModelId | None = None):
|
|
380
|
+
"""
|
|
381
|
+
Imports data into the model from the specified file format.
|
|
382
|
+
|
|
383
|
+
Args:
|
|
384
|
+
filepath (str):
|
|
385
|
+
The full path of the file to be imported.
|
|
386
|
+
import_attributes (Any):
|
|
387
|
+
Specifies the format and attributes of the import.
|
|
388
|
+
Supported message types:
|
|
389
|
+
:ref:`common_import_export_import_attributes_IfcImportAttributes`
|
|
390
|
+
:ref:`common_import_export_import_attributes_XmlImportAttributes`
|
|
391
|
+
:ref:`common_import_export_import_attributes_RsectionImportAttributes`
|
|
392
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
393
|
+
The unique identifier of the model. If None, the active model is used.
|
|
394
|
+
|
|
395
|
+
Returns:
|
|
396
|
+
None
|
|
397
|
+
"""
|
|
398
|
+
request = ImportRequest(filepath=filepath, import_attributes=pack_message_to_any(import_attributes), model_id=model_id)
|
|
399
|
+
self.stub.import_from_impl(request)
|
|
400
|
+
|
|
401
|
+
def export_to(self, *, filepath: str, export_attributes: google.protobuf.any_pb2.Any, model_id: ModelId | None = None):
|
|
402
|
+
"""
|
|
403
|
+
Exports the model to the specified file format.
|
|
404
|
+
|
|
405
|
+
Args:
|
|
406
|
+
filepath (str):
|
|
407
|
+
The full path of the file where the model will be exported.
|
|
408
|
+
export_attributes (Any):
|
|
409
|
+
Specifies the format and attributes for the export.
|
|
410
|
+
Supported message types:
|
|
411
|
+
:ref:`common_import_export_export_attributes_PythonGrpcExportAttributes`
|
|
412
|
+
:ref:`common_import_export_export_attributes_IfcExportAttributes`
|
|
413
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
414
|
+
The unique identifier of the model. If None, the active model is used.
|
|
415
|
+
|
|
416
|
+
Returns:
|
|
417
|
+
None
|
|
418
|
+
"""
|
|
419
|
+
request = ExportRequest(filepath=filepath, export_attributes=pack_message_to_any(export_attributes), model_id=model_id)
|
|
420
|
+
self.stub.export_to_impl(request)
|
|
421
|
+
|
|
422
|
+
def move_objects(self, objects: list,
|
|
423
|
+
direction_through: DirectionThrough,
|
|
424
|
+
coordinate_system: int = 1,
|
|
425
|
+
displacement_vector: common.Vector3d | None = None,
|
|
426
|
+
axis: CoordinateAxis | None = None,
|
|
427
|
+
create_copy: bool = False,
|
|
428
|
+
number_of_steps: int | None = None,
|
|
429
|
+
spacing: float | None = None,
|
|
430
|
+
copy_including_loading: bool = False,
|
|
431
|
+
copy_including_imperfections: bool = False,
|
|
432
|
+
connect_lines_members_surfaces: bool = False,
|
|
433
|
+
model_id: ModelId | None = None):
|
|
434
|
+
"""
|
|
435
|
+
Moves or copies the specified objects in a defined direction.
|
|
436
|
+
|
|
437
|
+
Args:
|
|
438
|
+
objs (list):
|
|
439
|
+
The list of specified model objects.
|
|
440
|
+
direction_through (:ref:`rfem_manipulation_manipulation_DirectionThrough`):
|
|
441
|
+
Specifies the type of direction through which the objects will be moved.
|
|
442
|
+
coordinate_system (int | 1):
|
|
443
|
+
Specifies the coordination system to use.
|
|
444
|
+
displacement_vector (:ref:`common_common_Vector3d` | None):
|
|
445
|
+
Specifies the displacement vector for vector-based movement.
|
|
446
|
+
axis (:ref:`rfem_manipulation_manipulation_CoordinateAxis` | None):
|
|
447
|
+
Specifies the axis for parallel movement.
|
|
448
|
+
create_copy (bool | False):
|
|
449
|
+
Specifies whether copies of the specified objects should be created.
|
|
450
|
+
number_of_steps (int | None):
|
|
451
|
+
Specifies the number of copies to create.
|
|
452
|
+
spacing (double | None):
|
|
453
|
+
Specifies the spacing between copies for parallel movement.
|
|
454
|
+
copy_including_loading (bool | False):
|
|
455
|
+
Specifies whether to include the loading when copying the objects.
|
|
456
|
+
copy_including_imperfections (bool | False):
|
|
457
|
+
Specifies whether to include imperfections when copying the objects.
|
|
458
|
+
connect_lines_members_surfaces (bool | False):
|
|
459
|
+
Specifies whether to connect lines, members, or surfaces when they overlap in the copy.
|
|
460
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
461
|
+
The unique identifier of the model. If None, the active model is used.
|
|
462
|
+
|
|
463
|
+
Returns:
|
|
464
|
+
None
|
|
465
|
+
"""
|
|
466
|
+
# Build request
|
|
467
|
+
request = dlubal.api.rfem.MoveObjectsRequest()
|
|
468
|
+
|
|
469
|
+
# objects field is a common.ObjectList; use pack_object_list to build it
|
|
470
|
+
request.objects.CopyFrom(pack_object_list(objects, model_id))
|
|
471
|
+
request.direction_through = direction_through
|
|
472
|
+
|
|
473
|
+
if direction_through == dlubal.api.rfem.manipulation.DIRECTION_THROUGH_DISPLACEMENT_VECTOR:
|
|
474
|
+
if displacement_vector is None:
|
|
475
|
+
raise ValueError("Missing required parameter `displacement_vector` for `direction_through` set to `DIRECTION_THROUGH_DISPLACEMENT_VECTOR`")
|
|
476
|
+
if direction_through == dlubal.api.rfem.manipulation.DIRECTION_THROUGH_PARALLEL_TO_AXIS:
|
|
477
|
+
if spacing is None:
|
|
478
|
+
raise ValueError("Missing required parameter `spacing` for `direction_through` set to `DIRECTION_THROUGH_PARALLEL_TO_AXIS`")
|
|
479
|
+
if axis is None:
|
|
480
|
+
raise ValueError("Missing required parameter `axis` for `direction_through` set to `DIRECTION_THROUGH_PARALLEL_TO_AXIS`")
|
|
481
|
+
|
|
482
|
+
# Optional fields: set only when provided to avoid overriding defaults
|
|
483
|
+
if displacement_vector is not None:
|
|
484
|
+
# displacement_vector is a message, copy it
|
|
485
|
+
request.displacement_vector.CopyFrom(displacement_vector)
|
|
486
|
+
if axis is not None:
|
|
487
|
+
request.axis = axis
|
|
488
|
+
if coordinate_system != 1:
|
|
489
|
+
request.coordinate_system = coordinate_system
|
|
490
|
+
if spacing is not None:
|
|
491
|
+
request.spacing = spacing
|
|
492
|
+
if create_copy:
|
|
493
|
+
request.create_copy = create_copy
|
|
494
|
+
if number_of_steps is not None:
|
|
495
|
+
request.number_of_steps = number_of_steps
|
|
496
|
+
else:
|
|
497
|
+
raise ValueError("Missing required parameter `number_of_steps` for `create_copy` set to `True`")
|
|
498
|
+
if copy_including_loading:
|
|
499
|
+
request.copy_including_loading = copy_including_loading
|
|
500
|
+
if copy_including_imperfections:
|
|
501
|
+
request.copy_including_imperfections = copy_including_imperfections
|
|
502
|
+
if connect_lines_members_surfaces:
|
|
503
|
+
request.connect_lines_members_surfaces = connect_lines_members_surfaces
|
|
504
|
+
|
|
505
|
+
# Call RPC
|
|
506
|
+
self.stub.move_objects_impl(request)
|
|
507
|
+
|
|
508
|
+
|
|
509
|
+
|
|
510
|
+
def create_model(self, *, name: str, template_path: str | None = None) -> dlubal.api.common.model_id_pb2.ModelId:
|
|
511
|
+
"""
|
|
512
|
+
Creates new model with the name specified in request.
|
|
513
|
+
Returns model id of created model
|
|
514
|
+
|
|
515
|
+
Args:
|
|
516
|
+
name (str):
|
|
517
|
+
Name of the new model
|
|
518
|
+
template_path (str | None):
|
|
519
|
+
Path to the existing template to be opened
|
|
520
|
+
|
|
521
|
+
Returns:
|
|
522
|
+
:ref:`common_model_id_ModelId`
|
|
523
|
+
"""
|
|
524
|
+
request = dlubal.api.common.common_messages_pb2.CreateModelRequest(name=name, template_path=template_path)
|
|
525
|
+
return self.stub.create_model(request)
|
|
526
|
+
|
|
527
|
+
def open_model(self, *, path: str) -> dlubal.api.common.model_id_pb2.ModelId:
|
|
528
|
+
"""
|
|
529
|
+
Opens model from path specified in 'name' field of the request
|
|
530
|
+
Returns model id of opened model
|
|
531
|
+
|
|
532
|
+
Args:
|
|
533
|
+
path (str):
|
|
534
|
+
Path to the existing model to be opened
|
|
535
|
+
|
|
536
|
+
Returns:
|
|
537
|
+
:ref:`common_model_id_ModelId`
|
|
538
|
+
"""
|
|
539
|
+
request = dlubal.api.common.common_messages_pb2.OpenModelRequest(path=path)
|
|
540
|
+
return self.stub.open_model(request)
|
|
541
|
+
|
|
542
|
+
def save_model(self, *, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None, path: str | None = None, results: bool | None = None, fe_mesh: bool | None = None, printout_reports: bool | None = None):
|
|
543
|
+
"""
|
|
544
|
+
Saves model specified by model id to optional specified path
|
|
545
|
+
|
|
546
|
+
Args:
|
|
547
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
548
|
+
Unique identifier of the model Active model is used if this field is not set.
|
|
549
|
+
path (str | None):
|
|
550
|
+
Path to the model
|
|
551
|
+
results (bool | None):
|
|
552
|
+
When enabled, the model is saved together with the calculated results
|
|
553
|
+
fe_mesh (bool | None):
|
|
554
|
+
When enabled, the model is saved together with the FE Mesh
|
|
555
|
+
printout_reports (bool | None):
|
|
556
|
+
When enabled, the printout reports are saved
|
|
557
|
+
"""
|
|
558
|
+
request = dlubal.api.rfem.application_pb2.SaveModelAsRequest(model_id=model_id, path=path, results=results, fe_mesh=fe_mesh, printout_reports=printout_reports)
|
|
559
|
+
self.stub.save_model(request)
|
|
560
|
+
|
|
561
|
+
def close_model(self, *, save_changes: bool, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None):
|
|
562
|
+
"""
|
|
563
|
+
Closes model specified by model id
|
|
564
|
+
|
|
565
|
+
Args:
|
|
566
|
+
save_changes (bool):
|
|
567
|
+
Specifies whether to save changes before closing the model
|
|
568
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
569
|
+
Unique identifier of the model Active model is used if this field is not set.
|
|
570
|
+
"""
|
|
571
|
+
request = dlubal.api.common.common_messages_pb2.CloseModelRequest(save_changes=save_changes, model_id=model_id)
|
|
572
|
+
self.stub.close_model(request)
|
|
573
|
+
|
|
574
|
+
def close_all_models(self, *, save_changes: bool):
|
|
575
|
+
"""
|
|
576
|
+
Closes all open models
|
|
577
|
+
|
|
578
|
+
Args:
|
|
579
|
+
save_changes (bool):
|
|
580
|
+
Specifies whether to save changes before closing the models
|
|
581
|
+
"""
|
|
582
|
+
request = dlubal.api.common.common_messages_pb2.CloseAllModelsRequest(save_changes=save_changes)
|
|
583
|
+
self.stub.close_all_models(request)
|
|
584
|
+
|
|
585
|
+
def get_active_model(self) -> dlubal.api.common.model_id_pb2.ModelId:
|
|
586
|
+
"""
|
|
587
|
+
Returns model id of an active model
|
|
588
|
+
|
|
589
|
+
Returns:
|
|
590
|
+
:ref:`common_model_id_ModelId`
|
|
591
|
+
"""
|
|
592
|
+
return self.stub.get_active_model(google.protobuf.empty_pb2.Empty())
|
|
593
|
+
|
|
594
|
+
def set_active_model(self, *, model_id: dlubal.api.common.model_id_pb2.ModelId):
|
|
595
|
+
"""
|
|
596
|
+
Sets active model specified by model id
|
|
597
|
+
|
|
598
|
+
Args:
|
|
599
|
+
model_id (:ref:`common_model_id_ModelId`):
|
|
600
|
+
|
|
601
|
+
"""
|
|
602
|
+
self.stub.set_active_model(model_id)
|
|
603
|
+
|
|
604
|
+
def close_application(self):
|
|
605
|
+
"""
|
|
606
|
+
Closes the whole application
|
|
607
|
+
"""
|
|
608
|
+
self.stub.close_application(google.protobuf.empty_pb2.Empty())
|
|
609
|
+
|
|
610
|
+
def get_model_list(self) -> dlubal.api.common.common_messages_pb2.ModelList:
|
|
611
|
+
"""
|
|
612
|
+
Returns list of models and information about them
|
|
613
|
+
|
|
614
|
+
Returns:
|
|
615
|
+
:ref:`common_common_messages_ModelList`
|
|
616
|
+
"""
|
|
617
|
+
return self.stub.get_model_list(google.protobuf.empty_pb2.Empty())
|
|
618
|
+
|
|
619
|
+
def get_application_info(self) -> dlubal.api.common.common_messages_pb2.ApplicationInfo:
|
|
620
|
+
"""
|
|
621
|
+
Returns information about the application
|
|
622
|
+
|
|
623
|
+
Returns:
|
|
624
|
+
:ref:`common_common_messages_ApplicationInfo`
|
|
625
|
+
"""
|
|
626
|
+
return self.stub.get_application_info(google.protobuf.empty_pb2.Empty())
|
|
627
|
+
|
|
628
|
+
def get_subscription_info(self) -> dlubal.api.common.common_messages_pb2.SubscriptionInfo:
|
|
629
|
+
"""
|
|
630
|
+
Returns current company's API subscription information
|
|
631
|
+
|
|
632
|
+
Returns:
|
|
633
|
+
:ref:`common_common_messages_SubscriptionInfo`
|
|
634
|
+
"""
|
|
635
|
+
return self.stub.get_subscription_info(google.protobuf.empty_pb2.Empty())
|
|
636
|
+
|
|
637
|
+
def close_connection(self):
|
|
638
|
+
"""
|
|
639
|
+
Closes connection to API server
|
|
640
|
+
"""
|
|
641
|
+
self.stub.close_connection(google.protobuf.empty_pb2.Empty())
|
|
642
|
+
|
|
643
|
+
def delete_all_objects(self, *, optional_model_id: dlubal.api.common.model_id_pb2.OptionalModelId = dlubal.api.common.model_id_pb2.OptionalModelId()):
|
|
644
|
+
"""
|
|
645
|
+
Deletes all objects
|
|
646
|
+
|
|
647
|
+
Args:
|
|
648
|
+
optional_model_id (:ref:`common_model_id_OptionalModelId`):
|
|
649
|
+
|
|
650
|
+
"""
|
|
651
|
+
self.stub.delete_all_objects(optional_model_id)
|
|
652
|
+
|
|
653
|
+
def calculate_all(self, *, skip_warnings: bool, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None) -> dlubal.api.common.common_messages_pb2.OperationResult:
|
|
654
|
+
"""
|
|
655
|
+
Performs a full calculation for all objects.
|
|
656
|
+
Returns result of the operation, description of the result and possibly additional information about an error.
|
|
657
|
+
|
|
658
|
+
Args:
|
|
659
|
+
skip_warnings (bool):
|
|
660
|
+
Specifies whether to skip warnings during the calculation.
|
|
661
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
662
|
+
Unique identifier of the model. Active model is used if this field is not set.
|
|
663
|
+
|
|
664
|
+
Returns:
|
|
665
|
+
:ref:`common_common_messages_OperationResult`
|
|
666
|
+
"""
|
|
667
|
+
request = dlubal.api.common.common_messages_pb2.CalculateAllRequest(skip_warnings=skip_warnings, model_id=model_id)
|
|
668
|
+
return self.stub.calculate_all(request)
|
|
669
|
+
|
|
670
|
+
def calculate_specific(self, *, loadings: collections.abc.Iterable[dlubal.api.rfem.object_id_pb2.ObjectId] | None = None, skip_warnings: bool, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None) -> dlubal.api.common.common_messages_pb2.OperationResult:
|
|
671
|
+
"""
|
|
672
|
+
Performs a calculation for the specific objects.
|
|
673
|
+
Returns result of the operation, description of the result and possibly additional information about an error.
|
|
674
|
+
|
|
675
|
+
Args:
|
|
676
|
+
loadings (list[:ref:`rfem_object_id_ObjectId`] | None):
|
|
677
|
+
Unique identifier of the loading.
|
|
678
|
+
skip_warnings (bool):
|
|
679
|
+
Specifies whether to skip warnings during the calculation.
|
|
680
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
681
|
+
Unique identifier of the model. Active model is used if this field is not set.
|
|
682
|
+
|
|
683
|
+
Returns:
|
|
684
|
+
:ref:`common_common_messages_OperationResult`
|
|
685
|
+
"""
|
|
686
|
+
request = dlubal.api.rfem.application_pb2.CalculateSpecificRequest(loadings=loadings, skip_warnings=skip_warnings, model_id=model_id)
|
|
687
|
+
return self.stub.calculate_specific(request)
|
|
688
|
+
|
|
689
|
+
def has_results(self, *, loading: dlubal.api.rfem.object_id_pb2.ObjectId | None = None, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None) -> google.protobuf.wrappers_pb2.BoolValue:
|
|
690
|
+
"""
|
|
691
|
+
Checks whether the model contains calculation results for the selected loading, loading type, or any loading.
|
|
692
|
+
Returns True if results are available.
|
|
693
|
+
|
|
694
|
+
Args:
|
|
695
|
+
loading (:ref:`rfem_object_id_ObjectId` | None):
|
|
696
|
+
Allowed types: OBJECT_TYPE_CONSTRUCTION_STAGE, OBJECT_TYPE_DESIGN_SITUATION, OBJECT_TYPE_LOAD_CASE, OBJECT_TYPE_LOAD_COMBINATION, OBJECT_TYPE_RESULT_COMBINATION
|
|
697
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
698
|
+
Unique identifier of the model. Active model is used if this field is not set.
|
|
699
|
+
|
|
700
|
+
Returns:
|
|
701
|
+
google.protobuf.BoolValue
|
|
702
|
+
"""
|
|
703
|
+
request = dlubal.api.rfem.application_pb2.HasResultsRequest(loading=loading, model_id=model_id)
|
|
704
|
+
return self.stub.has_results(request)
|
|
705
|
+
|
|
706
|
+
def plausibility_check(self, *, type: dlubal.api.common.common_messages_pb2.PlausibilityCheckType, skip_warnings: bool, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None) -> dlubal.api.common.common_messages_pb2.OperationResult:
|
|
707
|
+
"""
|
|
708
|
+
Performs validation based on the specified validation type.
|
|
709
|
+
Returns result of the operation, description of the result and possibly additional information about an error.
|
|
710
|
+
|
|
711
|
+
Args:
|
|
712
|
+
type (:ref:`common_common_messages_PlausibilityCheckType`):
|
|
713
|
+
Specifies various validation checks that can be performed before generating a mesh, running a calculation, or verifying plausibility.
|
|
714
|
+
skip_warnings (bool):
|
|
715
|
+
Specifies whether to skip warnings during the calculation.
|
|
716
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
717
|
+
Unique identifier of the model. Active model is used if this field is not set.
|
|
718
|
+
|
|
719
|
+
Returns:
|
|
720
|
+
:ref:`common_common_messages_OperationResult`
|
|
721
|
+
"""
|
|
722
|
+
request = dlubal.api.common.common_messages_pb2.PlausibilityCheckRequest(type=type, skip_warnings=skip_warnings, model_id=model_id)
|
|
723
|
+
return self.stub.plausibility_check(request)
|
|
724
|
+
|
|
725
|
+
def get_object_id_list(self, *, object_type: dlubal.api.rfem.object_type_pb2.ObjectType | None = None, parent_no: int | None = None, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None) -> dlubal.api.rfem.object_id_pb2.ObjectIdList:
|
|
726
|
+
"""
|
|
727
|
+
Retrieves object ids filtered by a specific type.
|
|
728
|
+
If you want to retrieve all object ids, do not specify the object_type.
|
|
729
|
+
|
|
730
|
+
Args:
|
|
731
|
+
object_type (:ref:`rfem_object_type_ObjectType` | None):
|
|
732
|
+
The type of objects to retrieve. To get all object ids, omit it.
|
|
733
|
+
parent_no (int | None):
|
|
734
|
+
Unique identifier of the parent object. Omit this parameter if the object type does not have a parent or you want to get result for all parent objects.
|
|
735
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
736
|
+
Unique identifier of the model. If not specified, the active model is used.
|
|
737
|
+
|
|
738
|
+
Returns:
|
|
739
|
+
:ref:`rfem_object_id_ObjectIdList`
|
|
740
|
+
"""
|
|
741
|
+
request = dlubal.api.rfem.application_pb2.GetObjectIdListRequest(object_type=object_type, parent_no=parent_no, model_id=model_id)
|
|
742
|
+
return self.stub.get_object_id_list(request)
|
|
743
|
+
|
|
744
|
+
def get_model_main_parameters(self, *, optional_model_id: dlubal.api.common.model_id_pb2.OptionalModelId = dlubal.api.common.model_id_pb2.OptionalModelId()) -> dlubal.api.common.common_messages_pb2.ModelMainParameters:
|
|
745
|
+
"""
|
|
746
|
+
Retrieves the main parameters of a model, including its ID, name, description,
|
|
747
|
+
comments, file path, and associated project details.
|
|
748
|
+
|
|
749
|
+
Args:
|
|
750
|
+
optional_model_id (:ref:`common_model_id_OptionalModelId`):
|
|
751
|
+
|
|
752
|
+
|
|
753
|
+
Returns:
|
|
754
|
+
:ref:`common_common_messages_ModelMainParameters`
|
|
755
|
+
"""
|
|
756
|
+
return self.stub.get_model_main_parameters(optional_model_id)
|
|
757
|
+
|
|
758
|
+
def generate_combinations(self, *, optional_model_id: dlubal.api.common.model_id_pb2.OptionalModelId = dlubal.api.common.model_id_pb2.OptionalModelId()):
|
|
759
|
+
"""
|
|
760
|
+
Generates combinations.
|
|
761
|
+
|
|
762
|
+
Args:
|
|
763
|
+
optional_model_id (:ref:`common_model_id_OptionalModelId`):
|
|
764
|
+
|
|
765
|
+
"""
|
|
766
|
+
self.stub.generate_combinations(optional_model_id)
|
|
767
|
+
|
|
768
|
+
def get_base_data(self, *, optional_model_id: dlubal.api.common.model_id_pb2.OptionalModelId = dlubal.api.common.model_id_pb2.OptionalModelId()) -> dlubal.api.rfem.base_data_pb2.BaseData:
|
|
769
|
+
"""
|
|
770
|
+
Get the base data.
|
|
771
|
+
This method returns the complete set of data stored for a particular model,
|
|
772
|
+
including add-ons, standards, general and combinations settings, etc.
|
|
773
|
+
|
|
774
|
+
Args:
|
|
775
|
+
optional_model_id (:ref:`common_model_id_OptionalModelId`):
|
|
776
|
+
|
|
777
|
+
|
|
778
|
+
Returns:
|
|
779
|
+
:ref:`rfem_base_data_BaseData`
|
|
780
|
+
"""
|
|
781
|
+
return self.stub.get_base_data(optional_model_id)
|
|
782
|
+
|
|
783
|
+
def set_base_data(self, *, base_data: dlubal.api.rfem.base_data_pb2.BaseData | None = None, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None):
|
|
784
|
+
"""
|
|
785
|
+
Set the base data.
|
|
786
|
+
This method updates the complete set of data for a particular model,
|
|
787
|
+
including add-ons, standards, general and combinations settings, and other parameters.
|
|
788
|
+
|
|
789
|
+
Args:
|
|
790
|
+
base_data (:ref:`rfem_base_data_BaseData` | None):
|
|
791
|
+
|
|
792
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
793
|
+
Unique identifier of the model. If not specified, the active model is used.
|
|
794
|
+
"""
|
|
795
|
+
request = dlubal.api.rfem.application_pb2.BaseDataRequest(base_data=base_data, model_id=model_id)
|
|
796
|
+
self.stub.set_base_data(request)
|
|
797
|
+
|
|
798
|
+
def get_mesh_settings(self, *, optional_model_id: dlubal.api.common.model_id_pb2.OptionalModelId = dlubal.api.common.model_id_pb2.OptionalModelId()) -> dlubal.api.rfem.mesh.mesh_settings_pb2.MeshSettings:
|
|
799
|
+
"""
|
|
800
|
+
Returns mesh settings.
|
|
801
|
+
|
|
802
|
+
Args:
|
|
803
|
+
optional_model_id (:ref:`common_model_id_OptionalModelId`):
|
|
804
|
+
|
|
805
|
+
|
|
806
|
+
Returns:
|
|
807
|
+
:ref:`rfem_mesh_mesh_settings_MeshSettings`
|
|
808
|
+
"""
|
|
809
|
+
return self.stub.get_mesh_settings(optional_model_id)
|
|
810
|
+
|
|
811
|
+
def set_mesh_settings(self, *, mesh_settings: dlubal.api.rfem.mesh.mesh_settings_pb2.MeshSettings | None = None, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None):
|
|
812
|
+
"""
|
|
813
|
+
Sets mesh settings.
|
|
814
|
+
|
|
815
|
+
Args:
|
|
816
|
+
mesh_settings (:ref:`rfem_mesh_mesh_settings_MeshSettings` | None):
|
|
817
|
+
|
|
818
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
819
|
+
Unique identifier of the model. Active model is used if this field is not set.
|
|
820
|
+
"""
|
|
821
|
+
request = dlubal.api.rfem.application_pb2.SetMeshSettingsRequest(mesh_settings=mesh_settings, model_id=model_id)
|
|
822
|
+
self.stub.set_mesh_settings(request)
|
|
823
|
+
|
|
824
|
+
def generate_mesh(self, *, skip_warnings: bool, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None) -> dlubal.api.common.common_messages_pb2.OperationResult:
|
|
825
|
+
"""
|
|
826
|
+
Generates mesh.
|
|
827
|
+
Returns result of the operation.
|
|
828
|
+
|
|
829
|
+
Args:
|
|
830
|
+
skip_warnings (bool):
|
|
831
|
+
Specifies whether to skip warnings during the generation mesh.
|
|
832
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
833
|
+
Unique identifier of the model. Active model is used if this field is not set.
|
|
834
|
+
|
|
835
|
+
Returns:
|
|
836
|
+
:ref:`common_common_messages_OperationResult`
|
|
837
|
+
"""
|
|
838
|
+
request = dlubal.api.rfem.application_pb2.GenerateMeshRequest(skip_warnings=skip_warnings, model_id=model_id)
|
|
839
|
+
return self.stub.generate_mesh(request)
|
|
840
|
+
|
|
841
|
+
def get_mesh_statistics(self, *, optional_model_id: dlubal.api.common.model_id_pb2.OptionalModelId = dlubal.api.common.model_id_pb2.OptionalModelId()) -> dlubal.api.rfem.mesh.mesh_settings_pb2.MeshStatistics:
|
|
842
|
+
"""
|
|
843
|
+
Returns mesh statistics.
|
|
844
|
+
|
|
845
|
+
Args:
|
|
846
|
+
optional_model_id (:ref:`common_model_id_OptionalModelId`):
|
|
847
|
+
|
|
848
|
+
|
|
849
|
+
Returns:
|
|
850
|
+
:ref:`rfem_mesh_mesh_settings_MeshStatistics`
|
|
851
|
+
"""
|
|
852
|
+
return self.stub.get_mesh_statistics(optional_model_id)
|
|
853
|
+
|
|
854
|
+
def delete_mesh(self, *, optional_model_id: dlubal.api.common.model_id_pb2.OptionalModelId = dlubal.api.common.model_id_pb2.OptionalModelId()):
|
|
855
|
+
"""
|
|
856
|
+
Delete mesh
|
|
857
|
+
|
|
858
|
+
Args:
|
|
859
|
+
optional_model_id (:ref:`common_model_id_OptionalModelId`):
|
|
860
|
+
|
|
861
|
+
"""
|
|
862
|
+
self.stub.delete_mesh(optional_model_id)
|
|
863
|
+
|
|
864
|
+
def get_design_settings(self, *, addon: dlubal.api.rfem.design_addons_pb2.DesignAddons, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None) -> dlubal.api.rfem.application_pb2.GlobalSettingsTreeTable:
|
|
865
|
+
"""
|
|
866
|
+
Get global settings for a design addon.
|
|
867
|
+
|
|
868
|
+
Args:
|
|
869
|
+
addon (:ref:`rfem_design_addons_DesignAddons`):
|
|
870
|
+
|
|
871
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
872
|
+
Unique identifier of the model. Active model is used if this field is not set.
|
|
873
|
+
|
|
874
|
+
Returns:
|
|
875
|
+
:ref:`rfem_application_GlobalSettingsTreeTable`
|
|
876
|
+
"""
|
|
877
|
+
request = dlubal.api.rfem.application_pb2.GetDesignSettingsRequest(addon=addon, model_id=model_id)
|
|
878
|
+
return self.stub.get_design_settings(request)
|
|
879
|
+
|
|
880
|
+
def set_design_settings(self, *, addon: dlubal.api.rfem.design_addons_pb2.DesignAddons, global_settings_tree_table: dlubal.api.rfem.application_pb2.GlobalSettingsTreeTable | None = None, model_id: dlubal.api.common.model_id_pb2.ModelId | None = None):
|
|
881
|
+
"""
|
|
882
|
+
Set global settings for a design addon.
|
|
883
|
+
|
|
884
|
+
Args:
|
|
885
|
+
addon (:ref:`rfem_design_addons_DesignAddons`):
|
|
886
|
+
|
|
887
|
+
global_settings_tree_table (:ref:`rfem_application_GlobalSettingsTreeTable` | None):
|
|
888
|
+
|
|
889
|
+
model_id (:ref:`common_model_id_ModelId` | None):
|
|
890
|
+
Unique identifier of the model. Active model is used if this field is not set.
|
|
891
|
+
"""
|
|
892
|
+
request = dlubal.api.rfem.application_pb2.SetDesignSettingsRequest(addon=addon, global_settings_tree_table=global_settings_tree_table, model_id=model_id)
|
|
893
|
+
self.stub.set_design_settings(request)
|