Open massimo-ferraro opened 5 years ago
A possible fix would be to call the constructCellForThreeWindingsTransformer method in the voltage level layout implementations that need it, instead of in the graph building. The other option would be to somehow write a method that reverse the graph back, with the original THREE_WINDINGS_TRANSFORMER feeder nodes, and to call this method in the CGMES voltage level layout.
Do you want to request a feature or report a bug? bug
What is the current behavior? Building the voltage level graph, each THREE_WINDINGS_TRANSFORMER feeder node is replaced with a fictitious node and 2 new feeder nodes (please see class com.powsybl.sld.model.Graph, method constructCellForThreeWindingsTransformer). These replacements seems to be necessary for the creation of diagrams at the substation level (please see class com.powsybl.sld.model.SubstationGraph, method addSnakeLines). CGMES voltage level layout can set coordinates only of nodes (equipment) belonging to the original network (with data read from CGMES DL profile), so the 3 nodes replacing each THREE_WINDINGS_TRANSFORMER node have no coordinates assigned by the CGMES voltage level layout. In the svg they are all placed with [0, 0] coordinates:
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem Load the MiniGridTestConfiguration_BC.zip grid in the viewer and select the first substation, the one with 3 voltage levels, selecting CGMES as substation layout, and Diagram as CGMES-DL Diagram (you can reproduce the problem also on the voltage levels of the same substation, choosing CGMES as voltage level layout)
What is the expected behavior? That all the nodes in the graph can have the coordinates correctly assigned: