VeraGrid 5.6.19__tar.gz → 5.6.20__tar.gz
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.
- {veragrid-5.6.19 → veragrid-5.6.20}/PKG-INFO +1 -1
- veragrid-5.6.20/VeraGrid/Gui/CGMESDialogue/cgmes_export.py +136 -0
- veragrid-5.6.20/VeraGrid/Gui/CGMESDialogue/cgmes_export_gui.py +177 -0
- veragrid-5.6.20/VeraGrid/Gui/CGMESDialogue/update_gui_file.py +12 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_injections_template_graphics.py +8 -2
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Substation/node_template.py +18 -3
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Substation/substation_graphic_item.py +18 -8
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/grid_map_widget.py +31 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Icons/icons_rc.py +2962 -404
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/MainWindow.py +580 -684
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Model/diagrams.py +2 -1
- veragrid-5.6.20/VeraGrid/Gui/Main/SubClasses/Scripting/scripting.py +281 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Settings/configuration.py +7 -40
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/base_gui.py +8 -135
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/io.py +246 -89
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/ProfilesInput/models_dialogue.py +1 -1
- veragrid-5.6.20/VeraGrid/Gui/PsseExportDialogue/psse_export.py +75 -0
- veragrid-5.6.20/VeraGrid/Gui/PsseExportDialogue/psse_export_gui.py +72 -0
- veragrid-5.6.20/VeraGrid/Gui/PsseExportDialogue/update_gui_file.py +12 -0
- veragrid-5.6.20/VeraGrid/Gui/SolarPowerWizard/__init__.py +0 -0
- veragrid-5.6.20/VeraGrid/Gui/Widgets/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/python_script_editor.py +22 -7
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/__version__.py +1 -1
- veragrid-5.6.19/VeraGrid/Gui/Main/SubClasses/Scripting/scripting.py +0 -166
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ExecuteVeraGrid.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/AboutDialogue/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/AboutDialogue/about_dialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/AboutDialogue/about_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/AboutDialogue/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Analysis/AnalysisDialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Analysis/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Analysis/analysis_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Analysis/object_plot_analysis.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Analysis/update_gui_file.py +0 -0
- {veragrid-5.6.19/VeraGrid/Gui/Diagrams/Editors → veragrid-5.6.20/VeraGrid/Gui/CGMESDialogue}/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/ContingencyPlanner/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/ContingencyPlanner/contingency_planner_dialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/ContingencyPlanner/contingency_planner_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/ContingencyPlanner/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/CoordinatesInput/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/CoordinatesInput/coordinates_dialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/CoordinatesInput/coordinates_input_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/CoordinatesInput/update_gui_file.py +0 -0
- {veragrid-5.6.19/VeraGrid/Gui/Diagrams/MapWidget/Injections → veragrid-5.6.20/VeraGrid/Gui/Diagrams/Editors}/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/Editors/controllable_shunt_editor.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/Editors/generator_editor.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/Editors/line_editor.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/Editors/new_line_dialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/Editors/transformer3w_editor.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/Editors/transformer_editor.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/Editors/transformer_taps_editor.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Branches/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Branches/line_location_graphic_item.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_ac_line.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_dc_line.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_fluid_path.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_hvdc_line.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_line_container.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Branches/map_line_segment.py +0 -0
- {veragrid-5.6.19/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid → veragrid-5.6.20/VeraGrid/Gui/Diagrams/MapWidget/Injections}/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_battery_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_external_grid_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_generator_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_load_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Injections/map_static_generator_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Substation/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Substation/voltage_level_graphic_item.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/TileProviders/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/TileProviders/blue_marble.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/TileProviders/cartodb.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/base_tiles.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/default_tile_data.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/pycacheback.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/tile_worker.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/tiles.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Tiles/tiles_cache.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/map_widget.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/dc_line_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/hvdc_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/line_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/line_graphics_template.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/series_reactance_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/switch_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/transformer2w_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/transformer3w_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/upfc_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics_3term.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Branches/winding_graphics.py +0 -0
- {veragrid-5.6.19/VeraGrid/Gui/Diagrams/SchematicWidget/Injections → veragrid-5.6.20/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid}/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid/fluid_node_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid/fluid_p2x_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid/fluid_path_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid/fluid_pump_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Fluid/fluid_turbine_graphics.py +0 -0
- {veragrid-5.6.19/VeraGrid/Gui/Diagrams/SchematicWidget/Substation → veragrid-5.6.20/VeraGrid/Gui/Diagrams/SchematicWidget/Injections}/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/battery_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/current_injection_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/external_grid_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/generator_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/injections_template_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/load_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/shunt_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Injections/static_generator_graphics.py +0 -0
- {veragrid-5.6.19/VeraGrid/Gui/GridMerge → veragrid-5.6.20/VeraGrid/Gui/Diagrams/SchematicWidget/Substation}/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/Substation/bus_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/diagram_bus_selection_dialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/matplotlibwidget.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/schematic_widget.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/SchematicWidget/terminal_item.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/base_diagram_widget.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/diagrams_model.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/generic_graphics.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/graphics_manager.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridGenerator/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridGenerator/grid_generator_dialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridGenerator/grid_generator_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridGenerator/update_gui_file.py +0 -0
- {veragrid-5.6.19/VeraGrid/Gui/GridReduce → veragrid-5.6.20/VeraGrid/Gui/GridMerge}/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridMerge/build_diff_tree.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridMerge/grid_diff.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridMerge/grid_diff_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridMerge/grid_merge.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridMerge/grid_merge_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridMerge/update_gui_file.py +0 -0
- {veragrid-5.6.19/VeraGrid/Gui/Icons → veragrid-5.6.20/VeraGrid/Gui/GridReduce}/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridReduce/grid_reduce.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridReduce/grid_reduce_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/GridReduce/update_gui_file.py +0 -0
- {veragrid-5.6.19/VeraGrid/Gui/ProfilesInput → veragrid-5.6.20/VeraGrid/Gui/Icons}/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Icons/update_icons_rc.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/LoadCatalogue/SelectComponents.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/LoadCatalogue/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/LoadCatalogue/catalogue_dialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/LoadCatalogue/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/LoadDesigner/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/LoadDesigner/load_designer.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/LoadDesigner/load_designer_ui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/LoadDesigner/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Model/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Model/compiled_arrays.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Model/compiled_arrays_model.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Model/data_base.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Model/time_events.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/README.txt +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Results/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Results/results.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Scripting/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Server/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Server/server.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/Settings/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/SubClasses/simulations.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/VeraGridMain.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/object_select_window.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Main/update_gui_file.py +0 -0
- {veragrid-5.6.19/VeraGrid/Gui/SolarPowerWizard → veragrid-5.6.20/VeraGrid/Gui/ProfilesInput}/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/ProfilesInput/excel_dialog.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/ProfilesInput/excel_sheet_selection.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/ProfilesInput/profile_dialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/ProfilesInput/profiles_from_data_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/ProfilesInput/profiles_from_models_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/ProfilesInput/update_gui_file.py +0 -0
- {veragrid-5.6.19/VeraGrid/Gui/Widgets → veragrid-5.6.20/VeraGrid/Gui/PsseExportDialogue}/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/RmsModelEditor/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/RmsModelEditor/block_data_dialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/RmsModelEditor/rms_model_editor.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/RmsModelEditor/rms_model_editor_engine.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/RmsModelEditor/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/RosetaExplorer/MainWindow.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/RosetaExplorer/RosetaExplorer.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/RosetaExplorer/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/RosetaExplorer/roseta_objects_model.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/RosetaExplorer/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SigmaAnalysis/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SigmaAnalysis/sigma_analysis_dialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SigmaAnalysis/sigma_analysis_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SigmaAnalysis/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SolarPowerWizard/solar_power_wizard_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SolarPowerWizard/solar_power_wizzard.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SolarPowerWizard/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SubstationDesigner/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SubstationDesigner/substation_designer.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SubstationDesigner/substation_designer_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SubstationDesigner/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SubstationDesigner/voltage_level_conversion.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SyncDialogue/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SyncDialogue/sync_dialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SyncDialogue/sync_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SyncDialogue/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SystemScaler/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SystemScaler/system_scaler.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SystemScaler/system_scaler_ui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/SystemScaler/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/TowerBuilder/LineBuilderDialogue.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/TowerBuilder/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/TowerBuilder/table_models.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/TowerBuilder/tower_builder.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/TowerBuilder/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/TreeModelViewer/MainWindow.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/TreeModelViewer/TreeModelViewer.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/TreeModelViewer/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/TreeModelViewer/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Visualization/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Visualization/visualization.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Widgets/custom_qrangeslider.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Widgets/matplotlibwidget.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/WindPowerWizard/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/WindPowerWizard/update_gui_file.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/WindPowerWizard/wind_power_wizard_gui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/WindPowerWizard/wind_power_wizzard.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/associations_model.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/correct_icons.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/font_config.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/general_dialogues.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/gui_functions.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/messages.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/object_model.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/object_proxy_model.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/pandas_model.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/plot_config.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/profiles_model.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/python_console.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/python_highlighter.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/results_model.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/rms_events_editor_dialog.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/rms_plot_variables_dialog.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/table_view_header_wrap.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/themes.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/toast_widget.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/update_gui_all.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/update_gui_common.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/wrappable_table_model.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/LICENSE.txt +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Session/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Session/export_results_driver.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Session/file_handler.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Session/server_driver.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Session/session.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Session/synchronization_driver.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/darkdetect/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/darkdetect/_dummy.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/darkdetect/_linux_detect.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/darkdetect/_mac_detect.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/darkdetect/_windows_detect.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_color.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_icon/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_icon/icon_engine.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_icon/svg.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_main.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_os_appearance/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_os_appearance/_accent/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_os_appearance/_accent/_mac_detect.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_os_appearance/listener.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_proxy_style.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_resources/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_resources/colors.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_resources/palette.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_resources/standard_icons.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_resources/stylesheets.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_resources/svg.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_style_loader.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_template/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_template/engine.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_template/filter.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/_util.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/qtpy/QtCore/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/qtpy/QtGui/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/qtpy/QtSvg/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/qtpy/QtWidgets/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/qtpy/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/qtpy/qt_compat.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/qtpy/qt_version.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/__main__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/dock_ui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/frame_ui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/icons_ui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/mdi_ui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/_ui/widgets_ui.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/ThirdParty/qdarktheme/widget_gallery/main_window.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/data/VeraGrid.ico +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/data/VeraGrid.svg +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/data/__init__.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/data/cables.csv +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/data/sequence_lines.csv +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/data/transformers.csv +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/data/wires.csv +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/plugins.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/templates.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/update.py +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/setup.cfg +0 -0
- {veragrid-5.6.19 → veragrid-5.6.20}/setup.py +0 -0
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
2
|
+
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
3
|
+
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
4
|
+
# SPDX-License-Identifier: MPL-2.0
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from typing import TYPE_CHECKING
|
|
8
|
+
import os
|
|
9
|
+
from PySide6 import QtWidgets
|
|
10
|
+
from VeraGrid.Gui.CGMESDialogue.cgmes_export_gui import Ui_CgmesExportDialog
|
|
11
|
+
import VeraGrid.Session.file_handler as filedrv
|
|
12
|
+
import VeraGrid.Gui.gui_functions as gf
|
|
13
|
+
from VeraGridEngine.enumerations import CGMESVersions
|
|
14
|
+
from VeraGridEngine.IO.cim.cgmes.cgmes_export import get_available_cgmes_profiles
|
|
15
|
+
from VeraGridEngine.IO.cim.cgmes.cgmes_enums import CgmesProfileType
|
|
16
|
+
|
|
17
|
+
if TYPE_CHECKING:
|
|
18
|
+
from VeraGrid.Gui.Main.SubClasses.io import IoMain
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class CgmesExportDialogue(QtWidgets.QDialog):
|
|
22
|
+
"""
|
|
23
|
+
GridMergeDialogue
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
def __init__(self, app: IoMain):
|
|
27
|
+
"""
|
|
28
|
+
GridMergeDialogue
|
|
29
|
+
:param app: VeraGridMainGUI
|
|
30
|
+
"""
|
|
31
|
+
QtWidgets.QDialog.__init__(self)
|
|
32
|
+
self.ui = Ui_CgmesExportDialog()
|
|
33
|
+
self.ui.setupUi(self)
|
|
34
|
+
self.setWindowTitle('CGMES export')
|
|
35
|
+
self.setModal(True)
|
|
36
|
+
|
|
37
|
+
self.grid = app.circuit
|
|
38
|
+
|
|
39
|
+
self.sessions_data = app.session
|
|
40
|
+
|
|
41
|
+
self.project_directory = app.project_directory
|
|
42
|
+
|
|
43
|
+
self.app: IoMain = app
|
|
44
|
+
|
|
45
|
+
self.current_boundary_set = ""
|
|
46
|
+
|
|
47
|
+
self.cgmes_version_dict = {x.value: x for x in [CGMESVersions.v2_4_15,
|
|
48
|
+
CGMESVersions.v3_0_0]}
|
|
49
|
+
self.ui.cgmes_version_comboBox.setModel(gf.get_list_model(list(self.cgmes_version_dict.keys())))
|
|
50
|
+
|
|
51
|
+
self.cgmes_profiles_dict = {key: CgmesProfileType(key) for key, val in
|
|
52
|
+
get_available_cgmes_profiles(cgmes_version=CGMESVersions.v2_4_15).items()}
|
|
53
|
+
|
|
54
|
+
self.ui.cgmes_profiles_listView.setModel(gf.get_list_model(list(self.cgmes_profiles_dict.keys()),
|
|
55
|
+
checks=True, check_value=True))
|
|
56
|
+
|
|
57
|
+
# Buttons
|
|
58
|
+
self.ui.selectCGMESBoundarySetButton.clicked.connect(self.select_cgmes_boundary_set)
|
|
59
|
+
self.ui.exportButton.clicked.connect(self.export)
|
|
60
|
+
|
|
61
|
+
# change
|
|
62
|
+
self.ui.cgmes_version_comboBox.currentTextChanged.connect(self.cgmes_version_change)
|
|
63
|
+
|
|
64
|
+
def cgmes_version_change(self):
|
|
65
|
+
"""
|
|
66
|
+
On GUI cgmes version change, display only the supported profiles
|
|
67
|
+
"""
|
|
68
|
+
cgmes_version = self.cgmes_version_dict[self.ui.cgmes_version_comboBox.currentText()]
|
|
69
|
+
|
|
70
|
+
self.cgmes_profiles_dict = {key: CgmesProfileType(key) for key, val in
|
|
71
|
+
get_available_cgmes_profiles(cgmes_version=cgmes_version).items()}
|
|
72
|
+
|
|
73
|
+
self.ui.cgmes_profiles_listView.setModel(gf.get_list_model(list(self.cgmes_profiles_dict.keys()),
|
|
74
|
+
checks=True, check_value=True))
|
|
75
|
+
|
|
76
|
+
def select_cgmes_boundary_set(self):
|
|
77
|
+
"""
|
|
78
|
+
Select the current boundary set
|
|
79
|
+
"""
|
|
80
|
+
files_types = "Boundary set (*.zip)"
|
|
81
|
+
|
|
82
|
+
dialogue = QtWidgets.QFileDialog(None,
|
|
83
|
+
caption='Select Boundary set file',
|
|
84
|
+
directory=self.project_directory,
|
|
85
|
+
filter=files_types)
|
|
86
|
+
if dialogue.exec():
|
|
87
|
+
filenames = dialogue.selectedFiles()
|
|
88
|
+
if len(filenames) > 0:
|
|
89
|
+
self.current_boundary_set = filenames[0]
|
|
90
|
+
self.ui.cgmes_boundary_set_label.setText(self.current_boundary_set)
|
|
91
|
+
|
|
92
|
+
def export(self) -> None:
|
|
93
|
+
"""
|
|
94
|
+
The elements of the grid will be added with new idtags.
|
|
95
|
+
This is useful in the case you want to compose a new grid from grids that are the same.
|
|
96
|
+
:return:
|
|
97
|
+
"""
|
|
98
|
+
cgmes_version = self.cgmes_version_dict[self.ui.cgmes_version_comboBox.currentText()]
|
|
99
|
+
cgmes_profiles_txt = gf.get_checked_values(mdl=self.ui.cgmes_profiles_listView.model())
|
|
100
|
+
cgmes_profiles = [self.cgmes_profiles_dict[e] for e in cgmes_profiles_txt]
|
|
101
|
+
cgmes_one_file_per_profile = self.ui.cgmes_single_profile_per_file_checkBox.isChecked()
|
|
102
|
+
cgmes_map_areas_like_raw = self.ui.cgmes_map_regions_like_raw_checkBox.isChecked()
|
|
103
|
+
|
|
104
|
+
options = filedrv.FileSavingOptions(cgmes_boundary_set=self.current_boundary_set,
|
|
105
|
+
sessions_data=self.sessions_data.get_save_data(),
|
|
106
|
+
dictionary_of_json_files=dict(),
|
|
107
|
+
cgmes_version=cgmes_version,
|
|
108
|
+
cgmes_profiles=cgmes_profiles,
|
|
109
|
+
cgmes_one_file_per_profile=cgmes_one_file_per_profile,
|
|
110
|
+
cgmes_map_areas_like_raw=cgmes_map_areas_like_raw)
|
|
111
|
+
|
|
112
|
+
# if the global file_name is empty, ask where to save
|
|
113
|
+
fname = os.path.join(self.project_directory, self.app.ui.grid_name_line_edit.text())
|
|
114
|
+
|
|
115
|
+
files_types = "CGMES (*.zip);;"
|
|
116
|
+
filename, type_selected = QtWidgets.QFileDialog.getSaveFileName(self,
|
|
117
|
+
'Export to CGMES',
|
|
118
|
+
fname,
|
|
119
|
+
files_types)
|
|
120
|
+
|
|
121
|
+
if filename != '':
|
|
122
|
+
|
|
123
|
+
# if the user did not enter the extension, add it automatically
|
|
124
|
+
name, file_extension = os.path.splitext(filename)
|
|
125
|
+
|
|
126
|
+
if file_extension == '':
|
|
127
|
+
filename = name + '.zip'
|
|
128
|
+
|
|
129
|
+
# we were able to compose the file correctly, now save it
|
|
130
|
+
self.app.save_file_now(filename=filename,
|
|
131
|
+
type_selected=type_selected,
|
|
132
|
+
options=options)
|
|
133
|
+
|
|
134
|
+
self.app.show_info_toast("CGMES export done!")
|
|
135
|
+
self.close()
|
|
136
|
+
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
|
|
3
|
+
################################################################################
|
|
4
|
+
## Form generated from reading UI file 'cgmes_export_gui.ui'
|
|
5
|
+
##
|
|
6
|
+
## Created by: Qt User Interface Compiler version 6.10.1
|
|
7
|
+
##
|
|
8
|
+
## WARNING! All changes made in this file will be lost when recompiling UI file!
|
|
9
|
+
################################################################################
|
|
10
|
+
|
|
11
|
+
from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale,
|
|
12
|
+
QMetaObject, QObject, QPoint, QRect,
|
|
13
|
+
QSize, QTime, QUrl, Qt)
|
|
14
|
+
from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor,
|
|
15
|
+
QFont, QFontDatabase, QGradient, QIcon,
|
|
16
|
+
QImage, QKeySequence, QLinearGradient, QPainter,
|
|
17
|
+
QPalette, QPixmap, QRadialGradient, QTransform)
|
|
18
|
+
from PySide6.QtWidgets import (QApplication, QCheckBox, QComboBox, QDialog,
|
|
19
|
+
QFrame, QGridLayout, QLabel, QListView,
|
|
20
|
+
QPushButton, QSizePolicy, QVBoxLayout, QWidget)
|
|
21
|
+
from VeraGrid.Gui.Icons.icons_rc import *
|
|
22
|
+
|
|
23
|
+
class Ui_CgmesExportDialog(object):
|
|
24
|
+
def setupUi(self, CgmesExportDialog):
|
|
25
|
+
if not CgmesExportDialog.objectName():
|
|
26
|
+
CgmesExportDialog.setObjectName(u"CgmesExportDialog")
|
|
27
|
+
CgmesExportDialog.resize(425, 569)
|
|
28
|
+
self.verticalLayout_2 = QVBoxLayout(CgmesExportDialog)
|
|
29
|
+
self.verticalLayout_2.setObjectName(u"verticalLayout_2")
|
|
30
|
+
self.frame_79 = QFrame(CgmesExportDialog)
|
|
31
|
+
self.frame_79.setObjectName(u"frame_79")
|
|
32
|
+
self.frame_79.setMinimumSize(QSize(300, 0))
|
|
33
|
+
self.frame_79.setFrameShape(QFrame.Shape.NoFrame)
|
|
34
|
+
self.frame_79.setFrameShadow(QFrame.Shadow.Raised)
|
|
35
|
+
self.gridLayout_5 = QGridLayout(self.frame_79)
|
|
36
|
+
self.gridLayout_5.setObjectName(u"gridLayout_5")
|
|
37
|
+
self.label_139 = QLabel(self.frame_79)
|
|
38
|
+
self.label_139.setObjectName(u"label_139")
|
|
39
|
+
|
|
40
|
+
self.gridLayout_5.addWidget(self.label_139, 11, 0, 1, 3)
|
|
41
|
+
|
|
42
|
+
self.cgmes_version_comboBox = QComboBox(self.frame_79)
|
|
43
|
+
self.cgmes_version_comboBox.setObjectName(u"cgmes_version_comboBox")
|
|
44
|
+
|
|
45
|
+
self.gridLayout_5.addWidget(self.cgmes_version_comboBox, 3, 0, 1, 3)
|
|
46
|
+
|
|
47
|
+
self.line_31 = QFrame(self.frame_79)
|
|
48
|
+
self.line_31.setObjectName(u"line_31")
|
|
49
|
+
palette = QPalette()
|
|
50
|
+
brush = QBrush(QColor(186, 189, 182, 255))
|
|
51
|
+
brush.setStyle(Qt.BrushStyle.SolidPattern)
|
|
52
|
+
palette.setBrush(QPalette.ColorGroup.Active, QPalette.ColorRole.WindowText, brush)
|
|
53
|
+
palette.setBrush(QPalette.ColorGroup.Inactive, QPalette.ColorRole.WindowText, brush)
|
|
54
|
+
brush1 = QBrush(QColor(190, 190, 190, 255))
|
|
55
|
+
brush1.setStyle(Qt.BrushStyle.SolidPattern)
|
|
56
|
+
palette.setBrush(QPalette.ColorGroup.Disabled, QPalette.ColorRole.WindowText, brush1)
|
|
57
|
+
self.line_31.setPalette(palette)
|
|
58
|
+
self.line_31.setFrameShadow(QFrame.Shadow.Plain)
|
|
59
|
+
self.line_31.setLineWidth(4)
|
|
60
|
+
self.line_31.setFrameShape(QFrame.Shape.HLine)
|
|
61
|
+
|
|
62
|
+
self.gridLayout_5.addWidget(self.line_31, 1, 0, 1, 3)
|
|
63
|
+
|
|
64
|
+
self.selectCGMESBoundarySetButton = QPushButton(self.frame_79)
|
|
65
|
+
self.selectCGMESBoundarySetButton.setObjectName(u"selectCGMESBoundarySetButton")
|
|
66
|
+
self.selectCGMESBoundarySetButton.setMaximumSize(QSize(80, 16777215))
|
|
67
|
+
|
|
68
|
+
self.gridLayout_5.addWidget(self.selectCGMESBoundarySetButton, 9, 2, 1, 1)
|
|
69
|
+
|
|
70
|
+
self.cgmes_map_regions_like_raw_checkBox = QCheckBox(self.frame_79)
|
|
71
|
+
self.cgmes_map_regions_like_raw_checkBox.setObjectName(u"cgmes_map_regions_like_raw_checkBox")
|
|
72
|
+
|
|
73
|
+
self.gridLayout_5.addWidget(self.cgmes_map_regions_like_raw_checkBox, 14, 0, 1, 3)
|
|
74
|
+
|
|
75
|
+
self.cgmes_single_profile_per_file_checkBox = QCheckBox(self.frame_79)
|
|
76
|
+
self.cgmes_single_profile_per_file_checkBox.setObjectName(u"cgmes_single_profile_per_file_checkBox")
|
|
77
|
+
|
|
78
|
+
self.gridLayout_5.addWidget(self.cgmes_single_profile_per_file_checkBox, 13, 0, 1, 3)
|
|
79
|
+
|
|
80
|
+
self.label_135 = QLabel(self.frame_79)
|
|
81
|
+
self.label_135.setObjectName(u"label_135")
|
|
82
|
+
|
|
83
|
+
self.gridLayout_5.addWidget(self.label_135, 2, 0, 1, 3)
|
|
84
|
+
|
|
85
|
+
self.label_102 = QLabel(self.frame_79)
|
|
86
|
+
self.label_102.setObjectName(u"label_102")
|
|
87
|
+
|
|
88
|
+
self.gridLayout_5.addWidget(self.label_102, 10, 0, 1, 1)
|
|
89
|
+
|
|
90
|
+
self.label_134 = QLabel(self.frame_79)
|
|
91
|
+
self.label_134.setObjectName(u"label_134")
|
|
92
|
+
palette1 = QPalette()
|
|
93
|
+
brush2 = QBrush(QColor(85, 87, 83, 255))
|
|
94
|
+
brush2.setStyle(Qt.BrushStyle.SolidPattern)
|
|
95
|
+
palette1.setBrush(QPalette.ColorGroup.Active, QPalette.ColorRole.WindowText, brush2)
|
|
96
|
+
brush3 = QBrush(QColor(0, 0, 0, 255))
|
|
97
|
+
brush3.setStyle(Qt.BrushStyle.SolidPattern)
|
|
98
|
+
palette1.setBrush(QPalette.ColorGroup.Inactive, QPalette.ColorRole.WindowText, brush3)
|
|
99
|
+
palette1.setBrush(QPalette.ColorGroup.Disabled, QPalette.ColorRole.WindowText, brush1)
|
|
100
|
+
self.label_134.setPalette(palette1)
|
|
101
|
+
font = QFont()
|
|
102
|
+
font.setPointSize(16)
|
|
103
|
+
self.label_134.setFont(font)
|
|
104
|
+
|
|
105
|
+
self.gridLayout_5.addWidget(self.label_134, 0, 1, 1, 2)
|
|
106
|
+
|
|
107
|
+
self.label_90 = QLabel(self.frame_79)
|
|
108
|
+
self.label_90.setObjectName(u"label_90")
|
|
109
|
+
|
|
110
|
+
self.gridLayout_5.addWidget(self.label_90, 8, 0, 1, 3)
|
|
111
|
+
|
|
112
|
+
self.cgmes_dc_as_hvdclines_checkBox = QCheckBox(self.frame_79)
|
|
113
|
+
self.cgmes_dc_as_hvdclines_checkBox.setObjectName(u"cgmes_dc_as_hvdclines_checkBox")
|
|
114
|
+
|
|
115
|
+
self.gridLayout_5.addWidget(self.cgmes_dc_as_hvdclines_checkBox, 15, 0, 1, 3)
|
|
116
|
+
|
|
117
|
+
self.label_137 = QLabel(self.frame_79)
|
|
118
|
+
self.label_137.setObjectName(u"label_137")
|
|
119
|
+
self.label_137.setMinimumSize(QSize(24, 24))
|
|
120
|
+
self.label_137.setMaximumSize(QSize(24, 24))
|
|
121
|
+
self.label_137.setPixmap(QPixmap(u":/Icons/icons/new2.png"))
|
|
122
|
+
self.label_137.setScaledContents(True)
|
|
123
|
+
|
|
124
|
+
self.gridLayout_5.addWidget(self.label_137, 0, 0, 1, 1)
|
|
125
|
+
|
|
126
|
+
self.cgmes_profiles_listView = QListView(self.frame_79)
|
|
127
|
+
self.cgmes_profiles_listView.setObjectName(u"cgmes_profiles_listView")
|
|
128
|
+
|
|
129
|
+
self.gridLayout_5.addWidget(self.cgmes_profiles_listView, 12, 0, 1, 3)
|
|
130
|
+
|
|
131
|
+
self.cgmes_boundary_set_label = QLabel(self.frame_79)
|
|
132
|
+
self.cgmes_boundary_set_label.setObjectName(u"cgmes_boundary_set_label")
|
|
133
|
+
|
|
134
|
+
self.gridLayout_5.addWidget(self.cgmes_boundary_set_label, 9, 0, 1, 2)
|
|
135
|
+
|
|
136
|
+
self.exportButton = QPushButton(self.frame_79)
|
|
137
|
+
self.exportButton.setObjectName(u"exportButton")
|
|
138
|
+
|
|
139
|
+
self.gridLayout_5.addWidget(self.exportButton, 16, 2, 1, 1)
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
self.verticalLayout_2.addWidget(self.frame_79)
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
self.retranslateUi(CgmesExportDialog)
|
|
146
|
+
|
|
147
|
+
QMetaObject.connectSlotsByName(CgmesExportDialog)
|
|
148
|
+
# setupUi
|
|
149
|
+
|
|
150
|
+
def retranslateUi(self, CgmesExportDialog):
|
|
151
|
+
CgmesExportDialog.setWindowTitle(QCoreApplication.translate("CgmesExportDialog", u"CGMES Export", None))
|
|
152
|
+
self.label_139.setText(QCoreApplication.translate("CgmesExportDialog", u"Profiles to export", None))
|
|
153
|
+
#if QT_CONFIG(tooltip)
|
|
154
|
+
self.selectCGMESBoundarySetButton.setToolTip(QCoreApplication.translate("CgmesExportDialog", u"Select the CGMES boundary set (single zip file)", None))
|
|
155
|
+
#endif // QT_CONFIG(tooltip)
|
|
156
|
+
self.selectCGMESBoundarySetButton.setText(QCoreApplication.translate("CgmesExportDialog", u"Select", None))
|
|
157
|
+
#if QT_CONFIG(tooltip)
|
|
158
|
+
self.cgmes_map_regions_like_raw_checkBox.setToolTip(QCoreApplication.translate("CgmesExportDialog", u"<html><head/><body><p>If active the CGMEs mapping will be:</p><p>GeographicalRegion <-> Area</p><p>SubGeographicalRegion <-> Zone</p><p>Otherwise:</p><p>GeographicalRegion <-> Country</p><p>SubGeographicalRegion <-> Community</p><p><br/></p></body></html>", None))
|
|
159
|
+
#endif // QT_CONFIG(tooltip)
|
|
160
|
+
self.cgmes_map_regions_like_raw_checkBox.setText(QCoreApplication.translate("CgmesExportDialog", u"Map regions like raw files", None))
|
|
161
|
+
self.cgmes_single_profile_per_file_checkBox.setText(QCoreApplication.translate("CgmesExportDialog", u"One file per profile", None))
|
|
162
|
+
self.label_135.setText(QCoreApplication.translate("CgmesExportDialog", u"Export version", None))
|
|
163
|
+
self.label_102.setText("")
|
|
164
|
+
self.label_134.setText(QCoreApplication.translate("CgmesExportDialog", u"CGMES", None))
|
|
165
|
+
self.label_90.setText(QCoreApplication.translate("CgmesExportDialog", u"Boundary set", None))
|
|
166
|
+
#if QT_CONFIG(tooltip)
|
|
167
|
+
self.cgmes_dc_as_hvdclines_checkBox.setToolTip(QCoreApplication.translate("CgmesExportDialog", u"<html><head/><body><p>Converters and DC lines in CGMES are attempted to be converted to the simplified HvdcLine objects in VeraGrid</p></body></html>", None))
|
|
168
|
+
#endif // QT_CONFIG(tooltip)
|
|
169
|
+
self.cgmes_dc_as_hvdclines_checkBox.setText(QCoreApplication.translate("CgmesExportDialog", u"Treat DC equipement as HvdcLines", None))
|
|
170
|
+
self.label_137.setText("")
|
|
171
|
+
#if QT_CONFIG(tooltip)
|
|
172
|
+
self.cgmes_boundary_set_label.setToolTip(QCoreApplication.translate("CgmesExportDialog", u"Path of the CGMES default boundary set (single zip file)", None))
|
|
173
|
+
#endif // QT_CONFIG(tooltip)
|
|
174
|
+
self.cgmes_boundary_set_label.setText(QCoreApplication.translate("CgmesExportDialog", u"...", None))
|
|
175
|
+
self.exportButton.setText(QCoreApplication.translate("CgmesExportDialog", u"Export", None))
|
|
176
|
+
# retranslateUi
|
|
177
|
+
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
2
|
+
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
3
|
+
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
4
|
+
# SPDX-License-Identifier: MPL-2.0
|
|
5
|
+
"""
|
|
6
|
+
Script to update correctly the main GUI (.py) file from the Qt design (.ui) file
|
|
7
|
+
"""
|
|
8
|
+
from VeraGrid.Gui.update_gui_common import convert_ui_file
|
|
9
|
+
|
|
10
|
+
if __name__ == '__main__':
|
|
11
|
+
for f in ['cgmes_export_gui.ui']:
|
|
12
|
+
convert_ui_file(source=f)
|
|
@@ -136,7 +136,7 @@ class MapInjectionTemplateGraphicItem(NodeTemplate, QGraphicsEllipseItem):
|
|
|
136
136
|
Updates the element position in the diagram (to save)
|
|
137
137
|
:return:
|
|
138
138
|
"""
|
|
139
|
-
lat, long = self.editor.to_lat_lon(self.
|
|
139
|
+
lat, long = self.editor.to_lat_lon(self.get_xc(), self.get_yc())
|
|
140
140
|
|
|
141
141
|
self.lat = lat
|
|
142
142
|
self.lon = long
|
|
@@ -253,11 +253,17 @@ class MapInjectionTemplateGraphicItem(NodeTemplate, QGraphicsEllipseItem):
|
|
|
253
253
|
menu = self.get_base_context_menu()
|
|
254
254
|
menu.exec(event.screenPos())
|
|
255
255
|
|
|
256
|
+
def get_xc(self) -> float:
|
|
257
|
+
return self.rect().x() + self.size/2
|
|
258
|
+
|
|
259
|
+
def get_yc(self) -> float:
|
|
260
|
+
return self.rect().y() + self.size/2
|
|
261
|
+
|
|
256
262
|
def consolidate_coordinates(self):
|
|
257
263
|
"""
|
|
258
264
|
Consolidate coordinates in to the DB
|
|
259
265
|
"""
|
|
260
|
-
lat, long = self.editor.to_lat_lon(self.
|
|
266
|
+
lat, long = self.editor.to_lat_lon(self.get_xc(), self.get_yc())
|
|
261
267
|
self.api_object.latitude = lat
|
|
262
268
|
self.api_object.longitude = long
|
|
263
269
|
self.editor.gui.show_info_toast("Coordinates consolidated!")
|
{veragrid-5.6.19 → veragrid-5.6.20}/VeraGrid/Gui/Diagrams/MapWidget/Substation/node_template.py
RENAMED
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
from typing import Union, TYPE_CHECKING, Dict, Callable, List
|
|
7
7
|
from PySide6.QtCore import QPointF
|
|
8
|
-
from PySide6.QtGui import QBrush
|
|
9
8
|
|
|
10
9
|
from VeraGrid.Gui.Diagrams.MapWidget.Branches.map_line_segment import MapLineSegment
|
|
11
10
|
from VeraGrid.Gui.Diagrams.generic_graphics import GenericDiagramWidget
|
|
@@ -41,14 +40,30 @@ class NodeTemplate(GenericDiagramWidget):
|
|
|
41
40
|
editor=editor,
|
|
42
41
|
draw_labels=draw_labels)
|
|
43
42
|
|
|
44
|
-
self.
|
|
45
|
-
self.
|
|
43
|
+
self._lat = lat
|
|
44
|
+
self._lon = lon
|
|
46
45
|
|
|
47
46
|
self.hovered = False
|
|
48
47
|
self.needsUpdate = False
|
|
49
48
|
|
|
50
49
|
self._hosting_connections: Dict[MapLineSegment, Callable[[float, float], None]] = dict()
|
|
51
50
|
|
|
51
|
+
@property
|
|
52
|
+
def lat(self):
|
|
53
|
+
return self._lat
|
|
54
|
+
|
|
55
|
+
@lat.setter
|
|
56
|
+
def lat(self, val: float):
|
|
57
|
+
self._lat = val
|
|
58
|
+
|
|
59
|
+
@property
|
|
60
|
+
def lon(self):
|
|
61
|
+
return self._lon
|
|
62
|
+
|
|
63
|
+
@lon.setter
|
|
64
|
+
def lon(self, val: float):
|
|
65
|
+
self._lon = val
|
|
66
|
+
|
|
52
67
|
def add_position_change_callback(self, obj: MapLineSegment, fcn: Callable[[float, float], None]):
|
|
53
68
|
"""
|
|
54
69
|
Add callable function
|
|
@@ -9,13 +9,11 @@ from PySide6 import QtWidgets
|
|
|
9
9
|
from PySide6.QtWidgets import QMenu, QGraphicsSceneContextMenuEvent, QGraphicsSceneMouseEvent, QGraphicsRectItem
|
|
10
10
|
from PySide6.QtCore import Qt, QPointF
|
|
11
11
|
from PySide6.QtGui import QBrush, QColor
|
|
12
|
-
from VeraGrid.Gui.Diagrams.MapWidget.Injections.map_static_generator_graphics import (
|
|
13
|
-
|
|
14
|
-
from VeraGrid.Gui.Diagrams.MapWidget.Injections.
|
|
15
|
-
|
|
16
|
-
from VeraGrid.Gui.Diagrams.MapWidget.Injections.
|
|
17
|
-
from VeraGrid.Gui.Diagrams.MapWidget.Injections.map_generator_graphics import MapGeneratorGraphicItem, Generator
|
|
18
|
-
from VeraGrid.Gui.Diagrams.MapWidget.Injections.map_load_graphics import MapLoadGraphicItem, Load
|
|
12
|
+
from VeraGrid.Gui.Diagrams.MapWidget.Injections.map_static_generator_graphics import (StaticGenerator)
|
|
13
|
+
from VeraGrid.Gui.Diagrams.MapWidget.Injections.map_external_grid_graphics import (ExternalGrid)
|
|
14
|
+
from VeraGrid.Gui.Diagrams.MapWidget.Injections.map_battery_graphics import Battery
|
|
15
|
+
from VeraGrid.Gui.Diagrams.MapWidget.Injections.map_generator_graphics import Generator
|
|
16
|
+
from VeraGrid.Gui.Diagrams.MapWidget.Injections.map_load_graphics import Load
|
|
19
17
|
from VeraGrid.Gui.Diagrams.MapWidget.Branches.map_line_container import MapLineContainer
|
|
20
18
|
from VeraGrid.Gui.Diagrams.MapWidget.Substation.node_template import NodeTemplate
|
|
21
19
|
from VeraGrid.Gui.Diagrams.generic_graphics import GenericDiagramWidget
|
|
@@ -278,12 +276,24 @@ class SubstationGraphicItem(NodeTemplate, QGraphicsRectItem):
|
|
|
278
276
|
for i, vl_graphics in enumerate(sorted_objects):
|
|
279
277
|
vl_graphics.setZValue(i)
|
|
280
278
|
|
|
279
|
+
def get_xc(self) -> float:
|
|
280
|
+
return self.rect().x() + self.size/2
|
|
281
|
+
|
|
282
|
+
def get_yc(self) -> float:
|
|
283
|
+
return self.rect().y() + self.size/2
|
|
284
|
+
|
|
281
285
|
def update_position_at_the_diagram(self) -> None:
|
|
282
286
|
"""
|
|
283
287
|
Updates the element position in the diagram (to save)
|
|
284
288
|
:return:
|
|
285
289
|
"""
|
|
286
|
-
lat, long = self.editor.to_lat_lon(self.
|
|
290
|
+
lat, long = self.editor.to_lat_lon(self.get_xc(), self.get_yc())
|
|
291
|
+
|
|
292
|
+
# if abs(self.lat - lat) > 1e-8:
|
|
293
|
+
# print(f"LAT MOVED: {self.lat}, new: {lat}")
|
|
294
|
+
#
|
|
295
|
+
# if abs(self.lon - long) > 1e-8:
|
|
296
|
+
# print(f"LON MOVED: {self.lon}, new: {long}")
|
|
287
297
|
|
|
288
298
|
self.lat = lat
|
|
289
299
|
self.lon = long
|
|
@@ -2097,6 +2097,10 @@ class GridMapWidget(BaseDiagramWidget):
|
|
|
2097
2097
|
merging_substation.remove_function_from_schematic_and_db()
|
|
2098
2098
|
|
|
2099
2099
|
def consolidate_object_coordinates(self):
|
|
2100
|
+
"""
|
|
2101
|
+
|
|
2102
|
+
:return:
|
|
2103
|
+
"""
|
|
2100
2104
|
selected_lines = self.get_selected_line_segments_tup()
|
|
2101
2105
|
selected_substations = self.get_selected_substations_tup()
|
|
2102
2106
|
selected_generators = self.get_selected_generators_tup()
|
|
@@ -3128,3 +3132,30 @@ def generate_map_diagram(
|
|
|
3128
3132
|
|
|
3129
3133
|
return diagram
|
|
3130
3134
|
|
|
3135
|
+
|
|
3136
|
+
def generate_map_diagram2(circuit: MultiCircuit):
|
|
3137
|
+
return generate_map_diagram(
|
|
3138
|
+
substations=circuit.get_substations(),
|
|
3139
|
+
voltage_levels=circuit.get_voltage_levels(),
|
|
3140
|
+
lines=circuit.get_lines(),
|
|
3141
|
+
dc_lines=circuit.get_dc_lines(),
|
|
3142
|
+
hvdc_lines=circuit.get_hvdc(),
|
|
3143
|
+
fluid_nodes=circuit.get_fluid_nodes(),
|
|
3144
|
+
fluid_paths=circuit.get_fluid_paths(),
|
|
3145
|
+
external_grids=circuit.external_grids,
|
|
3146
|
+
static_generators=circuit.static_generators,
|
|
3147
|
+
loads=circuit.loads,
|
|
3148
|
+
batteries=circuit.batteries ,
|
|
3149
|
+
generators=circuit.generators,
|
|
3150
|
+
prog_func=None,
|
|
3151
|
+
text_func=None,
|
|
3152
|
+
name='Map diagram',
|
|
3153
|
+
use_flow_based_width=False,
|
|
3154
|
+
min_branch_width=0.01,
|
|
3155
|
+
max_branch_width=0.02,
|
|
3156
|
+
min_bus_width=0.1,
|
|
3157
|
+
max_bus_width=0.2,
|
|
3158
|
+
arrow_size=0.015,
|
|
3159
|
+
palette=Colormaps.VeraGrid,
|
|
3160
|
+
default_bus_voltage=20
|
|
3161
|
+
)
|