]> gerrit.simantics Code Review - simantics/district.git/blobdiff - org.simantics.district.network.ontology/graph/DistrictNetworkDiagramSettings.pgraph
Add support for saving visualisation templates
[simantics/district.git] / org.simantics.district.network.ontology / graph / DistrictNetworkDiagramSettings.pgraph
index 334adbedd9f0461debeae348c0b3d517703afe69..2e259ef7bee17e801e45266cd05cb0fc46f3a0f9 100644 (file)
@@ -19,6 +19,12 @@ DN.EdgeThicknessPropertyParameterType <T SEL.GenericParameterType
             SEL.HasEnumerationValues DN.Functions.edgeThicknessPropertyEnumerationValues : L0.Function
             SEL.HasCustomModifier DN.Functions.edgeThicknessPropertyModifier : L0.Function
 
+DN.ArrowLengthPropertyParameterType <T SEL.GenericParameterType
+    @L0.assert SEL.HasDisplayValue
+        _ : SEL.DisplayValue
+            SEL.HasEnumerationValues DN.Functions.arrowLengthPropertyEnumerationValues : L0.Function
+            SEL.HasCustomModifier DN.Functions.arrowLengthPropertyModifier : L0.Function
+
 DN.VertexScalePropertyParameterType <T SEL.GenericParameterType
     @L0.assert SEL.HasDisplayValue
         _ : SEL.DisplayValue
@@ -36,6 +42,17 @@ DN.Edge.ThicknessProperty <T L0.Value
     @L0.assert DN.Edge.ThicknessProperty.gain 1.0
     @L0.assert DN.Edge.ThicknessProperty.bias 0.0
 
+DN.Edge.ArrowLengthProperty <T L0.Value
+    @L0.assert L0.ConvertsToValueWith DN.Functions.convertToValue
+    >-- DN.Edge.ArrowLengthProperty.value ==> "Resource -> <ReadGraph> Maybe Double" <R L0.HasProperty : SEL.GenericParameterType
+        L0.readOnly true
+    >-- DN.Edge.ArrowLengthProperty.gain --> L0.Double <R L0.HasProperty : SEL.GenericParameterType
+        L0.readOnly true
+    >-- DN.Edge.ArrowLengthProperty.bias --> L0.Double <R L0.HasProperty : SEL.GenericParameterType
+        L0.readOnly true
+    @L0.assert DN.Edge.ArrowLengthProperty.gain 1.0
+    @L0.assert DN.Edge.ArrowLengthProperty.bias 0.0
+
 DN.Vertex.ScaleProperty <T L0.Value
     @L0.assert L0.ConvertsToValueWith DN.Functions.convertToValue
     >-- DN.Vertex.ScaleProperty.value ==> "Resource -> <ReadGraph> Maybe Double" <R L0.HasProperty : SEL.GenericParameterType
@@ -73,6 +90,12 @@ DN.Diagram
         L0.HasLabel "Edge Thickness Bias"
     >-- DN.Diagram.edgeThicknessProperty --> DN.Edge.ThicknessProperty <R L0.HasProperty : DN.EdgeThicknessPropertyParameterType
         L0.HasLabel "Edge Thickness Property"
+    >-- DN.Diagram.arrowLengthGain ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
+        L0.HasLabel "Arrow Length Gain"
+    >-- DN.Diagram.arrowLengthBias ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
+        L0.HasLabel "Arrow Length Bias"
+    >-- DN.Diagram.arrowLengthProperty --> DN.Edge.ArrowLengthProperty <R L0.HasProperty : DN.ArrowLengthPropertyParameterType
+        L0.HasLabel "Arrow Length Property"
     >-- DN.Diagram.nodeScaleGain ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
         L0.HasLabel "Node Scale Gain"
     >-- DN.Diagram.nodeScaleBias ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
@@ -83,6 +106,11 @@ DN.Diagram
         L0.HasLabel "Diagram Background Color"
     >-- DN.Diagram.drawMapEnabled ==> "Boolean" <R L0.HasProperty : SEL.GenericParameterType
         L0.HasLabel "Draw Map"
+    >-- DN.Diagram.hasVisualisation --> DN.Diagram.Visualisations <R L0.HasProperty
+        L0.HasLabel "Visualisation"
+    >-- DN.Diagram.hasActiveVisualisation --> DN.Diagram.Visualisations <R L0.HasProperty
+    >-- DN.Diagram.profileUpdateInterval ==> "Long" <R L0.HasProperty : SEL.GenericParameterType
+        L0.HasLabel "Profile update interval"
     @L0.assert DN.Diagram.elementColoringGradientHue
         0.0 : L0.Float
             L0.HasDataType $(Float(unit="deg",range=[0..360]))
@@ -93,10 +121,16 @@ DN.Diagram
     @L0.assert DN.Diagram.edgeThicknessGain 1.0
     @L0.assert DN.Diagram.edgeThicknessBias 0.0
     @L0.assert DN.Diagram.edgeThicknessProperty DN.Edge.ThicknessProperty.Diameter
+    @L0.assert DN.Diagram.arrowLengthGain 1.0
+    @L0.assert DN.Diagram.arrowLengthBias 0.0
+    @L0.assert DN.Diagram.arrowLengthProperty DN.Edge.ArrowLengthProperty.FlowRate
     @L0.assert DN.Diagram.nodeScaleGain 1.0
     @L0.assert DN.Diagram.nodeScaleBias 0.0
     @L0.assert DN.Diagram.nodeScaleProperty DN.Vertex.ScaleProperty.NominalSupplyPressure
     @L0.assert DN.Diagram.drawMapEnabled true
+    @L0.assert DN.Diagram.profileUpdateInterval
+        2000 : L0.Long
+    @L0.assert DN.Diagram.DefaultPipeTechTypeId 0
 
 // ----------------------------------------------------------------------------
 // Built-in enumerated ScaleProperty & ThicknessProperty instances
@@ -104,6 +138,9 @@ DN.Diagram
 DN.Functions.constantOne : L0.Function
     L0.HasValueType "Resource -> <ReadGraph> Maybe Double"
 
+DN.Functions.hasNominalMassFlowValue : L0.Function
+    L0.HasValueType "Resource -> <ReadGraph> Maybe Double"
+
 DN.Edge.ThicknessProperty.OnlyGainAndBias: DN.Edge.ThicknessProperty
     L0.HasLabel "Only Gain and Bias"
     DN.Edge.ThicknessProperty.value
@@ -116,6 +153,17 @@ DN.Edge.ThicknessProperty.Diameter : DN.Edge.ThicknessProperty
             L0.HasValueType "Resource -> <ReadGraph> Maybe Double"
     DN.Edge.ThicknessProperty.gain 0.001
 
+DN.Edge.ThicknessProperty.FlowRate : DN.Edge.ThicknessProperty
+    L0.HasLabel "Nominal Mass Flow"
+    DN.Edge.ThicknessProperty.value
+        DN.Functions.hasNominalMassFlowValue
+    DN.Edge.ThicknessProperty.gain 0.1
+
+DN.Edge.ArrowLengthProperty.FlowRate : DN.Edge.ArrowLengthProperty
+    L0.HasLabel "Nominal Mass Flow"
+    DN.Edge.ArrowLengthProperty.value
+        DN.Functions.hasNominalMassFlowValue
+    DN.Edge.ArrowLengthProperty.gain 1.0
 
 DN.Vertex.ScaleProperty.OnlyGainAndBias: DN.Vertex.ScaleProperty
     L0.HasLabel "Only Gain and Bias"