Доработка. В процессе. Разделить прибор РТР на два АФСП

This commit is contained in:
sasha80
2025-05-05 14:25:05 +03:00
parent 0b62e0bab9
commit 6c6631b87f
11 changed files with 188 additions and 93 deletions

View File

@@ -0,0 +1,897 @@
[gd_scene load_steps=6 format=3 uid="uid://dnxq870xf6pkh"]
[ext_resource type="Texture2D" uid="uid://c4mdrmk7h638f" path="res://data/nine-patch-round.png" id="1_pfrxy"]
[ext_resource type="PackedScene" uid="uid://7ps8s0jd2bdr" path="res://scenes/контроль/блок-б.tscn" id="2_dmhrm"]
[ext_resource type="PackedScene" uid="uid://bkxblfoj7ejv0" path="res://scenes/контроль/блок-а.tscn" id="3_5ikxk"]
[ext_resource type="PackedScene" uid="uid://d3iqb5e4g81m5" path="res://scenes/контроль/элемент-г.tscn" id="4_mtf2n"]
[sub_resource type="GDScript" id="GDScript_y4aoq"]
script/source = "extends Control
signal pressed(control: PanelContainer)
func _on_item_pressed(control): emit_signal('pressed', control)
"
[node name="bort_rtr" type="Control"]
layout_mode = 3
anchors_preset = 0
offset_right = 580.0
offset_bottom = 1230.0
script = SubResource("GDScript_y4aoq")
[node name="konverter" type="NinePatchRect" parent="."]
layout_mode = 0
offset_left = 1.0
offset_top = 966.0
offset_right = 581.0
offset_bottom = 1230.0
texture = ExtResource("1_pfrxy")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="lbl_fname" type="Label" parent="konverter"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 5.0
offset_top = 5.0
offset_right = 575.0
offset_bottom = 25.0
text = "Конвертер 1000...6000 МГц"
horizontal_alignment = 1
vertical_alignment = 1
[node name="grid" type="GridContainer" parent="konverter"]
layout_mode = 2
offset_left = 10.0
offset_top = 25.0
offset_right = 570.0
offset_bottom = 257.0
columns = 4
[node name="kanal1" parent="konverter/grid" instance=ExtResource("2_dmhrm")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Канал №1 конвертера 1000...6000 МГц"
value0 = 24.0
value1 = 10.0
min_value0 = 10.0
min_value1 = 15.0
max_value0 = 35.0
max_value1 = 30.0
step0 = 1.0
step1 = 1.0
value_name0 = "t, °C"
value_name1 = "U, В"
value_name2 = "CAN"
name_min_size0 = Vector2i(35, 20)
name_min_size1 = Vector2i(35, 20)
name_min_size2 = Vector2i(35, 20)
fname = "Канал 1"
metadata/value0 = "SelfTest[1].SystemList[1].DeviceList[0].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[2].SystemList[1].DevList[0].TestedParamList[0]['CurrentValue']"
metadata/value2 = "SelfTest[0].SystemList[1].DeviceList[0]['TestPassed']"
metadata/state = ["SelfTest[0].SystemList[1].DeviceList[0]['TestPassed']", "SelfTest[1].SystemList[1].DeviceList[0]['TestPassed']", "SelfTest[2].SystemList[1].DevList[0]['TestPassed']"]
[node name="kanal2" parent="konverter/grid" instance=ExtResource("2_dmhrm")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Канал №2 конвертера 1000...6000 МГц"
value0 = 24.0
value1 = 27.0
min_value0 = 10.0
min_value1 = 15.0
max_value0 = 35.0
max_value1 = 30.0
step0 = 1.0
step1 = 1.0
value_name0 = "t, °C"
value_name1 = "U, В"
value_name2 = "CAN"
name_min_size0 = Vector2i(35, 20)
name_min_size1 = Vector2i(35, 20)
name_min_size2 = Vector2i(35, 20)
fname = "Канал 2"
metadata/value0 = "SelfTest[1].SystemList[1].DeviceList[1].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[2].SystemList[1].DevList[1].TestedParamList[0]['CurrentValue']"
metadata/value2 = "SelfTest[0].SystemList[1].DeviceList[1]['TestPassed']"
metadata/state = ["SelfTest[0].SystemList[1].DeviceList[1]['TestPassed']", "SelfTest[1].SystemList[1].DeviceList[1]['TestPassed']", "SelfTest[2].SystemList[1].DevList[1]['TestPassed']"]
[node name="kanal3" parent="konverter/grid" instance=ExtResource("2_dmhrm")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Канал №3 конвертера 1000...6000 МГц"
value0 = 24.0
value1 = 27.0
min_value0 = 10.0
min_value1 = 15.0
max_value0 = 35.0
max_value1 = 30.0
step0 = 1.0
step1 = 1.0
value_name0 = "t, °C"
value_name1 = "U, В"
value_name2 = "CAN"
name_min_size0 = Vector2i(35, 20)
name_min_size1 = Vector2i(35, 20)
name_min_size2 = Vector2i(35, 20)
fname = "Канал 3"
metadata/value0 = "SelfTest[1].SystemList[1].DeviceList[2].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[2].SystemList[1].DevList[2].TestedParamList[0]['CurrentValue']"
metadata/value2 = "SelfTest[0].SystemList[1].DeviceList[2]['TestPassed']"
metadata/state = ["SelfTest[0].SystemList[1].DeviceList[2]['TestPassed']", "SelfTest[1].SystemList[1].DeviceList[2]['TestPassed']", "SelfTest[2].SystemList[1].DevList[2]['TestPassed']"]
[node name="kanal4" parent="konverter/grid" instance=ExtResource("2_dmhrm")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Канал №4 конвертера 1000...6000 МГц"
value0 = 24.0
value1 = 27.0
min_value0 = 10.0
min_value1 = 15.0
max_value0 = 35.0
max_value1 = 30.0
step0 = 1.0
step1 = 1.0
value_name0 = "t, °C"
value_name1 = "U, В"
value_name2 = "CAN"
name_min_size0 = Vector2i(35, 20)
name_min_size1 = Vector2i(35, 20)
name_min_size2 = Vector2i(35, 20)
fname = "Канал 4"
metadata/value0 = "SelfTest[1].SystemList[1].DeviceList[3].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[2].SystemList[1].DevList[3].TestedParamList[0]['CurrentValue']"
metadata/value2 = "SelfTest[0].SystemList[1].DeviceList[3]['TestPassed']"
metadata/state = ["SelfTest[0].SystemList[1].DeviceList[3]['TestPassed']", "SelfTest[1].SystemList[1].DeviceList[3]['TestPassed']", "SelfTest[2].SystemList[1].DevList[3]['TestPassed']"]
[node name="kanal5" parent="konverter/grid" instance=ExtResource("2_dmhrm")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Канал №5 конвертера 1000...6000 МГц"
value0 = 24.0
value1 = 27.0
min_value0 = 10.0
min_value1 = 15.0
max_value0 = 35.0
max_value1 = 30.0
step0 = 1.0
step1 = 1.0
value_name0 = "t, °C"
value_name1 = "U, В"
value_name2 = "CAN"
name_min_size0 = Vector2i(35, 20)
name_min_size1 = Vector2i(35, 20)
name_min_size2 = Vector2i(35, 20)
fname = "Канал 5"
metadata/value0 = "SelfTest[1].SystemList[1].DeviceList[4].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[2].SystemList[1].DevList[4].TestedParamList[0]['CurrentValue']"
metadata/value2 = "SelfTest[0].SystemList[1].DeviceList[4]['TestPassed']"
metadata/state = ["SelfTest[0].SystemList[1].DeviceList[4]['TestPassed']", "SelfTest[1].SystemList[1].DeviceList[4]['TestPassed']", "SelfTest[2].SystemList[1].DevList[4]['TestPassed']"]
[node name="kanal6" parent="konverter/grid" instance=ExtResource("2_dmhrm")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Канал №6 конвертера 1000...6000 МГц"
value0 = 24.0
value1 = 27.0
min_value0 = 10.0
min_value1 = 15.0
max_value0 = 35.0
max_value1 = 30.0
step0 = 1.0
step1 = 1.0
value_name0 = "t, °C"
value_name1 = "U, В"
value_name2 = "CAN"
name_min_size0 = Vector2i(35, 20)
name_min_size1 = Vector2i(35, 20)
name_min_size2 = Vector2i(35, 20)
fname = "Канал 6"
metadata/value0 = "SelfTest[1].SystemList[1].DeviceList[5].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[2].SystemList[1].DevList[5].TestedParamList[0]['CurrentValue']"
metadata/value2 = "SelfTest[0].SystemList[1].DeviceList[5]['TestPassed']"
metadata/state = ["SelfTest[0].SystemList[1].DeviceList[5]['TestPassed']", "SelfTest[1].SystemList[1].DeviceList[5]['TestPassed']", "SelfTest[2].SystemList[1].DevList[5]['TestPassed']"]
[node name="kanal7" parent="konverter/grid" instance=ExtResource("2_dmhrm")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Канал №7 конвертера 1000...6000 МГц"
value0 = 24.0
value1 = 27.0
min_value0 = 10.0
min_value1 = 15.0
max_value0 = 35.0
max_value1 = 30.0
step0 = 1.0
step1 = 1.0
value_name0 = "t, °C"
value_name1 = "U, В"
value_name2 = "CAN"
name_min_size0 = Vector2i(35, 20)
name_min_size1 = Vector2i(35, 20)
name_min_size2 = Vector2i(35, 20)
fname = "Канал 7"
metadata/value0 = "SelfTest[1].SystemList[1].DeviceList[6].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[2].SystemList[1].DevList[6].TestedParamList[0]['CurrentValue']"
metadata/value2 = "SelfTest[0].SystemList[1].DeviceList[6]['TestPassed']"
metadata/state = ["SelfTest[0].SystemList[1].DeviceList[6]['TestPassed']", "SelfTest[1].SystemList[1].DeviceList[6]['TestPassed']", "SelfTest[2].SystemList[1].DevList[6]['TestPassed']"]
[node name="kanal8" parent="konverter/grid" instance=ExtResource("2_dmhrm")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Канал №8 конвертера 1000...6000 МГц"
value0 = 24.0
value1 = 27.0
min_value0 = 10.0
min_value1 = 15.0
max_value0 = 35.0
max_value1 = 30.0
step0 = 1.0
step1 = 1.0
value_name0 = "t, °C"
value_name1 = "U, В"
value_name2 = "CAN"
name_min_size0 = Vector2i(35, 20)
name_min_size1 = Vector2i(35, 20)
name_min_size2 = Vector2i(35, 20)
fname = "Канал 8"
metadata/value0 = "SelfTest[1].SystemList[1].DeviceList[7].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[2].SystemList[1].DevList[7].TestedParamList[0]['CurrentValue']"
metadata/value2 = "SelfTest[0].SystemList[1].DeviceList[7]['TestPassed']"
metadata/state = ["SelfTest[0].SystemList[1].DeviceList[7]['TestPassed']", "SelfTest[1].SystemList[1].DeviceList[7]['TestPassed']", "SelfTest[2].SystemList[1].DevList[7]['TestPassed']"]
[node name="antenna1" type="NinePatchRect" parent="."]
layout_mode = 0
offset_top = 156.0
offset_right = 581.0
offset_bottom = 561.0
texture = ExtResource("1_pfrxy")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="lbl_fname" type="Label" parent="antenna1"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 5.0
offset_top = 5.0
offset_right = 575.0
offset_bottom = 25.0
text = "Антенна 400...1000 МГц"
horizontal_alignment = 1
vertical_alignment = 1
[node name="grid" type="GridContainer" parent="antenna1"]
layout_mode = 2
offset_left = 10.0
offset_top = 25.0
offset_right = 570.0
offset_bottom = 397.0
columns = 4
[node name="yelement1" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №1 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 1"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[0].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[0].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[0]['TestPassed']"]
[node name="yelement2" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №2 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 2"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[1].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[1].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[1]['TestPassed']"]
[node name="yelement3" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №3 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 3"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[2].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[2].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[2]['TestPassed']"]
[node name="yelement4" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №4 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 4"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[3].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[3].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[3]['TestPassed']"]
[node name="yelement5" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №5 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 5"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[4].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[4].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[4]['TestPassed']"]
[node name="yelement6" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №6 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 6"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[5].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[5].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[5]['TestPassed']"]
[node name="yelement7" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №7 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 7"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[6].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[6].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[6]['TestPassed']"]
[node name="yelement8" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №8 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 8"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[7].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[7].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[7]['TestPassed']"]
[node name="yelement9" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №9 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 9"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[8].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[8].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[8]['TestPassed']"]
[node name="yelement10" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №10 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 10"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[9].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[9].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[9]['TestPassed']"]
[node name="yelement11" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №11 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 11"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[10].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[10].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[10]['TestPassed']"]
[node name="yelement12" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №12 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 12"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[11].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[11].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[11]['TestPassed']"]
[node name="yelement13" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №13 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 13"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[12].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[12].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[12]['TestPassed']"]
[node name="yelement14" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №14 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 14"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[13].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[13].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[13]['TestPassed']"]
[node name="yelement15" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №15 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 15"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[14].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[14].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[14]['TestPassed']"]
[node name="yelement16" parent="antenna1/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №16 диапазона 400...1000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 16"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[0].DevList[15].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[0].DevList[15].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[0].DevList[15]['TestPassed']"]
[node name="antenna2" type="NinePatchRect" parent="."]
layout_mode = 0
offset_top = 561.0
offset_right = 580.0
offset_bottom = 966.0
texture = ExtResource("1_pfrxy")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="lbl_fname" type="Label" parent="antenna2"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 5.0
offset_top = 5.0
offset_right = 575.0
offset_bottom = 25.0
text = "Антенна 1000...6000 МГц"
horizontal_alignment = 1
vertical_alignment = 1
[node name="grid" type="GridContainer" parent="antenna2"]
layout_mode = 2
offset_left = 10.0
offset_top = 25.0
offset_right = 570.0
offset_bottom = 397.0
columns = 4
[node name="yelement1" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №1 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 1"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[0].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[0].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[0]['TestPassed']"]
[node name="yelement2" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №2 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 2"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[1].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[1].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[1]['TestPassed']"]
[node name="yelement3" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №3 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 3"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[2].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[2].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[2]['TestPassed']"]
[node name="yelement4" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №4 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 4"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[3].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[3].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[3]['TestPassed']"]
[node name="yelement5" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №5 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 5"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[4].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[4].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[4]['TestPassed']"]
[node name="yelement6" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №6 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 6"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[5].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[5].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[5]['TestPassed']"]
[node name="yelement7" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №8 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 7"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[6].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[6].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[6]['TestPassed']"]
[node name="yelement8" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №8 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 8"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[7].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[7].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[7]['TestPassed']"]
[node name="yelement9" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №9 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 9"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[8].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[8].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[8]['TestPassed']"]
[node name="yelement10" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №10 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 10"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[9].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[9].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[9]['TestPassed']"]
[node name="yelement11" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №11 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 11"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[10].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[10].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[10]['TestPassed']"]
[node name="yelement12" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №12 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 12"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[11].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[11].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[11]['TestPassed']"]
[node name="yelement13" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №13 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 13"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[12].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[12].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[12]['TestPassed']"]
[node name="yelement14" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №14 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 14"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[13].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[13].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[13]['TestPassed']"]
[node name="yelement15" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №15 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 15"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[14].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[14].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[14]['TestPassed']"]
[node name="yelement16" parent="antenna2/grid" instance=ExtResource("3_5ikxk")]
layout_mode = 2
size_flags_horizontal = 7
size_flags_vertical = 7
tooltip_text = "Антенный элемент №16 диапазона 1000...6000 МГц"
min_value0 = 10.0
max_value0 = 15.0
max_value1 = 10.0
value_name0 = "А"
value_name1 = "φ"
fname = "Элемент 16"
metadata/value0 = "SelfTest[3].SystemList[0].SystemList[1].DevList[15].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[3].SystemList[0].SystemList[1].DevList[15].TestedParamList[1]['CurrentValue']"
metadata/state = ["SelfTest[3].SystemList[0].SystemList[1].DevList[15]['TestPassed']"]
[node name="adc" parent="." instance=ExtResource("4_mtf2n")]
layout_mode = 0
offset_top = 114.0
offset_right = 290.0
offset_bottom = 156.0
tooltip_text = "Плата АЦП ADCS500"
fname = "АЦП"
metadata/state = ["SelfTest[4].SystemList[0].DevList[1]['TestPassed']"]
[node name="dsp" parent="." instance=ExtResource("4_mtf2n")]
layout_mode = 0
offset_left = 290.0
offset_top = 114.0
offset_right = 581.0
offset_bottom = 156.0
tooltip_text = "Плата цифровой обработки сигналов BPL"
fname = "Сигнальный процессор"
metadata/state = ["SelfTest[4].SystemList[0].DevList[0]['TestPassed']"]
[node name="gen" parent="." instance=ExtResource("2_dmhrm")]
layout_mode = 2
offset_right = 290.0
offset_bottom = 114.0
tooltip_text = "Тестовый генератор"
min_value0 = -45.0
min_value1 = 20.0
max_value0 = 60.0
max_value1 = 30.0
value_name0 = "t, °C"
value_name1 = "U, В"
value_name2 = "CAN"
name_min_size0 = Vector2i(35, 20)
name_min_size1 = Vector2i(35, 20)
name_min_size2 = Vector2i(35, 20)
fname = "Генератор"
metadata/value0 = "SelfTest[1].SystemList[2].DeviceList[0].TestedParamList[0]['CurrentValue']"
metadata/value1 = "SelfTest[2].SystemList[2].DevList[0].TestedParamList[0]['CurrentValue']"
metadata/state = ["SelfTest[0].SystemList[2].DeviceList[0]['TestPassed']"]
[node name="rpu" parent="." instance=ExtResource("2_dmhrm")]
layout_mode = 2
offset_left = 290.0
offset_right = 580.0
offset_bottom = 114.0
tooltip_text = "Восьмиканальное прёмное устройство 20 ...1000 МГц"
min_value0 = 10.0
min_value1 = 5.0
max_value0 = 35.0
max_value1 = 20.0
value_name0 = "t, °C"
value_name1 = "U, В"
value_name2 = "CAN"
name_min_size0 = Vector2i(35, 20)
name_min_size1 = Vector2i(35, 20)
name_min_size2 = Vector2i(35, 20)
fname = "Приёмник 20...1000 МГц"
metadata/value0 = "SelfTest[1].SystemList[0].DeviceList[0]['TestPassed']"
metadata/value1 = "SelfTest[2].SystemList[0].DevList[0]['TestPassed']"
metadata/state = ["SelfTest[0].SystemList[0].DeviceList[0]['TestPassed']"]
[connection signal="pressed" from="konverter/grid/kanal1" to="." method="_on_item_pressed"]
[connection signal="pressed" from="konverter/grid/kanal2" to="." method="_on_item_pressed"]
[connection signal="pressed" from="konverter/grid/kanal3" to="." method="_on_item_pressed"]
[connection signal="pressed" from="konverter/grid/kanal4" to="." method="_on_item_pressed"]
[connection signal="pressed" from="konverter/grid/kanal5" to="." method="_on_item_pressed"]
[connection signal="pressed" from="konverter/grid/kanal6" to="." method="_on_item_pressed"]
[connection signal="pressed" from="konverter/grid/kanal7" to="." method="_on_item_pressed"]
[connection signal="pressed" from="konverter/grid/kanal8" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement1" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement2" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement3" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement4" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement5" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement6" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement7" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement8" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement9" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement10" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement11" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement12" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement13" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement14" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement15" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna1/grid/yelement16" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement1" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement2" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement3" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement4" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement5" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement6" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement7" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement8" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement9" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement10" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement11" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement12" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement13" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement14" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement15" to="." method="_on_item_pressed"]
[connection signal="pressed" from="antenna2/grid/yelement16" to="." method="_on_item_pressed"]
[connection signal="pressed" from="adc" to="." method="_on_item_pressed"]
[connection signal="pressed" from="dsp" to="." method="_on_item_pressed"]
[connection signal="pressed" from="gen" to="." method="_on_item_pressed"]
[connection signal="pressed" from="rpu" to="." method="_on_item_pressed"]

View File

@@ -0,0 +1,135 @@
class_name pribor_afsp extends 'res://scenes/контроль/прибор.gd'
@export var prefix_path: String = ''
static var json_conv: JSON = JSON.new()
## Преобразует путь в виде целой строки в массив отдельных элементов пути.[br]
## [param solid] - Входная строка содержащая путь, которая имеет следующий примерный вид:[br]
## [code]SelfTest[1].DevList[2]['CurrentValue'][/code][br]
## [param paths] - Массив содержащий отдельные элементы пути.[br]
## [param tokens] - Разделители используемые во входной строке для разделения элементов пути.[br]
func map_solid_to_array(solid: String, paths: Array, tokens: Array = ['[', ']', '.']) -> void:
paths.clear()
var i_chs = []
for sep in tokens:
var i = 0
while i != -1:
i = solid.find(sep, i + 1)
i_chs.append(i)
i_chs.pop_back()
i_chs.sort()
var i0 = 0
for i1 in i_chs:
var ss: = [String()]
tools.get_string_slice(solid, ss, i0, i1)
if ss[0].is_valid_int():
paths.append(ss[0].to_int())
else:
if ss[0]:
paths.append(ss[0])
i0 = i1 + 1
func _on_request_rtr_request_completed(result, _response_code, headers, body: PackedByteArray):
if result != 0:
var rs = $request_rtr.get_result_string(result)
log.error('\"%s\"' % rs)
return
var json_str: String = body.get_string_from_utf8()
if not json_str:
push_error('не удаётся получить строку utf8 из данных (%s)' % headers)
return
var rc = json_conv.parse(json_str)
if rc != Error.OK:
var err = json_conv.get_error_message()
push_error('разбор json прерван - \"%s\" (%s)' % [err, headers])
return
var pp = ['DeviceDescripton', 'DeviceName']
var ppp = []
map_solid_to_array(prefix_path, ppp)
var ret_val = [null, false, 0]
var pp_copy = pp.duplicate(true)
tools.get_value_by_path(json_conv.data, pp, ret_val)
if not ret_val[1]:
push_error('путь %s не найден (%s)' % [pp_copy, ret_val[2]])
return
var bort_rtr_name_left: StringName = $left.get_meta('DeviceName', '')
var bort_rtr_name_right: StringName = $right.get_meta('DeviceName', '')
var bb = {bort_rtr_name_left: $left, bort_rtr_name_right: $right}
if not bb.has(ret_val[0]):
return
var bort_rtr = bb[ret_val[0]]
for child in bort_rtr.get_node('konverter/grid').get_children():
map_value_to_item(json_conv.data, child, 'value0')
map_value_to_item(json_conv.data, child, 'value1')
map_value_to_item(json_conv.data, child, 'value2')
map_error_codes_to_item(json_conv.data, child, 'state', 0)
for child in bort_rtr.get_node('antenna1/grid').get_children():
map_value_to_item(json_conv.data, child, 'value0')
map_value_to_item(json_conv.data, child, 'value1')
map_error_codes_to_item(json_conv.data, child, 'state', 0)
for child in bort_rtr.get_node('antenna2/grid').get_children():
map_value_to_item(json_conv.data, child, 'value0')
map_value_to_item(json_conv.data, child, 'value1')
map_error_codes_to_item(json_conv.data, child, 'state', 0)
for child in bort_rtr.get_children():
map_value_to_item(json_conv.data, child, 'value0')
map_value_to_item(json_conv.data, child, 'value1')
map_error_codes_to_item(json_conv.data, child, 'state', 0)
func map_value_to_item(data, item, value_name: StringName):
var meta = item.get_meta(value_name, '')
if meta == '':
return
if not (meta is String):
return
var paths: = Array()
map_solid_to_array(meta, paths)
var ret_val: = [null, false, 0]
var paths_copy = paths.duplicate(true)
tools.get_value_by_path(data, paths, ret_val)
if ret_val[1]:
item.set(value_name, ret_val[0])
else:
push_error('не найденпуть %s (%s) для $%s.%s (%s)' % [paths_copy, ret_val[2], item.name, value_name, item.tooltip_text])
func map_error_codes_to_item(data, item, value_name: StringName, value_init: int):
var metas = item.get_meta(value_name, '')
if not (metas is Array):
return
var paths: = Array()
var values: = Array()
for meta in metas:
map_solid_to_array(meta, paths)
var ret_val: = [null, false, 0]
var paths_copy = paths.duplicate(true)
tools.get_value_by_path(data, paths, ret_val)
if ret_val[1]:
values.append(ret_val[0])
else:
push_error('не найден путь %s(%s) для $%s.%s (%s)' % [paths_copy, ret_val[2], item.name, value_name, item.tooltip_text])
if values.size() == metas.size():
var test_res = 1 if values.count(true) == values.size() else 2
item.set(value_name, test_res)
else:
item.set(value_name, value_init)
## Вызывается при клике мыши на элементе контроля.
## [param block_a] - Кликнутый элемент контроля.
func _on_item_pressed(block_a: Control):
var metas = block_a.get_meta_list()
print_debug(block_a)
for n in metas:
var v = block_a.get_meta(n)
print_debug('%s:%s' % [n, v])

View File

@@ -0,0 +1 @@
uid://d0jwv5opi3mrl

View File

@@ -0,0 +1,79 @@
[gd_scene load_steps=5 format=3 uid="uid://5uv1idl3lqet"]
[ext_resource type="Script" uid="uid://d0jwv5opi3mrl" path="res://scenes/pribor-afsp/pribor-afsp.gd" id="1_f33d3"]
[ext_resource type="Script" uid="uid://bux47vkw71w1t" path="res://scenes/контроль/request.gd" id="2_0b8u2"]
[ext_resource type="PackedScene" uid="uid://dnxq870xf6pkh" path="res://scenes/pribor-afsp/bort-afsp.tscn" id="3_6rjuf"]
[sub_resource type="GDScript" id="GDScript_yhnwg"]
script/source = "extends Timer
func _ready(): wait_time = ProjectSettings.get_setting('application/config/unit_rr_request_period')
"
[node name="pribor_rtr" type="Control"]
layout_mode = 3
anchors_preset = 0
offset_left = 10.0
offset_top = 78.0
offset_right = 10.0
offset_bottom = 78.0
scale = Vector2(0.9, 0.9)
script = ExtResource("1_f33d3")
[node name="lbl_header" type="Label" parent="."]
layout_mode = 0
offset_top = -44.8889
offset_right = 1044.0
offset_bottom = -15.8889
theme_override_font_sizes/font_size = 22
text = "Контроль исправности прибора"
horizontal_alignment = 1
vertical_alignment = 1
[node name="request_rtr" type="HTTPRequest" parent="."]
script = ExtResource("2_0b8u2")
[node name="timer" type="Timer" parent="request_rtr"]
wait_time = 4.168
autostart = true
script = SubResource("GDScript_yhnwg")
[node name="left" parent="." instance=ExtResource("3_6rjuf")]
scale = Vector2(0.9, 0.9)
metadata/DeviceName = &"Устройство РР левого борта"
[node name="right" parent="." instance=ExtResource("3_6rjuf")]
offset_left = 522.0
offset_right = 1102.0
scale = Vector2(0.9, 0.9)
metadata/DeviceName = &"Устройство РР правого борта"
[node name="lbl_left" type="Label" parent="."]
self_modulate = Color(1, 1, 1, 0.627451)
layout_mode = 0
offset_left = 217.0
offset_top = -18.6666
offset_right = 306.0
offset_bottom = 3.33341
theme_override_font_sizes/font_size = 17
text = "левый борт"
horizontal_alignment = 1
vertical_alignment = 1
[node name="lbl_right" type="Label" parent="."]
self_modulate = Color(1, 1, 1, 0.627451)
layout_mode = 0
offset_left = 739.0
offset_top = -18.6666
offset_right = 833.0
offset_bottom = 3.33341
theme_override_font_sizes/font_size = 17
text = "правый борт"
horizontal_alignment = 1
vertical_alignment = 1
[connection signal="child_entered_tree" from="request_rtr" to="request_rtr" method="_on_child_entered_tree"]
[connection signal="request_completed" from="request_rtr" to="." method="_on_request_rtr_request_completed"]
[connection signal="timeout" from="request_rtr/timer" to="request_rtr" method="_on_request_timer"]
[connection signal="pressed" from="left" to="." method="_on_item_pressed"]
[connection signal="pressed" from="right" to="." method="_on_item_pressed"]