+ Collection<DynamicArrowObject> dynamicArrowObjects = DynamicVisualisationsContributions.dynamicEdgeArrowObjects(graph);
+ Map<String, DynamicArrowObject> defaultArrowObjects = dynamicArrowObjects.stream().collect(Collectors.toMap(dac -> dac.getArrowObject().getName(), dac -> dac));
+
+ Map<String, DynamicColorContribution> colorContributions = DynamicVisualisations.colorContributions(graph, visualisationResource);
+ ColorBarOptions colorBarOptions = DynamicVisualisations.colorBarOptions(graph, visualisationResource);
+ Map<String, DynamicSizeContribution> sizeContributions = DynamicVisualisations.sizeContributions(graph, visualisationResource);
+ SizeBarOptions sizeBarOptions = DynamicVisualisations.sizeBarOptions(graph, visualisationResource);
+ Map<String, DynamicArrowContribution> arrowContributions = DynamicVisualisations.arrowContributions(graph, visualisationResource);
+
+ Collection<StaticInformationContributionObject> staticInformationContributions = DynamicVisualisationsContributions.staticInformationContributionObjects(graph);
+ Map<String, StaticInformationContributionObject> staticInformationContributionObjects = staticInformationContributions.stream().collect(Collectors.toMap(dcc -> dcc.getStaticInformationContributionObject().getName(), dcc -> dcc));
+
+ Collection<DynamicSymbolContributionObject> dynamicSymbolContributions = DynamicVisualisationsContributions.dynamicSymbolContributionObjects(graph);
+ Map<String, DynamicSymbolContributionObject> dynamicSymbolContributionObjects = dynamicSymbolContributions.stream().map(dsc -> {
+ // here we resolve the symbol map with the help of readgraph
+ dsc.resolveSymbols(graph);
+ return dsc;
+ }).collect(Collectors.toMap(dcc -> dcc.getDynamicSymbolContributionObject().getName(), dcc -> dcc));
+
+ Boolean hideEdges = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_HideEdges, Bindings.BOOLEAN);
+ Boolean hidePoints = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_HidePoints, Bindings.BOOLEAN);
+ Boolean hideConsumers = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_HideConsumers, Bindings.BOOLEAN);
+ Boolean hideProducers = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_HideProducers, Bindings.BOOLEAN);
+ Boolean hideValves = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_HideValves, Bindings.BOOLEAN);
+ Boolean hidePumpingStations = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_HidePumpingStations, Bindings.BOOLEAN);
+ Boolean staticPropertiesNetworkBranch = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_StaticPropertiesNetworkBranches, Bindings.BOOLEAN);
+ Boolean staticProperiesPoints = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_StaticPropertiesPoints, Bindings.BOOLEAN);
+ Boolean staticPropertiesConsumers = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_StaticPropertiesConsumers, Bindings.BOOLEAN);
+ Boolean dynamicSymbolsProducers = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_DynamicSymbolsProducers, Bindings.BOOLEAN);
+ Boolean dynamicSymbolsShutoffValves = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_DynamicSymbolsShutoffValves, Bindings.BOOLEAN);
+ Boolean dynamicSymbolsValves = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_DynamicSymbolsValves, Bindings.BOOLEAN);
+ Boolean dynamicSymbolsPumpingStations = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_DynamicSymbolsPumpingStations, Bindings.BOOLEAN);
+
+ Boolean keyVariablesVertexHover = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_KeyVariableVertexHover, Bindings.BOOLEAN);
+ Boolean keyVariablesEdgesHover = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_KeyVariableEdgeHover, Bindings.BOOLEAN);
+
+ Boolean showElevationServerBoundingBox = DynamicVisualisations.showElevationServerBoundingBox(graph, visualisationResource);
+ Boolean notInSimulation = DynamicVisualisations.isNotInSimulation(graph, visualisationResource);
+ Boolean showConnectedComponents = DynamicVisualisations.showConnectedComponents(graph, visualisationResource);
+
+ DynamicVisualisation visualisation = new DynamicVisualisation(name, visualisationResource,
+ interval != null ? interval : 2000,
+ disabledUpdates != null ? disabledUpdates : false,
+ resetVisualisation != null ? resetVisualisation : false,
+ colorContributions,
+ defaultColoringObjects,
+ colorBarOptions,
+ sizeContributions,
+ defaultSizingObjects,
+ sizeBarOptions,
+ defaultArrowObjects,
+ arrowContributions,
+ staticInformationContributionObjects,
+ dynamicSymbolContributionObjects,
+ hideEdges != null ? hideEdges : false,
+ hidePoints != null ? hidePoints : false,
+ hideConsumers != null ? hideConsumers : false,
+ hideProducers != null ? hideProducers : false,
+ hideValves != null ? hideValves : false,
+ hidePumpingStations != null ? hidePumpingStations : false,
+ staticPropertiesNetworkBranch != null ? staticPropertiesNetworkBranch : false,
+ staticProperiesPoints != null ? staticProperiesPoints : false,
+ staticPropertiesConsumers != null ? staticPropertiesConsumers : false,
+ dynamicSymbolsProducers != null ? dynamicSymbolsProducers : false,
+ dynamicSymbolsShutoffValves != null ? dynamicSymbolsShutoffValves : false,
+ dynamicSymbolsValves != null ? dynamicSymbolsValves : false,
+ dynamicSymbolsPumpingStations != null ? dynamicSymbolsPumpingStations : false,
+ keyVariablesVertexHover != null ? keyVariablesVertexHover : false,
+ keyVariablesEdgesHover != null ? keyVariablesEdgesHover : false,
+ showElevationServerBoundingBox != null ? showElevationServerBoundingBox : false,
+ notInSimulation != null ? notInSimulation : false,
+ showConnectedComponents != null ? showConnectedComponents : false
+ );