597 lines
17 KiB
Plaintext
597 lines
17 KiB
Plaintext
{
|
|
"custom": {
|
|
"CRAC": [
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value"
|
|
],
|
|
"CRAH": [
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value"
|
|
],
|
|
"DH": [
|
|
5,
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value"
|
|
],
|
|
"DOAS": [
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value"
|
|
],
|
|
"FCU": [
|
|
"[Ignition_Common_IO_Gtwy]ER1128/SATB1_HS2_EL1128_FCU16"
|
|
],
|
|
"RTU": [
|
|
5,
|
|
"value",
|
|
"value"
|
|
],
|
|
"VAV": [
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value",
|
|
"value"
|
|
]
|
|
},
|
|
"params": {},
|
|
"propConfig": {
|
|
"custom.CRAC": {
|
|
"persistent": true
|
|
},
|
|
"custom.CRAH": {
|
|
"persistent": true
|
|
},
|
|
"custom.DH": {
|
|
"persistent": true
|
|
},
|
|
"custom.DOAS": {
|
|
"persistent": true
|
|
},
|
|
"custom.FCU": {
|
|
"persistent": true
|
|
},
|
|
"custom.RTU": {
|
|
"persistent": true
|
|
},
|
|
"custom.VAV": {
|
|
"persistent": true
|
|
}
|
|
},
|
|
"props": {
|
|
"defaultSize": {
|
|
"height": 900,
|
|
"width": 1155
|
|
}
|
|
},
|
|
"root": {
|
|
"children": [
|
|
{
|
|
"meta": {
|
|
"name": "FirstFloor_Layout_0"
|
|
},
|
|
"position": {
|
|
"height": 300,
|
|
"width": 1155
|
|
},
|
|
"props": {
|
|
"path": "Library/Templates/Graphics/Layout/Roof"
|
|
},
|
|
"type": "ia.display.view"
|
|
},
|
|
{
|
|
"meta": {
|
|
"name": "SecondFloor_Layout"
|
|
},
|
|
"position": {
|
|
"height": 300,
|
|
"width": 1155,
|
|
"y": 300
|
|
},
|
|
"propConfig": {
|
|
"props.params.DH[1]": {
|
|
"binding": {
|
|
"config": {
|
|
"struct": {
|
|
"key": "now(5000)\r\n"
|
|
},
|
|
"waitOnAll": true
|
|
},
|
|
"transforms": [
|
|
{
|
|
"code": "\timport random\n\trandom_integer \u003d random.randint(-90, 90)\n\toutput \u003d float(random_integer) / 10.0\n\treturn output",
|
|
"type": "script"
|
|
}
|
|
],
|
|
"type": "expr-struct"
|
|
}
|
|
},
|
|
"props.params.DH[2]": {
|
|
"binding": {
|
|
"config": {
|
|
"struct": {
|
|
"key": "now(5000)\r\n"
|
|
},
|
|
"waitOnAll": true
|
|
},
|
|
"transforms": [
|
|
{
|
|
"code": "\timport random\n\trandom_integer \u003d random.randint(-90, 90)\n\toutput \u003d float(random_integer) / 10.0\n\treturn output",
|
|
"type": "script"
|
|
}
|
|
],
|
|
"type": "expr-struct"
|
|
}
|
|
},
|
|
"props.params.DH[4]": {
|
|
"binding": {
|
|
"config": {
|
|
"struct": {
|
|
"key": "now(5000)\r\n"
|
|
},
|
|
"waitOnAll": true
|
|
},
|
|
"transforms": [
|
|
{
|
|
"code": "\timport random\n\trandom_integer \u003d random.randint(-90, 90)\n\toutput \u003d float(random_integer) / 10.0\n\treturn output",
|
|
"type": "script"
|
|
}
|
|
],
|
|
"type": "expr-struct"
|
|
}
|
|
}
|
|
},
|
|
"props": {
|
|
"params": {
|
|
"CRAH": [
|
|
-9,
|
|
0,
|
|
9
|
|
],
|
|
"DH": [
|
|
-5,
|
|
null,
|
|
null,
|
|
5,
|
|
null
|
|
],
|
|
"DOAS": [
|
|
1,
|
|
2,
|
|
3,
|
|
4
|
|
],
|
|
"FCU": [
|
|
-9,
|
|
-8,
|
|
-7,
|
|
-6,
|
|
-5,
|
|
-4,
|
|
-3,
|
|
-2,
|
|
-1,
|
|
0,
|
|
-5,
|
|
5,
|
|
-5,
|
|
5,
|
|
-5,
|
|
5,
|
|
-5,
|
|
5,
|
|
-5,
|
|
5,
|
|
-5,
|
|
5
|
|
],
|
|
"RTU": [
|
|
-1,
|
|
-2,
|
|
-3
|
|
]
|
|
},
|
|
"path": "Library/Templates/Graphics/Layout/SecondFloor"
|
|
},
|
|
"type": "ia.display.view"
|
|
},
|
|
{
|
|
"meta": {
|
|
"name": "FirstFloor_Layout"
|
|
},
|
|
"position": {
|
|
"height": 300,
|
|
"width": 1155,
|
|
"y": 600
|
|
},
|
|
"propConfig": {
|
|
"props.params.DH[3]": {
|
|
"binding": {
|
|
"config": {
|
|
"struct": {
|
|
"key": "now(5000)\r\n"
|
|
},
|
|
"waitOnAll": true
|
|
},
|
|
"transforms": [
|
|
{
|
|
"code": "\timport random\n\trandom_integer \u003d random.randint(-90, 90)\n\toutput \u003d float(random_integer) / 10.0\n\treturn output",
|
|
"type": "script"
|
|
}
|
|
],
|
|
"type": "expr-struct"
|
|
}
|
|
},
|
|
"props.params.DH[5]": {
|
|
"binding": {
|
|
"config": {
|
|
"struct": {
|
|
"key": "now(5000)\r\n"
|
|
},
|
|
"waitOnAll": true
|
|
},
|
|
"transforms": [
|
|
{
|
|
"code": "\timport random\n\trandom_integer \u003d random.randint(-90, 90)\n\toutput \u003d float(random_integer) / 10.0\n\treturn output",
|
|
"type": "script"
|
|
}
|
|
],
|
|
"type": "expr-struct"
|
|
}
|
|
}
|
|
},
|
|
"props": {
|
|
"params": {
|
|
"CRAC": [
|
|
4,
|
|
1,
|
|
2,
|
|
3,
|
|
4
|
|
],
|
|
"CRAH": [
|
|
0,
|
|
1,
|
|
2,
|
|
3,
|
|
4
|
|
],
|
|
"DH": [
|
|
4.1,
|
|
3.4,
|
|
6.7,
|
|
null,
|
|
3.6,
|
|
null
|
|
],
|
|
"DOAS": [
|
|
0,
|
|
1,
|
|
2,
|
|
3
|
|
],
|
|
"FCU": [
|
|
-9,
|
|
-8,
|
|
-7,
|
|
-6,
|
|
-5,
|
|
-4,
|
|
-3,
|
|
-2,
|
|
-1,
|
|
0,
|
|
1,
|
|
2,
|
|
3,
|
|
4,
|
|
5,
|
|
6,
|
|
7,
|
|
8,
|
|
9,
|
|
8,
|
|
7,
|
|
6,
|
|
5
|
|
],
|
|
"VAV": [
|
|
0,
|
|
1,
|
|
2,
|
|
3,
|
|
4,
|
|
5,
|
|
6,
|
|
7,
|
|
8,
|
|
9,
|
|
8,
|
|
7,
|
|
6,
|
|
5,
|
|
4,
|
|
3,
|
|
2,
|
|
1,
|
|
-1,
|
|
-2,
|
|
-3,
|
|
-4,
|
|
-5,
|
|
-6,
|
|
-7,
|
|
-8,
|
|
-9,
|
|
-8,
|
|
0,
|
|
1,
|
|
-5,
|
|
4,
|
|
5,
|
|
6,
|
|
7
|
|
]
|
|
},
|
|
"path": "Library/Templates/Graphics/Layout/FirstFloor"
|
|
},
|
|
"type": "ia.display.view"
|
|
},
|
|
{
|
|
"meta": {
|
|
"name": "Label"
|
|
},
|
|
"position": {
|
|
"height": 32,
|
|
"width": 81,
|
|
"x": 64.99000000000001,
|
|
"y": 384
|
|
},
|
|
"props": {
|
|
"text": "DH4",
|
|
"textStyle": {
|
|
"fontSize": 24,
|
|
"fontWeight": "bold"
|
|
}
|
|
},
|
|
"type": "ia.display.label"
|
|
},
|
|
{
|
|
"meta": {
|
|
"name": "Label_0"
|
|
},
|
|
"position": {
|
|
"height": 32,
|
|
"width": 81,
|
|
"x": 403,
|
|
"y": 384
|
|
},
|
|
"props": {
|
|
"text": "DH2",
|
|
"textStyle": {
|
|
"fontSize": 24,
|
|
"fontWeight": "bold"
|
|
}
|
|
},
|
|
"type": "ia.display.label"
|
|
},
|
|
{
|
|
"custom": {
|
|
"VAV": "VAV 1-01 HC",
|
|
"Zone_Status": 2,
|
|
"area": "Department 2",
|
|
"dept": 0,
|
|
"isDept": true
|
|
},
|
|
"events": {
|
|
"dom": {
|
|
"onClick": {
|
|
"config": {
|
|
"script": "\t# Call the root container\u0027s openDetailsPanel method to open the vav details\n\t# side panel, passing in vav name, bool denoting area/dept, and area/dept name.\n\t\n\tvav \u003d self.custom.VAV\n\tarea \u003d self.custom.area\n\tisDept \u003d self.custom.isDept\n\t\n\tself.parent.openDetailsPanel(vav,area,isDept)"
|
|
},
|
|
"scope": "G",
|
|
"type": "script"
|
|
},
|
|
"onMouseEnter": {
|
|
"config": {
|
|
"script": "\t# Set hover custom property equal to vav name. Then, binding on fill color\n\t# for this zone will set the color to be a little darker.\n\t\n\tself.parent.custom.hover \u003d self.custom.VAV"
|
|
},
|
|
"scope": "G",
|
|
"type": "script"
|
|
},
|
|
"onMouseLeave": {
|
|
"config": {
|
|
"script": "\t# Clear out hover custom property. Then, binding on fill color\n\t# for this zone will set back to the original color (color before\n\t# it was darkened).\n\t\n\tself.parent.custom.hover \u003d \u0027\u0027"
|
|
},
|
|
"scope": "G",
|
|
"type": "script"
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"name": "SV_Example",
|
|
"tooltip": {
|
|
"delay": 800,
|
|
"enabled": true,
|
|
"style": {
|
|
"backgroundColor": "var(--neutral-30)",
|
|
"color": "var(--neutral-100)"
|
|
}
|
|
},
|
|
"visible": false
|
|
},
|
|
"position": {
|
|
"height": 75,
|
|
"rotate": {
|
|
"anchor": "685% 167%"
|
|
},
|
|
"width": 222,
|
|
"x": 34.984375,
|
|
"y": 16
|
|
},
|
|
"propConfig": {
|
|
"custom.Zone_Status": {
|
|
"binding": {
|
|
"config": {
|
|
"expression": "if({session.custom.FloorColorFromDesiredSP}\u003dtrue,tag(\u0027BMS/90BR/VAV/\u0027 + {this.custom.VAV} + \u0027/Temp_Zone\u0027)-tag(\u0027BMS/90BR/VAV/\u0027 + {this.custom.VAV} + \u0027/Temp_SP_Desired\u0027),\r\ntag(\u0027BMS/90BR/VAV/\u0027 + {this.custom.VAV} + \u0027/Temp_Zone\u0027)-74)"
|
|
},
|
|
"enabled": false,
|
|
"type": "expr"
|
|
}
|
|
},
|
|
"meta.tooltip.text": {
|
|
"binding": {
|
|
"config": {
|
|
"path": "this.custom.VAV"
|
|
},
|
|
"type": "property"
|
|
}
|
|
},
|
|
"props.elements[0].style.fill": {
|
|
"binding": {
|
|
"config": {
|
|
"struct": {
|
|
"color": "// three possible color schemes\r\n\r\nif({session.custom.ColorScheme}\u003d0,\r\nif({this.custom.Zone_Status}\u003c\u003d-4, gradient({this.custom.Zone_Status},-8,-4,color(0,72,200),color(0,82,255)),\r\nif({this.custom.Zone_Status}\u003c\u003d-3, gradient({this.custom.Zone_Status},-4,-3,color(0,82,255),color(11,150,255)),\r\nif({this.custom.Zone_Status}\u003c\u003d-2, gradient({this.custom.Zone_Status},-3,-2,color(11,150,255),color(138,255,255)),\r\nif({this.custom.Zone_Status}\u003c\u003d2, gradient({this.custom.Zone_Status},-2,2,color(85,194,48),color(255,255,138)),\r\nif({this.custom.Zone_Status}\u003c\u003d3, gradient({this.custom.Zone_Status},2,3,color(255,255,138),color(255,172,71)),\r\nif({this.custom.Zone_Status}\u003c\u003d4, gradient({this.custom.Zone_Status},3,4,color(255,172,71),color(255,71,71)),\r\ngradient({this.custom.Zone_Status},4,8,color(255,71,71),color(200,71,71))\r\n)))))),\r\n\r\nif({session.custom.ColorScheme}\u003d1,\r\nif({this.custom.Zone_Status}\u003c\u003d-4, gradient({this.custom.Zone_Status},-8,-4,color(18,60,142),color(44,103,212)),\r\nif({this.custom.Zone_Status}\u003c\u003d-3, gradient({this.custom.Zone_Status},-4,-3,color(44,103,212),color(121,168,249)),\r\nif({this.custom.Zone_Status}\u003c\u003d-2, gradient({this.custom.Zone_Status},-3,-2,color(121,168,249),color(238,243,252)),\r\nif({this.custom.Zone_Status}\u003c\u003d-1, gradient({this.custom.Zone_Status},-2,-1,color(238,243,252),color(250,250,250)),\r\nif({this.custom.Zone_Status}\u003c\u003d2, gradient({this.custom.Zone_Status},-1,2,color(250,250,250),color(249,206,206)),\r\nif({this.custom.Zone_Status}\u003c\u003d3, gradient({this.custom.Zone_Status},2,3,color(249,206,206),color(249,131,131)),\r\nif({this.custom.Zone_Status}\u003c\u003d4, gradient({this.custom.Zone_Status},3,4,color(249,131,131),color(217,26,26)),\r\ngradient({this.custom.Zone_Status},4,8,color(217,26,26),color(132,16,16))\r\n))))))),\r\n\r\nif({this.custom.Zone_Status}\u003c\u003d-4, gradient({this.custom.Zone_Status},-8,-4,color(89,38,147),color(139,76,208)),\r\nif({this.custom.Zone_Status}\u003c\u003d-3, gradient({this.custom.Zone_Status},-4,-3,color(139,76,208),color(192,144,240)),\r\nif({this.custom.Zone_Status}\u003c\u003d-2, gradient({this.custom.Zone_Status},-3,-2,color(192,144,240),color(231,212,249)),\r\nif({this.custom.Zone_Status}\u003c\u003d-1, gradient({this.custom.Zone_Status},-2,-1,color(231,212,249),color(250,250,250)),\r\nif({this.custom.Zone_Status}\u003c\u003d2, gradient({this.custom.Zone_Status},-1,2,color(250,250,250),color(120,240,232)),\r\nif({this.custom.Zone_Status}\u003c\u003d3, gradient({this.custom.Zone_Status},2,3,color(120,240,232),color(30,186,174)),\r\nif({this.custom.Zone_Status}\u003c\u003d4, gradient({this.custom.Zone_Status},3,4,color(30,186,174),color(12,119,111)),\r\ngradient({this.custom.Zone_Status},4,8,color(12,119,111),color(13,72,68))\r\n)))))))))",
|
|
"hover": "{parent.custom.hover}\u003d{this.custom.VAV}"
|
|
},
|
|
"waitOnAll": true
|
|
},
|
|
"transforms": [
|
|
{
|
|
"code": "\t# Darken the zone if the user hovered mouse over the zone.\n\t\n\tif value[\u0027hover\u0027] \u003d\u003d True:\n\t\tcolor \u003d value[\u0027color\u0027].darker()\n\telse:\n\t\tcolor \u003d value[\u0027color\u0027]\n\t\t\n\treturn \u0027rgb(\u0027 + str(color.getRed()) + \u0027,\u0027 + str(color.getGreen()) + \u0027,\u0027 + str(color.getBlue()) + \u0027)\u0027",
|
|
"type": "script"
|
|
}
|
|
],
|
|
"type": "expr-struct"
|
|
}
|
|
}
|
|
},
|
|
"props": {
|
|
"elements": [
|
|
{
|
|
"elements": [
|
|
{
|
|
"height": "100%",
|
|
"style": {},
|
|
"type": "rect",
|
|
"width": "100%",
|
|
"x": 0,
|
|
"y": 0
|
|
}
|
|
],
|
|
"style": {
|
|
"classes": "",
|
|
"transition": "fill 0.25s ease"
|
|
},
|
|
"type": "group"
|
|
}
|
|
],
|
|
"preserveAspectRatio": "none",
|
|
"style": {
|
|
"borderRightColor": "#000000",
|
|
"borderRightStyle": "solid",
|
|
"borderRightWidth": "0.5px",
|
|
"cursor": "pointer"
|
|
},
|
|
"viewBox": "0 0 100 100"
|
|
},
|
|
"type": "ia.shapes.svg"
|
|
},
|
|
{
|
|
"meta": {
|
|
"name": "Label_1"
|
|
},
|
|
"position": {
|
|
"height": 32,
|
|
"width": 81,
|
|
"x": 739,
|
|
"y": 384
|
|
},
|
|
"props": {
|
|
"text": "DH1",
|
|
"textStyle": {
|
|
"fontSize": 24,
|
|
"fontWeight": "bold"
|
|
}
|
|
},
|
|
"type": "ia.display.label"
|
|
},
|
|
{
|
|
"meta": {
|
|
"name": "Label_2"
|
|
},
|
|
"position": {
|
|
"height": 32,
|
|
"width": 81,
|
|
"x": 64.99,
|
|
"y": 683
|
|
},
|
|
"props": {
|
|
"text": "DH5",
|
|
"textStyle": {
|
|
"fontSize": 24,
|
|
"fontWeight": "bold"
|
|
}
|
|
},
|
|
"type": "ia.display.label"
|
|
},
|
|
{
|
|
"meta": {
|
|
"name": "Label_3"
|
|
},
|
|
"position": {
|
|
"height": 32,
|
|
"width": 81,
|
|
"x": 403,
|
|
"y": 683
|
|
},
|
|
"props": {
|
|
"text": "DH3",
|
|
"textStyle": {
|
|
"fontSize": 24,
|
|
"fontWeight": "bold"
|
|
}
|
|
},
|
|
"type": "ia.display.label"
|
|
}
|
|
],
|
|
"custom": {
|
|
"hover": ""
|
|
},
|
|
"meta": {
|
|
"name": "root"
|
|
},
|
|
"position": {
|
|
"x": 82,
|
|
"y": -52
|
|
},
|
|
"type": "ia.container.coord"
|
|
}
|
|
} |