1 L0 = <http://www.simantics.org/Layer0-1.1>
2 L0X = <http://www.simantics.org/Layer0X-1.1>
3 DIA = <http://www.simantics.org/Diagram-2.2>
4 STR = <http://www.simantics.org/Structural-1.2>
5 MOD = <http://www.simantics.org/Modeling-1.2>
6 VP = <http://www.simantics.org/Viewpoint-1.2>
7 IMAGE = <http://www.simantics.org/Image2-1.2>
8 SEL = <http://www.simantics.org/SelectionView-1.2>
9 SEL_UI = <http://www.simantics.org/SelectionViewUI-1.1>
10 G2D = <http://www.simantics.org/G2D-1.1>
11 DN = <http://www.simantics.org/DistrictNetwork-1.0>
12 DATATYPES = <http://www.simantics.org/Datatypes-1.1>
14 // ----------------------------------------------------------------------------
16 DN.EdgeThicknessPropertyParameterType <T SEL.GenericParameterType
17 @L0.assert SEL.HasDisplayValue
19 SEL.HasEnumerationValues DN.Functions.edgeThicknessPropertyEnumerationValues : L0.Function
20 SEL.HasCustomModifier DN.Functions.edgeThicknessPropertyModifier : L0.Function
22 DN.ArrowLengthPropertyParameterType <T SEL.GenericParameterType
23 @L0.assert SEL.HasDisplayValue
25 SEL.HasEnumerationValues DN.Functions.arrowLengthPropertyEnumerationValues : L0.Function
26 SEL.HasCustomModifier DN.Functions.arrowLengthPropertyModifier : L0.Function
28 DN.VertexScalePropertyParameterType <T SEL.GenericParameterType
29 @L0.assert SEL.HasDisplayValue
31 SEL.HasEnumerationValues DN.Functions.nodeScalePropertyEnumerationValues : L0.Function
32 SEL.HasCustomModifier DN.Functions.nodeScalePropertyModifier : L0.Function
34 DN.Edge.ThicknessProperty <T L0.Value
35 @L0.assert L0.ConvertsToValueWith DN.Functions.convertToValue
36 >-- DN.Edge.ThicknessProperty.value ==> "Resource -> <ReadGraph> Maybe Double" <R L0.HasProperty : SEL.GenericParameterType
38 >-- DN.Edge.ThicknessProperty.gain --> L0.Double <R L0.HasProperty : SEL.GenericParameterType
40 >-- DN.Edge.ThicknessProperty.bias --> L0.Double <R L0.HasProperty : SEL.GenericParameterType
42 @L0.assert DN.Edge.ThicknessProperty.gain 1.0
43 @L0.assert DN.Edge.ThicknessProperty.bias 0.0
45 DN.Edge.ArrowLengthProperty <T L0.Value
46 @L0.assert L0.ConvertsToValueWith DN.Functions.convertToValue
47 >-- DN.Edge.ArrowLengthProperty.value ==> "Resource -> <ReadGraph> Maybe Double" <R L0.HasProperty : SEL.GenericParameterType
49 >-- DN.Edge.ArrowLengthProperty.gain --> L0.Double <R L0.HasProperty : SEL.GenericParameterType
51 >-- DN.Edge.ArrowLengthProperty.bias --> L0.Double <R L0.HasProperty : SEL.GenericParameterType
53 @L0.assert DN.Edge.ArrowLengthProperty.gain 1.0
54 @L0.assert DN.Edge.ArrowLengthProperty.bias 0.0
56 DN.Vertex.ScaleProperty <T L0.Value
57 @L0.assert L0.ConvertsToValueWith DN.Functions.convertToValue
58 >-- DN.Vertex.ScaleProperty.value ==> "Resource -> <ReadGraph> Maybe Double" <R L0.HasProperty : SEL.GenericParameterType
60 >-- DN.Vertex.ScaleProperty.gain ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
62 >-- DN.Vertex.ScaleProperty.bias ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
64 @L0.assert DN.Vertex.ScaleProperty.gain 1.0
65 @L0.assert DN.Vertex.ScaleProperty.bias 0.0
68 >-- DN.Diagram.elementColoringGradientHue ==> "Float" <R L0.HasProperty : SEL.GenericParameterType
69 L0.HasLabel "Element Color Hue"
70 L0.HasDescription "HSV/HSB color space hue value used for element coloring in degrees (0-360)"
72 L0X.RequiresDataType $(Float(unit="deg",range=[0..360]))
73 SEL.HasDisplayValue _ : SEL.DisplayValue
74 L0.Literal.HasInputValidator DN.Functions.hueValidator : L0.Function
75 >-- DN.Diagram.elementColoringGradientSaturation ==> "Float" <R L0.HasProperty : SEL.GenericParameterType
76 L0.HasLabel "Element Color Saturation"
77 L0.HasDescription "HSV/HSB color space saturation value used for element coloring in % (0-100)"
79 L0X.RequiresDataType $(Float(unit="%",range=[0..100]))
80 SEL.HasDisplayValue _ : SEL.DisplayValue
81 L0.Literal.HasInputValidator DN.Functions.saturationValidator : L0.Function
82 >-- DN.Diagram.elementColoringFunction --> L0.String ==> "Resource -> <ReadGraph> Double" <R L0.HasProperty : SEL.GenericParameterType
83 L0.HasLabel "Element Color Brightness Function"
84 L0.HasDescription "Defines HSV/HSB color space brightness function whose value is cut off to fit [0,1]. Together with hue and saturation this defines the element color."
85 SEL.HasDisplayValue _ : SEL.DisplayValue
86 L0.Literal.HasInputValidator DN.Functions.brightnessValidator : L0.Function
87 >-- DN.Diagram.edgeThicknessGain ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
88 L0.HasLabel "Edge Thickness Gain"
89 >-- DN.Diagram.edgeThicknessBias ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
90 L0.HasLabel "Edge Thickness Bias"
91 >-- DN.Diagram.edgeThicknessProperty --> DN.Edge.ThicknessProperty <R L0.HasProperty : DN.EdgeThicknessPropertyParameterType
92 L0.HasLabel "Edge Thickness Property"
93 >-- DN.Diagram.arrowLengthGain ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
94 L0.HasLabel "Arrow Length Gain"
95 >-- DN.Diagram.arrowLengthBias ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
96 L0.HasLabel "Arrow Length Bias"
97 >-- DN.Diagram.arrowLengthProperty --> DN.Edge.ArrowLengthProperty <R L0.HasProperty : DN.ArrowLengthPropertyParameterType
98 L0.HasLabel "Arrow Length Property"
99 >-- DN.Diagram.nodeScaleGain ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
100 L0.HasLabel "Node Scale Gain"
101 >-- DN.Diagram.nodeScaleBias ==> "Double" <R L0.HasProperty : SEL.GenericParameterType
102 L0.HasLabel "Node Scale Bias"
103 >-- DN.Diagram.nodeScaleProperty --> DN.Vertex.ScaleProperty <R L0.HasProperty : DN.VertexScalePropertyParameterType
104 L0.HasLabel "Node Scale Property"
105 >-- DN.Diagram.backgroundColor --> DATATYPES.RGB.Integer <R L0.HasProperty : SEL.ColorParameterType
106 L0.HasLabel "Diagram Background Color"
107 >-- DN.Diagram.drawMapEnabled ==> "Boolean" <R L0.HasProperty : SEL.GenericParameterType
108 L0.HasLabel "Draw Map"
109 >-- DN.Diagram.profileUpdateInterval ==> "Long" <R L0.HasProperty : SEL.GenericParameterType
110 L0.HasLabel "Profile update interval"
111 @L0.assert DN.Diagram.elementColoringGradientHue
113 L0.HasDataType $(Float(unit="deg",range=[0..360]))
114 @L0.assert DN.Diagram.elementColoringGradientSaturation
116 L0.HasDataType $(Float(unit="%",range=[0..100]))
117 @MOD.sclAssertion DN.Diagram.elementColoringFunction "\r -> 1.0" "Resource -> <ReadGraph> Double"
118 @L0.assert DN.Diagram.edgeThicknessGain 1.0
119 @L0.assert DN.Diagram.edgeThicknessBias 0.0
120 @L0.assert DN.Diagram.edgeThicknessProperty DN.Edge.ThicknessProperty.Diameter
121 @L0.assert DN.Diagram.arrowLengthGain 1.0
122 @L0.assert DN.Diagram.arrowLengthBias 0.0
123 @L0.assert DN.Diagram.arrowLengthProperty DN.Edge.ArrowLengthProperty.FlowRate
124 @L0.assert DN.Diagram.nodeScaleGain 1.0
125 @L0.assert DN.Diagram.nodeScaleBias 0.0
126 @L0.assert DN.Diagram.nodeScaleProperty DN.Vertex.ScaleProperty.NominalSupplyPressure
127 @L0.assert DN.Diagram.drawMapEnabled true
128 @L0.assert DN.Diagram.profileUpdateInterval
131 // ----------------------------------------------------------------------------
132 // Built-in enumerated ScaleProperty & ThicknessProperty instances
134 DN.Functions.constantOne : L0.Function
135 L0.HasValueType "Resource -> <ReadGraph> Maybe Double"
137 DN.Functions.hasNominalMassFlowValue : L0.Function
138 L0.HasValueType "Resource -> <ReadGraph> Maybe Double"
140 DN.Edge.ThicknessProperty.OnlyGainAndBias: DN.Edge.ThicknessProperty
141 L0.HasLabel "Only Gain and Bias"
142 DN.Edge.ThicknessProperty.value
143 DN.Functions.constantOne
145 DN.Edge.ThicknessProperty.Diameter : DN.Edge.ThicknessProperty
146 L0.HasLabel "Diameter"
147 DN.Edge.ThicknessProperty.value
148 DN.Functions.hasDiameterValue : L0.Function
149 L0.HasValueType "Resource -> <ReadGraph> Maybe Double"
150 DN.Edge.ThicknessProperty.gain 0.001
152 DN.Edge.ThicknessProperty.FlowRate : DN.Edge.ThicknessProperty
153 L0.HasLabel "Nominal Mass Flow"
154 DN.Edge.ThicknessProperty.value
155 DN.Functions.hasNominalMassFlowValue
156 DN.Edge.ThicknessProperty.gain 0.1
158 DN.Edge.ArrowLengthProperty.FlowRate : DN.Edge.ArrowLengthProperty
159 L0.HasLabel "Nominal Mass Flow"
160 DN.Edge.ArrowLengthProperty.value
161 DN.Functions.hasNominalMassFlowValue
162 DN.Edge.ArrowLengthProperty.gain 1.0
164 DN.Vertex.ScaleProperty.OnlyGainAndBias: DN.Vertex.ScaleProperty
165 L0.HasLabel "Only Gain and Bias"
166 DN.Vertex.ScaleProperty.value
167 DN.Functions.constantOne
169 DN.Vertex.ScaleProperty.NominalSupplyPressure : DN.Vertex.ScaleProperty
170 L0.HasLabel "Nominal Supply Pressure"
171 DN.Vertex.ScaleProperty.value
172 DN.Functions.hasNominalSupplyPressure : L0.Function
173 L0.HasValueType "Resource -> <ReadGraph> Maybe Double"
174 DN.Vertex.ScaleProperty.gain 0.001
176 DN.Vertex.ScaleProperty.Elevation : DN.Vertex.ScaleProperty
177 L0.HasLabel "Elevation"
178 DN.Vertex.ScaleProperty.value
179 DN.Functions.hasElevation : L0.Function
180 L0.HasValueType "Resource -> <ReadGraph> Maybe Double"
181 DN.Vertex.ScaleProperty.gain 0.1
182 DN.Vertex.ScaleProperty.bias 0.001