add module fs

This commit is contained in:
2025-01-28 10:59:52 +03:00
parent fc98ed6d9c
commit 79fecc1573
13 changed files with 4516 additions and 211 deletions

852
PRD3397.tmp Normal file
View File

@@ -0,0 +1,852 @@
[gd_scene load_steps=50 format=3 uid="uid://cvor2jm4xk3ha"]
[ext_resource type="Script" path="res://scripts/PRD.gd" id="1_v273n"]
[ext_resource type="Texture2D" uid="uid://cdxdluvyb5uei" path="res://table/on.png" id="2_dv7xx"]
[ext_resource type="Script" path="res://table/table.gd" id="2_vmbyo"]
[ext_resource type="Material" uid="uid://s6xe8igevnv2" path="res://Shaders/shader_edu.tres" id="3_3syd3"]
[ext_resource type="Texture2D" uid="uid://cfktmk2rowmul" path="res://table/off.png" id="3_qvuyu"]
[ext_resource type="Shader" path="res://Shaders/ray.gdshader" id="4_uy5o2"]
[ext_resource type="Texture2D" uid="uid://62v0xejejuwj" path="res://Web.png" id="5_i3nvb"]
[ext_resource type="Shader" path="res://ray_2.gdshader" id="8_12mng"]
[ext_resource type="Texture2D" uid="uid://cgtg4gbqnuxrc" path="res://nine-patch-round.png" id="9_0r2qk"]
[ext_resource type="Script" path="res://ems_g.gd" id="9_g1wia"]
[ext_resource type="Shader" path="res://load.gdshader" id="10_lf1xh"]
[ext_resource type="PackedScene" uid="uid://bdb0bhfu7366l" path="res://kasseta-fs-kd.tscn" id="10_tdh2s"]
[ext_resource type="PackedScene" uid="uid://bnlkbbn7b4a3k" path="res://table/элемент-эмс.tscn" id="11_d60jk"]
[ext_resource type="PackedScene" uid="uid://p2suppildvq0" path="res://table/элемент-в.tscn" id="11_fg7ul"]
[ext_resource type="Script" path="res://modul_fs.gd" id="15_b4pr1"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_eib3t"]
bg_color = Color(0.223529, 0.168627, 0.223529, 1)
border_width_bottom = 6
border_color = Color(0.228592, 0.173062, 0.22863, 1)
border_blend = true
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_o0too"]
bg_color = Color(0.223529, 0.168627, 0.223529, 1)
border_width_bottom = 6
border_color = Color(0.339047, 0.26316, 0.339004, 1)
border_blend = true
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_gooip"]
bg_color = Color(0.143, 0.103, 0.143, 0.799)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_lqhgx"]
bg_color = Color(0, 0, 0, 0.490196)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_148rs"]
bg_color = Color(0.141176, 0.101961, 0.141176, 0.8)
border_width_bottom = 4
border_color = Color(0.223529, 0.168627, 0.223529, 1)
border_blend = true
corner_radius_top_left = 2
corner_radius_top_right = 2
corner_radius_bottom_right = 2
corner_radius_bottom_left = 2
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ldbvf"]
bg_color = Color(0.141176, 0.101961, 0.141176, 0.8)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_h8aei"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_d322q"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_8j02b"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_ls6vm"]
[sub_resource type="Theme" id="Theme_k5ur4"]
Button/styles/focus = SubResource("StyleBoxFlat_eib3t")
Button/styles/hover = SubResource("StyleBoxFlat_o0too")
Button/styles/normal = SubResource("StyleBoxFlat_o0too")
Button/styles/pressed = SubResource("StyleBoxFlat_eib3t")
CheckButton/icons/checked = ExtResource("2_dv7xx")
CheckButton/icons/unchecked = ExtResource("3_qvuyu")
OptionButton/font_sizes/font_size = 17
OptionButton/styles/focus = SubResource("StyleBoxFlat_gooip")
OptionButton/styles/hover = SubResource("StyleBoxFlat_lqhgx")
OptionButton/styles/normal = SubResource("StyleBoxFlat_148rs")
OptionButton/styles/pressed = SubResource("StyleBoxFlat_ldbvf")
TabContainer/styles/panel = SubResource("StyleBoxTexture_h8aei")
TabContainer/styles/tab_focus = SubResource("StyleBoxTexture_d322q")
TabContainer/styles/tab_selected = SubResource("StyleBoxTexture_8j02b")
TabContainer/styles/tabbar_background = SubResource("StyleBoxTexture_ls6vm")
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_pxarn"]
bg_color = Color(0.356863, 0.278431, 0.356863, 1)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_p247y"]
bg_color = Color(0.356863, 0.278431, 0.356863, 1)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_rh6pm"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_x11tp"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_mn8w2"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_21lc8"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_k08q3"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_dklg6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_17le6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_7u7p7"]
[sub_resource type="PlaceholderTexture2D" id="PlaceholderTexture2D_723du"]
size = Vector2(1600, 1200)
[sub_resource type="GDScript" id="GDScript_0sobq"]
script/source = "extends Sprite2D
"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o7txs"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_dgiai"]
shader = ExtResource("4_uy5o2")
shader_parameter/color_signal = Color(0.690196, 0.776471, 0, 1)
shader_parameter/turn = 0.735
[sub_resource type="Gradient" id="Gradient_ki0n7"]
[sub_resource type="GradientTexture2D" id="GradientTexture2D_0pk2o"]
gradient = SubResource("Gradient_ki0n7")
fill_from = Vector2(0.474359, 0.5)
metadata/_snap_enabled = true
[sub_resource type="ShaderMaterial" id="ShaderMaterial_2pxu2"]
shader = ExtResource("8_12mng")
shader_parameter/color_signal = Color(1.29351e-07, 0.19544, 0.0177065, 0.574)
shader_parameter/turn = 0.735
[sub_resource type="Gradient" id="Gradient_jlp41"]
colors = PackedColorArray(0, 0.647059, 0, 1, 0, 0.266667, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_u3yy8"]
gradient = SubResource("Gradient_jlp41")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(1.145, 0)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_otisn"]
texture = SubResource("GradientTexture2D_u3yy8")
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_tn8m6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_ooo4i"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_slcfo"]
shader = ExtResource("10_lf1xh")
shader_parameter/frequency = 5.0
shader_parameter/amplitude = 600.0
shader_parameter/speed = 5.0
shader_parameter/direction = -1.0
shader_parameter/color1 = Color(0, 0, 0, 1)
shader_parameter/color2 = Color(0.235, 0.18, 0.235, 1)
shader_parameter/color3 = Color(0.235, 0.18, 0.235, 0.5)
shader_parameter/color4 = Color(0, 0, 0, 0)
shader_parameter/opacity = 0.218
shader_parameter/turn = 0.785
[node name="Node2D" type="Node2D"]
script = ExtResource("1_v273n")
[node name="Background" type="ColorRect" parent="."]
offset_right = 1941.0
offset_bottom = 988.0
theme = SubResource("Theme_k5ur4")
color = Color(0.356863, 0.278431, 0.356863, 1)
metadata/_edit_lock_ = true
[node name="side_panel" type="ColorRect" parent="Background"]
layout_mode = 0
offset_right = 216.0
offset_bottom = 988.0
color = Color(0.586231, 0.481877, 0.585869, 1)
[node name="select_prd" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 120.0
offset_right = 216.0
offset_bottom = 156.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_pxarn")
toggle_mode = true
button_pressed = true
text = "ПРД"
[node name="select_control" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 160.0
offset_right = 216.0
offset_bottom = 196.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "КОНТРОЛЬ"
[node name="select_ems_g" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 200.0
offset_right = 216.0
offset_bottom = 236.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "ЭМС Г"
[node name="select_fs" type="Button" parent="Background/side_panel"]
offset_top = 241.0
offset_right = 216.0
offset_bottom = 277.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "Модуль ФС"
[node name="Litera_3_5_7" type="ColorRect" parent="Background"]
visible = false
layout_mode = 0
offset_top = 48.0
offset_right = 1941.0
offset_bottom = 352.0
color = Color(0.669446, 0.567301, 0.66881, 1)
[node name="Litera_1" type="ColorRect" parent="Background"]
visible = false
layout_mode = 0
offset_top = 359.0
offset_right = 2182.0
offset_bottom = 638.0
color = Color(0.669446, 0.567301, 0.66881, 1)
[node name="ISA" type="Label" parent="."]
offset_left = 225.0
offset_top = 11.0
offset_right = 1853.0
offset_bottom = 48.0
autowrap_mode = 3
[node name="read_isa" type="Button" parent="."]
offset_left = 85.0
offset_top = 7.0
offset_right = 210.0
offset_bottom = 38.0
text = "Прочитать ISA"
[node name="TabContainer" type="TabContainer" parent="."]
offset_left = 216.0
offset_top = 39.0
offset_right = 2420.0
offset_bottom = 917.0
theme = SubResource("Theme_k5ur4")
theme_override_colors/font_unselected_color = Color(0, 0, 0, 0.0392157)
theme_override_colors/font_selected_color = Color(0, 0, 0, 0)
theme_override_styles/tab_focus = SubResource("StyleBoxTexture_rh6pm")
theme_override_styles/tab_disabled = SubResource("StyleBoxTexture_x11tp")
theme_override_styles/tabbar_background = SubResource("StyleBoxTexture_mn8w2")
theme_override_styles/panel = SubResource("StyleBoxTexture_21lc8")
theme_override_styles/tab_selected = SubResource("StyleBoxTexture_k08q3")
theme_override_styles/tab_hovered = SubResource("StyleBoxTexture_dklg6")
theme_override_styles/tab_unselected = SubResource("StyleBoxTexture_17le6")
tab_alignment = 2
current_tab = 3
tab_focus_mode = 0
[node name="PRD" type="Panel" parent="TabContainer"]
visible = false
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_7u7p7")
metadata/_tab_index = 0
metadata/_edit_lock_ = true
[node name="select_dev" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 12.0
offset_top = 64.0
offset_right = 12.0
offset_bottom = 64.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="table_ukp_1" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 969.0
offset_top = 27.0
offset_right = 969.0
offset_bottom = 27.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="table_ukp_2" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 969.0
offset_top = 331.0
offset_right = 969.0
offset_bottom = 331.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="PSK" type="Sprite2D" parent="TabContainer/PRD"]
material = ExtResource("3_3syd3")
position = Vector2(1276.25, 29)
scale = Vector2(0.247968, 0.234167)
texture = SubResource("PlaceholderTexture2D_723du")
offset = Vector2(800, 600)
script = SubResource("GDScript_0sobq")
[node name="PSK grad" type="TextureRect" parent="TabContainer/PRD/PSK"]
modulate = Color(0, 0, 0, 1)
self_modulate = Color(0, 0, 0, 1)
show_behind_parent = true
material = SubResource("ShaderMaterial_o7txs")
offset_left = 554.954
offset_top = -30.0
offset_right = 1290.95
offset_bottom = 1134.0
texture = ExtResource("5_i3nvb")
expand_mode = 1
metadata/_edit_lock_ = true
[node name="ray_1" type="Sprite2D" parent="TabContainer/PRD/PSK"]
material = SubResource("ShaderMaterial_dgiai")
position = Vector2(549.221, 560.705)
scale = Vector2(21.8765, 21.6782)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="PSK2" type="Sprite2D" parent="TabContainer/PRD"]
material = ExtResource("3_3syd3")
position = Vector2(1276, 326)
scale = Vector2(0.247968, 0.234167)
texture = SubResource("PlaceholderTexture2D_723du")
offset = Vector2(800, 600)
script = SubResource("GDScript_0sobq")
[node name="PSK grad" type="TextureRect" parent="TabContainer/PRD/PSK2"]
modulate = Color(0, 0, 0, 1)
self_modulate = Color(0, 0, 0, 1)
show_behind_parent = true
material = SubResource("ShaderMaterial_o7txs")
offset_left = 554.954
offset_top = -30.0
offset_right = 1290.95
offset_bottom = 1134.0
texture = ExtResource("5_i3nvb")
expand_mode = 1
metadata/_edit_lock_ = true
[node name="ray_2" type="Sprite2D" parent="TabContainer/PRD/PSK2"]
material = SubResource("ShaderMaterial_2pxu2")
position = Vector2(549.221, 560.705)
scale = Vector2(21.8765, 21.6782)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="Grid" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 616.0
offset_top = 34.0
offset_right = 949.0
offset_bottom = 612.0
[node name="LABEL" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ЛИТЕРА 2! ПРД-Н!"
[node name="Zapret" type="Button" parent="TabContainer/PRD/Grid"]
layout_mode = 2
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ2"
metadata/litera = 48
[node name="Modul" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "Модуляция"
[node name="Label_ray" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "Номер и направление луча"
[node name="Ray_set" type="OptionButton" parent="TabContainer/PRD/Grid"]
layout_mode = 2
[node name="DKM2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ДКМ ДОУ 2"
[node name="FGOZ2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ФГОЗ 2"
[node name="LABEL2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ЛИТЕРА 3! ПРД-Н!"
[node name="Zapret2" type="Button" parent="TabContainer/PRD/Grid"]
layout_mode = 2
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ3"
metadata/litera = 49
[node name="FGOZ3" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ФГОЗ 3"
[node name="DKM3" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ДКМ ДОУ 3"
[node name="Ray_set2" type="OptionButton" parent="TabContainer/PRD/Grid"]
layout_mode = 2
[node name="ControlPanel" type="Panel" parent="TabContainer"]
visible = false
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_tn8m6")
metadata/_tab_index = 1
metadata/_edit_lock_ = true
[node name="lbl_control" type="Label" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 4.0
offset_top = 21.0
offset_right = 624.0
offset_bottom = 52.0
theme_override_font_sizes/font_size = 22
text = "Контроль исправности прибора ПРД-Н"
horizontal_alignment = 1
vertical_alignment = 1
[node name="sockets" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 103.0
offset_right = 840.0
offset_bottom = 293.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="ref_A26" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 5.0
offset_top = 34.0
offset_right = 55.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "ЯУ-07"
metadata/_edit_lock_ = true
[node name="ref_A23" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 53.0
offset_top = 34.0
offset_right = 103.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "ЭМС-Г"
metadata/_edit_lock_ = true
[node name="ref_A24" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 104.0
offset_top = 34.0
offset_right = 154.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "УГ"
metadata/_edit_lock_ = true
[node name="ref_A25" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 154.0
offset_top = 33.0
offset_right = 204.0
offset_bottom = 183.0
textures = Array[Texture]([])
fname = "УКП-1"
metadata/_edit_lock_ = true
[node name="ref_A27" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 205.0
offset_top = 33.0
offset_right = 255.0
offset_bottom = 183.0
textures = Array[Texture]([])
fname = "УКП-2"
metadata/_edit_lock_ = true
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/sockets"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 291.0
offset_bottom = 33.0
text = "Ячейки"
horizontal_alignment = 1
vertical_alignment = 1
metadata/_edit_lock_ = true
[node name="kasseta_fs_kd" parent="TabContainer/ControlPanel" instance=ExtResource("10_tdh2s")]
layout_mode = 0
offset_left = 206.0
offset_top = 311.0
offset_right = 516.0
offset_bottom = 538.0
script = null
[node name="kasseta_p_1" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 96.0
offset_top = 560.0
offset_right = 516.0
offset_bottom = 776.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/kasseta_p_1"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 409.0
offset_bottom = 33.0
text = "Кассета П-1"
horizontal_alignment = 1
vertical_alignment = 1
metadata/_edit_lock_ = true
[node name="ref_A23" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 9.0
offset_top = 34.0
offset_right = 59.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A24" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 59.0
offset_top = 34.0
offset_right = 109.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A25" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 109.0
offset_top = 34.0
offset_right = 159.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A26" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 159.0
offset_top = 34.0
offset_right = 209.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A27" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 209.0
offset_top = 34.0
offset_right = 259.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A28" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 259.0
offset_top = 34.0
offset_right = 309.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A29" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 309.0
offset_top = 34.0
offset_right = 359.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A30" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 359.0
offset_top = 34.0
offset_right = 409.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
rname = "A30"
metadata/_edit_lock_ = true
[node name="ref_ZZ3" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 562.0
offset_right = 997.0
offset_bottom = 776.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="label" type="Label" parent="TabContainer/ControlPanel/ref_ZZ3"]
self_modulate = Color(0.996078, 1, 1, 0.627451)
layout_mode = 0
offset_left = 8.0
offset_top = 8.0
offset_right = 453.0
offset_bottom = 206.0
text = "Панель
предохранителей"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Signal_EMS_G" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 311.0
offset_right = 996.0
offset_bottom = 538.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/Signal_EMS_G"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 448.0
offset_bottom = 33.0
text = "ЭМС-Г"
horizontal_alignment = 1
vertical_alignment = 1
[node name="ref_A22" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 8.0
offset_top = 38.0
offset_right = 58.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A22"
[node name="ref_A23" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 57.0
offset_top = 38.0
offset_right = 107.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A23"
[node name="ref_A26" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 106.0
offset_top = 38.0
offset_right = 156.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A26"
[node name="ref_A27" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 155.0
offset_top = 38.0
offset_right = 205.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A27"
[node name="ref_A28" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 204.0
offset_top = 38.0
offset_right = 254.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A28"
[node name="ref_A29" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 254.0
offset_top = 38.0
offset_right = 304.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A29"
[node name="ref_A31" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 304.0
offset_top = 38.0
offset_right = 354.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "УМ2"
[node name="ref_A32" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 354.0
offset_top = 38.0
offset_right = 404.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "УМ3"
[node name="ref_A33" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 405.0
offset_top = 38.0
offset_right = 455.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A33"
[node name="EMS_G" type="Panel" parent="TabContainer"]
visible = false
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_ooo4i")
script = ExtResource("9_g1wia")
metadata/_tab_index = 2
metadata/_edit_lock_ = true
[node name="table1" type="GridContainer" parent="TabContainer/EMS_G"]
layout_mode = 2
offset_left = 27.0
offset_top = 148.0
offset_right = 27.0
offset_bottom = 148.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="load_boadr" type="ColorRect" parent="TabContainer/EMS_G"]
layout_mode = 0
offset_left = 27.0
offset_top = 148.0
offset_right = 1596.0
offset_bottom = 717.0
color = Color(0, 0, 0, 0.596078)
[node name="load" type="Sprite2D" parent="TabContainer/EMS_G/load_boadr"]
material = SubResource("ShaderMaterial_slcfo")
position = Vector2(786, 284.5)
scale = Vector2(24.4688, 8.89063)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="Load_text" type="Label" parent="TabContainer/EMS_G/load_boadr"]
layout_mode = 0
offset_left = 693.0
offset_top = 277.0
offset_right = 849.0
offset_bottom = 316.0
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_shadow_color = Color(0.427493, 0.427493, 0.427493, 1)
theme_override_font_sizes/font_size = 28
text = "Загрузка ..."
[node name="Modul_fs" type="Panel" parent="TabContainer"]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_ooo4i")
script = ExtResource("15_b4pr1")
metadata/_tab_index = 3
metadata/_edit_lock_ = true
[node name="manage_panel" type="GridContainer" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 200.0
offset_top = 186.0
offset_right = 805.0
offset_bottom = 460.0
columns = 5
[node name="con" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
text = "Connect"
[node name="get_freq" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
text = "Получить н/ч"
[node name="freq_ind" type="Label" parent="TabContainer/Modul_fs/manage_panel/get_freq"]
layout_mode = 0
offset_top = 32.0
offset_right = 106.0
offset_bottom = 55.0
[node name="get_att" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
text = "Получить att"
[node name="att_ind" type="Label" parent="TabContainer/Modul_fs/manage_panel/get_att"]
offset_top = 32.0
offset_right = 105.0
offset_bottom = 55.0
[node name="get_gen_status" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
text = "Ген. статус"
[node name="status_ind" type="Label" parent="TabContainer/Modul_fs/manage_panel/get_gen_status"]
offset_top = 33.0
offset_right = 84.0
offset_bottom = 56.0
[node name="set_ferq" type="Button" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 468.0
offset_top = 122.0
offset_right = 575.0
offset_bottom = 151.0
text = "Записать н/ч"
[node name="read" type="LineEdit" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 211.0
offset_top = 315.0
offset_right = 507.0
offset_bottom = 346.0
[node name="write" type="LineEdit" parent="TabContainer/Modul_fs"]
offset_left = 155.0
offset_top = 122.0
offset_right = 451.0
offset_bottom = 153.0
[node name="fs_connect" type="Label" parent="TabContainer/Modul_fs"]
offset_left = 205.0
offset_top = 282.0
offset_right = 369.0
offset_bottom = 305.0
text = "Связь с модулем ФС"
[connection signal="pressed" from="Background/side_panel/select_prd" to="." method="_on_prd_select"]
[connection signal="pressed" from="Background/side_panel/select_control" to="." method="_on_control_button"]
[connection signal="pressed" from="Background/side_panel/select_ems_g" to="." method="_on_emsg_select"]
[connection signal="pressed" from="Background/side_panel/select_fs" to="." method="_on_mfs_select"]
[connection signal="pressed" from="read_isa" to="." method="_on_read_isa_pressed"]

837
PRD39E6.tmp Normal file
View File

@@ -0,0 +1,837 @@
[gd_scene load_steps=47 format=3 uid="uid://cvor2jm4xk3ha"]
[ext_resource type="Script" path="res://scripts/PRD.gd" id="1_v273n"]
[ext_resource type="Texture2D" uid="uid://cdxdluvyb5uei" path="res://table/on.png" id="2_dv7xx"]
[ext_resource type="Script" path="res://table/table.gd" id="2_vmbyo"]
[ext_resource type="Material" uid="uid://s6xe8igevnv2" path="res://Shaders/shader_edu.tres" id="3_3syd3"]
[ext_resource type="Texture2D" uid="uid://cfktmk2rowmul" path="res://table/off.png" id="3_qvuyu"]
[ext_resource type="Shader" path="res://Shaders/ray.gdshader" id="4_uy5o2"]
[ext_resource type="Texture2D" uid="uid://62v0xejejuwj" path="res://Web.png" id="5_i3nvb"]
[ext_resource type="Texture2D" uid="uid://cgtg4gbqnuxrc" path="res://nine-patch-round.png" id="9_0r2qk"]
[ext_resource type="Script" path="res://ems_g.gd" id="9_g1wia"]
[ext_resource type="Shader" path="res://load.gdshader" id="10_lf1xh"]
[ext_resource type="PackedScene" uid="uid://bdb0bhfu7366l" path="res://kasseta-fs-kd.tscn" id="10_tdh2s"]
[ext_resource type="PackedScene" uid="uid://bnlkbbn7b4a3k" path="res://table/элемент-эмс.tscn" id="11_d60jk"]
[ext_resource type="PackedScene" uid="uid://p2suppildvq0" path="res://table/элемент-в.tscn" id="11_fg7ul"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_eib3t"]
bg_color = Color(0.223529, 0.168627, 0.223529, 1)
border_width_bottom = 6
border_color = Color(0.228592, 0.173062, 0.22863, 1)
border_blend = true
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_o0too"]
bg_color = Color(0.223529, 0.168627, 0.223529, 1)
border_width_bottom = 6
border_color = Color(0.339047, 0.26316, 0.339004, 1)
border_blend = true
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_gooip"]
bg_color = Color(0.223529, 0.168627, 0.223529, 0.490196)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_lqhgx"]
bg_color = Color(0, 0, 0, 0.490196)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_148rs"]
bg_color = Color(0, 0, 0, 0.490196)
border_width_bottom = 4
border_color = Color(0.223529, 0.168627, 0.223529, 1)
border_blend = true
corner_radius_top_left = 2
corner_radius_top_right = 2
corner_radius_bottom_right = 2
corner_radius_bottom_left = 2
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ldbvf"]
bg_color = Color(0.223529, 0.168627, 0.223529, 0.490196)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_h8aei"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_d322q"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_8j02b"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_ls6vm"]
[sub_resource type="Theme" id="Theme_k5ur4"]
Button/styles/focus = SubResource("StyleBoxFlat_eib3t")
Button/styles/hover = SubResource("StyleBoxFlat_o0too")
Button/styles/normal = SubResource("StyleBoxFlat_o0too")
Button/styles/pressed = SubResource("StyleBoxFlat_eib3t")
CheckButton/icons/checked = ExtResource("2_dv7xx")
CheckButton/icons/unchecked = ExtResource("3_qvuyu")
OptionButton/font_sizes/font_size = 17
OptionButton/styles/focus = SubResource("StyleBoxFlat_gooip")
OptionButton/styles/hover = SubResource("StyleBoxFlat_lqhgx")
OptionButton/styles/normal = SubResource("StyleBoxFlat_148rs")
OptionButton/styles/pressed = SubResource("StyleBoxFlat_ldbvf")
TabContainer/styles/panel = SubResource("StyleBoxTexture_h8aei")
TabContainer/styles/tab_focus = SubResource("StyleBoxTexture_d322q")
TabContainer/styles/tab_selected = SubResource("StyleBoxTexture_8j02b")
TabContainer/styles/tabbar_background = SubResource("StyleBoxTexture_ls6vm")
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_pxarn"]
bg_color = Color(0.356863, 0.278431, 0.356863, 1)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_p247y"]
bg_color = Color(0.356863, 0.278431, 0.356863, 1)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_rh6pm"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_x11tp"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_mn8w2"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_21lc8"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_k08q3"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_dklg6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_17le6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_7u7p7"]
[sub_resource type="Gradient" id="Gradient_jlp41"]
colors = PackedColorArray(0, 0.647059, 0, 1, 0, 0.266667, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_u3yy8"]
gradient = SubResource("Gradient_jlp41")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(1.145, 0)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_otisn"]
texture = SubResource("GradientTexture2D_u3yy8")
[sub_resource type="PlaceholderTexture2D" id="PlaceholderTexture2D_723du"]
size = Vector2(1600, 1200)
[sub_resource type="GDScript" id="GDScript_0sobq"]
script/source = "extends Sprite2D
"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o7txs"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_dgiai"]
shader = ExtResource("4_uy5o2")
shader_parameter/color_signal = Color(0.690196, 0.776471, 0, 1)
shader_parameter/turn = 0.785
[sub_resource type="Gradient" id="Gradient_ki0n7"]
[sub_resource type="GradientTexture2D" id="GradientTexture2D_0pk2o"]
gradient = SubResource("Gradient_ki0n7")
fill_from = Vector2(0.474359, 0.5)
metadata/_snap_enabled = true
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_tn8m6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_ooo4i"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_slcfo"]
shader = ExtResource("10_lf1xh")
shader_parameter/frequency = 5.0
shader_parameter/amplitude = 600.0
shader_parameter/speed = 5.0
shader_parameter/direction = -1.0
shader_parameter/color1 = Color(0, 0, 0, 1)
shader_parameter/color2 = Color(0.235, 0.18, 0.235, 1)
shader_parameter/color3 = Color(0.235, 0.18, 0.235, 0.5)
shader_parameter/color4 = Color(0, 0, 0, 0)
shader_parameter/opacity = 0.218
shader_parameter/turn = 0.785
[node name="Node2D" type="Node2D"]
script = ExtResource("1_v273n")
[node name="Background" type="ColorRect" parent="."]
offset_right = 1941.0
offset_bottom = 988.0
theme = SubResource("Theme_k5ur4")
color = Color(0.356863, 0.278431, 0.356863, 1)
metadata/_edit_lock_ = true
[node name="side_panel" type="ColorRect" parent="Background"]
layout_mode = 0
offset_right = 216.0
offset_bottom = 988.0
color = Color(0.586231, 0.481877, 0.585869, 1)
[node name="select_prd" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 120.0
offset_right = 216.0
offset_bottom = 156.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_pxarn")
toggle_mode = true
button_pressed = true
text = "ПРД"
[node name="select_control" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 160.0
offset_right = 216.0
offset_bottom = 196.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "КОНТРОЛЬ"
[node name="select_ems_g" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 200.0
offset_right = 216.0
offset_bottom = 236.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "ЭМС Г"
[node name="Litera_3_5_7" type="ColorRect" parent="Background"]
visible = false
layout_mode = 0
offset_top = 48.0
offset_right = 1941.0
offset_bottom = 352.0
color = Color(0.669446, 0.567301, 0.66881, 1)
[node name="Litera_1" type="ColorRect" parent="Background"]
visible = false
layout_mode = 0
offset_top = 359.0
offset_right = 2182.0
offset_bottom = 638.0
color = Color(0.669446, 0.567301, 0.66881, 1)
[node name="ISA" type="Label" parent="."]
offset_left = 225.0
offset_top = 11.0
offset_right = 1853.0
offset_bottom = 48.0
autowrap_mode = 3
[node name="read_isa" type="Button" parent="."]
offset_left = 85.0
offset_top = 7.0
offset_right = 210.0
offset_bottom = 38.0
text = "Прочитать ISA"
[node name="TabContainer" type="TabContainer" parent="."]
offset_left = 216.0
offset_top = 39.0
offset_right = 2420.0
offset_bottom = 917.0
theme = SubResource("Theme_k5ur4")
theme_override_colors/font_unselected_color = Color(0, 0, 0, 0.0392157)
theme_override_colors/font_selected_color = Color(0, 0, 0, 0)
theme_override_styles/tab_focus = SubResource("StyleBoxTexture_rh6pm")
theme_override_styles/tab_disabled = SubResource("StyleBoxTexture_x11tp")
theme_override_styles/tabbar_background = SubResource("StyleBoxTexture_mn8w2")
theme_override_styles/panel = SubResource("StyleBoxTexture_21lc8")
theme_override_styles/tab_selected = SubResource("StyleBoxTexture_k08q3")
theme_override_styles/tab_hovered = SubResource("StyleBoxTexture_dklg6")
theme_override_styles/tab_unselected = SubResource("StyleBoxTexture_17le6")
tab_alignment = 2
current_tab = 0
tab_focus_mode = 0
[node name="PRD" type="Panel" parent="TabContainer"]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_7u7p7")
metadata/_tab_index = 0
metadata/_edit_lock_ = true
[node name="scroll1" type="ScrollContainer" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 969.0
offset_top = 27.0
offset_right = 1332.0
offset_bottom = 308.0
[node name="table1" type="GridContainer" parent="TabContainer/PRD/scroll1"]
layout_mode = 2
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="scroll2" type="ScrollContainer" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 969.0
offset_top = 331.0
offset_right = 1332.0
offset_bottom = 619.0
[node name="table2" type="GridContainer" parent="TabContainer/PRD/scroll2"]
layout_mode = 2
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="LABEL" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 17.0
offset_right = 764.0
offset_bottom = 40.0
text = "ЛИТЕРА 2! ПРД-Н!"
[node name="Zapret" type="Button" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 45.0
offset_right = 600.0
offset_bottom = 79.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ2"
metadata/litera = 48
[node name="LABEL2" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 329.0
offset_right = 764.0
offset_bottom = 352.0
text = "ЛИТЕРА 3! ПРД-Н!"
[node name="Zapret2" type="Button" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 357.0
offset_right = 600.0
offset_bottom = 391.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ3"
metadata/litera = 49
[node name="Label_luch" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 100.0
offset_right = 764.0
offset_bottom = 123.0
text = "Номер и направление луча"
[node name="LUCH" type="OptionButton" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 132.0
offset_right = 600.0
offset_bottom = 163.0
item_count = 2
popup/item_0/text = "Что-то"
popup/item_1/text = "Что-то"
popup/item_1/id = 1
[node name="Modul" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 402.0
offset_right = 626.0
offset_bottom = 425.0
text = "Модуляция"
[node name="DKM2" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 183.0
offset_right = 624.0
offset_bottom = 206.0
text = "ДКМ ДОУ 2"
[node name="DKM3" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 431.0
offset_right = 624.0
offset_bottom = 454.0
text = "ДКМ ДОУ 3"
[node name="FGOZ2" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 206.0
offset_right = 655.0
offset_bottom = 229.0
text = "ФГОЗ 2"
[node name="FGOZ3" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 454.0
offset_right = 655.0
offset_bottom = 477.0
text = "ФГОЗ 3"
[node name="PSK" type="Sprite2D" parent="TabContainer/PRD"]
material = ExtResource("3_3syd3")
position = Vector2(1276.25, 29)
scale = Vector2(0.247968, 0.234167)
texture = SubResource("PlaceholderTexture2D_723du")
offset = Vector2(800, 600)
script = SubResource("GDScript_0sobq")
[node name="PSK grad" type="TextureRect" parent="TabContainer/PRD/PSK"]
modulate = Color(0, 0, 0, 1)
self_modulate = Color(0, 0, 0, 1)
show_behind_parent = true
material = SubResource("ShaderMaterial_o7txs")
offset_left = 554.954
offset_top = -30.0
offset_right = 1290.95
offset_bottom = 1134.0
texture = ExtResource("5_i3nvb")
expand_mode = 1
metadata/_edit_lock_ = true
[node name="ray" type="Sprite2D" parent="TabContainer/PRD/PSK"]
material = SubResource("ShaderMaterial_dgiai")
position = Vector2(549.221, 560.705)
scale = Vector2(21.8765, 21.6782)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="PSK2" type="Sprite2D" parent="TabContainer/PRD"]
material = ExtResource("3_3syd3")
position = Vector2(1276, 326)
scale = Vector2(0.247968, 0.234167)
texture = SubResource("PlaceholderTexture2D_723du")
offset = Vector2(800, 600)
script = SubResource("GDScript_0sobq")
[node name="PSK grad" type="TextureRect" parent="TabContainer/PRD/PSK2"]
modulate = Color(0, 0, 0, 1)
self_modulate = Color(0, 0, 0, 1)
show_behind_parent = true
material = SubResource("ShaderMaterial_o7txs")
offset_left = 554.954
offset_top = -30.0
offset_right = 1290.95
offset_bottom = 1134.0
texture = ExtResource("5_i3nvb")
expand_mode = 1
metadata/_edit_lock_ = true
[node name="ray" type="Sprite2D" parent="TabContainer/PRD/PSK2"]
material = SubResource("ShaderMaterial_dgiai")
position = Vector2(549.221, 560.705)
scale = Vector2(21.8765, 21.6782)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="select_dev" type="ScrollContainer" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 12.0
offset_top = 64.0
offset_right = 375.0
offset_bottom = 96.0
[node name="select_dev" type="GridContainer" parent="TabContainer/PRD/select_dev"]
layout_mode = 2
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="liter_Ug" type="Button" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 256.0
offset_top = 579.0
offset_right = 630.0
offset_bottom = 749.0
text = "УГ"
[node name="Label" type="Label" parent="TabContainer/PRD/liter_Ug"]
layout_mode = 0
offset_left = 5.0
offset_top = 103.0
offset_right = 261.0
offset_bottom = 166.0
[node name="ControlPanel" type="Panel" parent="TabContainer"]
visible = false
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_tn8m6")
metadata/_tab_index = 1
metadata/_edit_lock_ = true
[node name="lbl_control" type="Label" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 4.0
offset_top = 21.0
offset_right = 624.0
offset_bottom = 52.0
theme_override_font_sizes/font_size = 22
text = "Контроль исправности прибора ПРД-Н"
horizontal_alignment = 1
vertical_alignment = 1
[node name="sockets" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 103.0
offset_right = 840.0
offset_bottom = 293.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="ref_A26" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 5.0
offset_top = 34.0
offset_right = 55.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "ЯУ-07"
metadata/_edit_lock_ = true
[node name="ref_A23" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 53.0
offset_top = 34.0
offset_right = 103.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "ЭМС-Г"
metadata/_edit_lock_ = true
[node name="ref_A24" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 104.0
offset_top = 34.0
offset_right = 154.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "УГ"
metadata/_edit_lock_ = true
[node name="ref_A25" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 154.0
offset_top = 33.0
offset_right = 204.0
offset_bottom = 183.0
textures = Array[Texture]([])
fname = "УКП-1"
metadata/_edit_lock_ = true
[node name="ref_A27" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 205.0
offset_top = 33.0
offset_right = 255.0
offset_bottom = 183.0
textures = Array[Texture]([])
fname = "УКП-2"
metadata/_edit_lock_ = true
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/sockets"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 291.0
offset_bottom = 33.0
text = "Ячейки"
horizontal_alignment = 1
vertical_alignment = 1
metadata/_edit_lock_ = true
[node name="kasseta_fs_kd" parent="TabContainer/ControlPanel" instance=ExtResource("10_tdh2s")]
layout_mode = 0
offset_left = 206.0
offset_top = 311.0
offset_right = 516.0
offset_bottom = 538.0
script = null
[node name="kasseta_p_1" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 96.0
offset_top = 560.0
offset_right = 516.0
offset_bottom = 776.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/kasseta_p_1"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 409.0
offset_bottom = 33.0
text = "Кассета П-1"
horizontal_alignment = 1
vertical_alignment = 1
metadata/_edit_lock_ = true
[node name="ref_A23" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 9.0
offset_top = 34.0
offset_right = 59.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП МАА 1"
metadata/_edit_lock_ = true
[node name="ref_A24" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 59.0
offset_top = 34.0
offset_right = 109.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП МАА 2"
metadata/_edit_lock_ = true
[node name="ref_A25" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 109.0
offset_top = 34.0
offset_right = 159.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП9-50 1"
metadata/_edit_lock_ = true
[node name="ref_A26" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 159.0
offset_top = 34.0
offset_right = 209.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП9-50 2"
metadata/_edit_lock_ = true
[node name="ref_A27" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 209.0
offset_top = 34.0
offset_right = 259.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП12-50 1"
metadata/_edit_lock_ = true
[node name="ref_A28" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 259.0
offset_top = 34.0
offset_right = 309.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП9-50 3"
metadata/_edit_lock_ = true
[node name="ref_A29" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 309.0
offset_top = 34.0
offset_right = 359.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП12-50 2"
metadata/_edit_lock_ = true
[node name="ref_A30" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 359.0
offset_top = 34.0
offset_right = 409.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП5-25"
rname = "A30"
metadata/_edit_lock_ = true
[node name="ref_ZZ3" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 562.0
offset_right = 997.0
offset_bottom = 776.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="label" type="Label" parent="TabContainer/ControlPanel/ref_ZZ3"]
self_modulate = Color(0.996078, 1, 1, 0.627451)
layout_mode = 0
offset_left = 8.0
offset_top = 8.0
offset_right = 453.0
offset_bottom = 206.0
text = "Панель
предохранителей"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Signal_EMS_G" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 311.0
offset_right = 996.0
offset_bottom = 538.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/Signal_EMS_G"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 448.0
offset_bottom = 33.0
text = "ЭМС-Г"
horizontal_alignment = 1
vertical_alignment = 1
[node name="ref_A22" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 8.0
offset_top = 38.0
offset_right = 58.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СЗИ2 от УФ"
rname = "A22"
[node name="ref_A23" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 57.0
offset_top = 38.0
offset_right = 107.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СЗИ3 от УФ"
rname = "A23"
[node name="ref_A26" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 106.0
offset_top = 38.0
offset_right = 156.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ2 от ФС"
rname = "A26"
[node name="ref_A27" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 155.0
offset_top = 38.0
offset_right = 205.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ3 от ФС"
rname = "A27"
[node name="ref_A28" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 204.0
offset_top = 38.0
offset_right = 254.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ2 в УФ"
rname = "A28"
[node name="ref_A29" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 254.0
offset_top = 38.0
offset_right = 304.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ3 в УФ"
rname = "A29"
[node name="ref_A31" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 304.0
offset_top = 38.0
offset_right = 354.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "Модуляция"
rname = "УМ2"
[node name="ref_A32" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 354.0
offset_top = 38.0
offset_right = 404.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "Модуляция"
rname = "УМ3"
[node name="ref_A33" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 405.0
offset_top = 38.0
offset_right = 455.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "ФГОЗ"
rname = "A33"
[node name="EMS_G" type="Panel" parent="TabContainer"]
visible = false
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_ooo4i")
script = ExtResource("9_g1wia")
metadata/_tab_index = 2
metadata/_edit_lock_ = true
[node name="table1" type="GridContainer" parent="TabContainer/EMS_G"]
layout_mode = 2
offset_left = 27.0
offset_top = 148.0
offset_right = 27.0
offset_bottom = 148.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="load_boadr" type="ColorRect" parent="TabContainer/EMS_G"]
layout_mode = 0
offset_left = 27.0
offset_top = 148.0
offset_right = 1596.0
offset_bottom = 717.0
color = Color(0, 0, 0, 0.596078)
[node name="load" type="Sprite2D" parent="TabContainer/EMS_G/load_boadr"]
material = SubResource("ShaderMaterial_slcfo")
position = Vector2(786, 284.5)
scale = Vector2(24.4688, 8.89063)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="Load_text" type="Label" parent="TabContainer/EMS_G/load_boadr"]
layout_mode = 0
offset_left = 693.0
offset_top = 277.0
offset_right = 849.0
offset_bottom = 316.0
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_shadow_color = Color(0.427493, 0.427493, 0.427493, 1)
theme_override_font_sizes/font_size = 28
text = "Загрузка ..."
[connection signal="pressed" from="Background/side_panel/select_prd" to="." method="_on_prd_select"]
[connection signal="pressed" from="Background/side_panel/select_control" to="." method="_on_control_button"]
[connection signal="pressed" from="Background/side_panel/select_ems_g" to="." method="_on_emsg_select"]
[connection signal="pressed" from="read_isa" to="." method="_on_read_isa_pressed"]
[connection signal="pressed" from="TabContainer/PRD/liter_Ug" to="." method="_on_button_posic_liter"]

780
PRD4794.tmp Normal file
View File

@@ -0,0 +1,780 @@
[gd_scene load_steps=49 format=3 uid="uid://cvor2jm4xk3ha"]
[ext_resource type="Script" path="res://scripts/PRD.gd" id="1_v273n"]
[ext_resource type="Texture2D" uid="uid://cdxdluvyb5uei" path="res://table/on.png" id="2_dv7xx"]
[ext_resource type="Script" path="res://table/table.gd" id="2_vmbyo"]
[ext_resource type="Material" uid="uid://s6xe8igevnv2" path="res://Shaders/shader_edu.tres" id="3_3syd3"]
[ext_resource type="Texture2D" uid="uid://cfktmk2rowmul" path="res://table/off.png" id="3_qvuyu"]
[ext_resource type="Shader" path="res://Shaders/ray.gdshader" id="4_uy5o2"]
[ext_resource type="Texture2D" uid="uid://62v0xejejuwj" path="res://Web.png" id="5_i3nvb"]
[ext_resource type="Shader" path="res://ray_2.gdshader" id="8_12mng"]
[ext_resource type="Texture2D" uid="uid://cgtg4gbqnuxrc" path="res://nine-patch-round.png" id="9_0r2qk"]
[ext_resource type="Script" path="res://ems_g.gd" id="9_g1wia"]
[ext_resource type="Shader" path="res://load.gdshader" id="10_lf1xh"]
[ext_resource type="PackedScene" uid="uid://bdb0bhfu7366l" path="res://kasseta-fs-kd.tscn" id="10_tdh2s"]
[ext_resource type="PackedScene" uid="uid://bnlkbbn7b4a3k" path="res://table/элемент-эмс.tscn" id="11_d60jk"]
[ext_resource type="PackedScene" uid="uid://p2suppildvq0" path="res://table/элемент-в.tscn" id="11_fg7ul"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_eib3t"]
bg_color = Color(0.223529, 0.168627, 0.223529, 1)
border_width_bottom = 6
border_color = Color(0.228592, 0.173062, 0.22863, 1)
border_blend = true
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_o0too"]
bg_color = Color(0.223529, 0.168627, 0.223529, 1)
border_width_bottom = 6
border_color = Color(0.339047, 0.26316, 0.339004, 1)
border_blend = true
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_gooip"]
bg_color = Color(0.143, 0.103, 0.143, 0.799)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_lqhgx"]
bg_color = Color(0, 0, 0, 0.490196)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_148rs"]
bg_color = Color(0.141176, 0.101961, 0.141176, 0.8)
border_width_bottom = 4
border_color = Color(0.223529, 0.168627, 0.223529, 1)
border_blend = true
corner_radius_top_left = 2
corner_radius_top_right = 2
corner_radius_bottom_right = 2
corner_radius_bottom_left = 2
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ldbvf"]
bg_color = Color(0.141176, 0.101961, 0.141176, 0.8)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_h8aei"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_d322q"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_8j02b"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_ls6vm"]
[sub_resource type="Theme" id="Theme_k5ur4"]
Button/styles/focus = SubResource("StyleBoxFlat_eib3t")
Button/styles/hover = SubResource("StyleBoxFlat_o0too")
Button/styles/normal = SubResource("StyleBoxFlat_o0too")
Button/styles/pressed = SubResource("StyleBoxFlat_eib3t")
CheckButton/icons/checked = ExtResource("2_dv7xx")
CheckButton/icons/unchecked = ExtResource("3_qvuyu")
OptionButton/font_sizes/font_size = 17
OptionButton/styles/focus = SubResource("StyleBoxFlat_gooip")
OptionButton/styles/hover = SubResource("StyleBoxFlat_lqhgx")
OptionButton/styles/normal = SubResource("StyleBoxFlat_148rs")
OptionButton/styles/pressed = SubResource("StyleBoxFlat_ldbvf")
TabContainer/styles/panel = SubResource("StyleBoxTexture_h8aei")
TabContainer/styles/tab_focus = SubResource("StyleBoxTexture_d322q")
TabContainer/styles/tab_selected = SubResource("StyleBoxTexture_8j02b")
TabContainer/styles/tabbar_background = SubResource("StyleBoxTexture_ls6vm")
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_pxarn"]
bg_color = Color(0.356863, 0.278431, 0.356863, 1)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_p247y"]
bg_color = Color(0.356863, 0.278431, 0.356863, 1)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_rh6pm"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_x11tp"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_mn8w2"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_21lc8"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_k08q3"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_dklg6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_17le6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_7u7p7"]
[sub_resource type="PlaceholderTexture2D" id="PlaceholderTexture2D_723du"]
size = Vector2(1600, 1200)
[sub_resource type="GDScript" id="GDScript_0sobq"]
script/source = "extends Sprite2D
"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o7txs"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_dgiai"]
shader = ExtResource("4_uy5o2")
shader_parameter/color_signal = Color(0.690196, 0.776471, 0, 1)
shader_parameter/turn = 0.735
[sub_resource type="Gradient" id="Gradient_ki0n7"]
[sub_resource type="GradientTexture2D" id="GradientTexture2D_0pk2o"]
gradient = SubResource("Gradient_ki0n7")
fill_from = Vector2(0.474359, 0.5)
metadata/_snap_enabled = true
[sub_resource type="ShaderMaterial" id="ShaderMaterial_2pxu2"]
shader = ExtResource("8_12mng")
shader_parameter/color_signal = Color(1.29351e-07, 0.19544, 0.0177065, 0.574)
shader_parameter/turn = 0.735
[sub_resource type="Gradient" id="Gradient_jlp41"]
colors = PackedColorArray(0, 0.647059, 0, 1, 0, 0.266667, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_u3yy8"]
gradient = SubResource("Gradient_jlp41")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(1.145, 0)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_otisn"]
texture = SubResource("GradientTexture2D_u3yy8")
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_tn8m6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_ooo4i"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_slcfo"]
shader = ExtResource("10_lf1xh")
shader_parameter/frequency = 5.0
shader_parameter/amplitude = 600.0
shader_parameter/speed = 5.0
shader_parameter/direction = -1.0
shader_parameter/color1 = Color(0, 0, 0, 1)
shader_parameter/color2 = Color(0.235, 0.18, 0.235, 1)
shader_parameter/color3 = Color(0.235, 0.18, 0.235, 0.5)
shader_parameter/color4 = Color(0, 0, 0, 0)
shader_parameter/opacity = 0.218
shader_parameter/turn = 0.785
[node name="Node2D" type="Node2D"]
script = ExtResource("1_v273n")
[node name="Background" type="ColorRect" parent="."]
offset_right = 1941.0
offset_bottom = 988.0
theme = SubResource("Theme_k5ur4")
color = Color(0.356863, 0.278431, 0.356863, 1)
metadata/_edit_lock_ = true
[node name="side_panel" type="ColorRect" parent="Background"]
layout_mode = 0
offset_right = 216.0
offset_bottom = 988.0
color = Color(0.586231, 0.481877, 0.585869, 1)
[node name="select_prd" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 120.0
offset_right = 216.0
offset_bottom = 156.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_pxarn")
toggle_mode = true
button_pressed = true
text = "ПРД"
[node name="select_control" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 160.0
offset_right = 216.0
offset_bottom = 196.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "КОНТРОЛЬ"
[node name="select_ems_g" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 200.0
offset_right = 216.0
offset_bottom = 236.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "ЭМС Г"
[node name="Litera_3_5_7" type="ColorRect" parent="Background"]
visible = false
layout_mode = 0
offset_top = 48.0
offset_right = 1941.0
offset_bottom = 352.0
color = Color(0.669446, 0.567301, 0.66881, 1)
[node name="Litera_1" type="ColorRect" parent="Background"]
visible = false
layout_mode = 0
offset_top = 359.0
offset_right = 2182.0
offset_bottom = 638.0
color = Color(0.669446, 0.567301, 0.66881, 1)
[node name="ISA" type="Label" parent="."]
offset_left = 225.0
offset_top = 11.0
offset_right = 1853.0
offset_bottom = 48.0
autowrap_mode = 3
[node name="read_isa" type="Button" parent="."]
offset_left = 85.0
offset_top = 7.0
offset_right = 210.0
offset_bottom = 38.0
text = "Прочитать ISA"
[node name="TabContainer" type="TabContainer" parent="."]
offset_left = 216.0
offset_top = 39.0
offset_right = 2420.0
offset_bottom = 917.0
theme = SubResource("Theme_k5ur4")
theme_override_colors/font_unselected_color = Color(0, 0, 0, 0.0392157)
theme_override_colors/font_selected_color = Color(0, 0, 0, 0)
theme_override_styles/tab_focus = SubResource("StyleBoxTexture_rh6pm")
theme_override_styles/tab_disabled = SubResource("StyleBoxTexture_x11tp")
theme_override_styles/tabbar_background = SubResource("StyleBoxTexture_mn8w2")
theme_override_styles/panel = SubResource("StyleBoxTexture_21lc8")
theme_override_styles/tab_selected = SubResource("StyleBoxTexture_k08q3")
theme_override_styles/tab_hovered = SubResource("StyleBoxTexture_dklg6")
theme_override_styles/tab_unselected = SubResource("StyleBoxTexture_17le6")
tab_alignment = 2
current_tab = 0
tab_focus_mode = 0
[node name="PRD" type="Panel" parent="TabContainer"]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_7u7p7")
metadata/_tab_index = 0
metadata/_edit_lock_ = true
[node name="select_dev" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 12.0
offset_top = 64.0
offset_right = 12.0
offset_bottom = 64.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="table_ukp_1" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 969.0
offset_top = 27.0
offset_right = 969.0
offset_bottom = 27.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="table_ukp_2" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 969.0
offset_top = 331.0
offset_right = 969.0
offset_bottom = 331.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="PSK" type="Sprite2D" parent="TabContainer/PRD"]
material = ExtResource("3_3syd3")
position = Vector2(1276.25, 29)
scale = Vector2(0.247968, 0.234167)
texture = SubResource("PlaceholderTexture2D_723du")
offset = Vector2(800, 600)
script = SubResource("GDScript_0sobq")
[node name="PSK grad" type="TextureRect" parent="TabContainer/PRD/PSK"]
modulate = Color(0, 0, 0, 1)
self_modulate = Color(0, 0, 0, 1)
show_behind_parent = true
material = SubResource("ShaderMaterial_o7txs")
offset_left = 554.954
offset_top = -30.0
offset_right = 1290.95
offset_bottom = 1134.0
texture = ExtResource("5_i3nvb")
expand_mode = 1
metadata/_edit_lock_ = true
[node name="ray_1" type="Sprite2D" parent="TabContainer/PRD/PSK"]
material = SubResource("ShaderMaterial_dgiai")
position = Vector2(549.221, 560.705)
scale = Vector2(21.8765, 21.6782)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="PSK2" type="Sprite2D" parent="TabContainer/PRD"]
material = ExtResource("3_3syd3")
position = Vector2(1276, 326)
scale = Vector2(0.247968, 0.234167)
texture = SubResource("PlaceholderTexture2D_723du")
offset = Vector2(800, 600)
script = SubResource("GDScript_0sobq")
[node name="PSK grad" type="TextureRect" parent="TabContainer/PRD/PSK2"]
modulate = Color(0, 0, 0, 1)
self_modulate = Color(0, 0, 0, 1)
show_behind_parent = true
material = SubResource("ShaderMaterial_o7txs")
offset_left = 554.954
offset_top = -30.0
offset_right = 1290.95
offset_bottom = 1134.0
texture = ExtResource("5_i3nvb")
expand_mode = 1
metadata/_edit_lock_ = true
[node name="ray_2" type="Sprite2D" parent="TabContainer/PRD/PSK2"]
material = SubResource("ShaderMaterial_2pxu2")
position = Vector2(549.221, 560.705)
scale = Vector2(21.8765, 21.6782)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="Grid" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 616.0
offset_top = 34.0
offset_right = 949.0
offset_bottom = 612.0
[node name="LABEL" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ЛИТЕРА 2! ПРД-Н!"
[node name="Zapret" type="Button" parent="TabContainer/PRD/Grid"]
layout_mode = 2
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ2"
metadata/litera = 48
[node name="Modul" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "Модуляция"
[node name="Label_ray" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "Номер и направление луча"
[node name="Ray_set" type="OptionButton" parent="TabContainer/PRD/Grid"]
layout_mode = 2
[node name="DKM2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ДКМ ДОУ 2"
[node name="FGOZ2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ФГОЗ 2"
[node name="LABEL2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ЛИТЕРА 3! ПРД-Н!"
[node name="Zapret2" type="Button" parent="TabContainer/PRD/Grid"]
layout_mode = 2
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ3"
metadata/litera = 49
[node name="FGOZ3" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ФГОЗ 3"
[node name="DKM3" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ДКМ ДОУ 3"
[node name="Ray_set2" type="OptionButton" parent="TabContainer/PRD/Grid"]
layout_mode = 2
[node name="ControlPanel" type="Panel" parent="TabContainer"]
visible = false
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_tn8m6")
metadata/_tab_index = 1
metadata/_edit_lock_ = true
[node name="lbl_control" type="Label" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 4.0
offset_top = 21.0
offset_right = 624.0
offset_bottom = 52.0
theme_override_font_sizes/font_size = 22
text = "Контроль исправности прибора ПРД-Н"
horizontal_alignment = 1
vertical_alignment = 1
[node name="sockets" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 103.0
offset_right = 840.0
offset_bottom = 293.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="ref_A26" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 5.0
offset_top = 34.0
offset_right = 55.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "ЯУ-07"
metadata/_edit_lock_ = true
[node name="ref_A23" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 53.0
offset_top = 34.0
offset_right = 103.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "ЭМС-Г"
metadata/_edit_lock_ = true
[node name="ref_A24" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 104.0
offset_top = 34.0
offset_right = 154.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "УГ"
metadata/_edit_lock_ = true
[node name="ref_A25" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 154.0
offset_top = 33.0
offset_right = 204.0
offset_bottom = 183.0
textures = Array[Texture]([])
fname = "УКП-1"
metadata/_edit_lock_ = true
[node name="ref_A27" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 205.0
offset_top = 33.0
offset_right = 255.0
offset_bottom = 183.0
textures = Array[Texture]([])
fname = "УКП-2"
metadata/_edit_lock_ = true
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/sockets"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 291.0
offset_bottom = 33.0
text = "Ячейки"
horizontal_alignment = 1
vertical_alignment = 1
metadata/_edit_lock_ = true
[node name="kasseta_fs_kd" parent="TabContainer/ControlPanel" instance=ExtResource("10_tdh2s")]
layout_mode = 0
offset_left = 206.0
offset_top = 311.0
offset_right = 516.0
offset_bottom = 538.0
script = null
[node name="kasseta_p_1" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 96.0
offset_top = 560.0
offset_right = 516.0
offset_bottom = 776.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/kasseta_p_1"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 409.0
offset_bottom = 33.0
text = "Кассета П-1"
horizontal_alignment = 1
vertical_alignment = 1
metadata/_edit_lock_ = true
[node name="ref_A23" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 9.0
offset_top = 34.0
offset_right = 59.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП МАА 1"
metadata/_edit_lock_ = true
[node name="ref_A24" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 59.0
offset_top = 34.0
offset_right = 109.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП МАА 2"
metadata/_edit_lock_ = true
[node name="ref_A25" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 109.0
offset_top = 34.0
offset_right = 159.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП9-50 1"
metadata/_edit_lock_ = true
[node name="ref_A26" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 159.0
offset_top = 34.0
offset_right = 209.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП9-50 2"
metadata/_edit_lock_ = true
[node name="ref_A27" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 209.0
offset_top = 34.0
offset_right = 259.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП12-50 1"
metadata/_edit_lock_ = true
[node name="ref_A28" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 259.0
offset_top = 34.0
offset_right = 309.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП9-50 3"
metadata/_edit_lock_ = true
[node name="ref_A29" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 309.0
offset_top = 34.0
offset_right = 359.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП12-50 2"
metadata/_edit_lock_ = true
[node name="ref_A30" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 359.0
offset_top = 34.0
offset_right = 409.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП5-25"
rname = "A30"
metadata/_edit_lock_ = true
[node name="ref_ZZ3" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 562.0
offset_right = 997.0
offset_bottom = 776.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="label" type="Label" parent="TabContainer/ControlPanel/ref_ZZ3"]
self_modulate = Color(0.996078, 1, 1, 0.627451)
layout_mode = 0
offset_left = 8.0
offset_top = 8.0
offset_right = 453.0
offset_bottom = 206.0
text = "Панель
предохранителей"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Signal_EMS_G" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 311.0
offset_right = 996.0
offset_bottom = 538.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/Signal_EMS_G"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 448.0
offset_bottom = 33.0
text = "ЭМС-Г"
horizontal_alignment = 1
vertical_alignment = 1
[node name="ref_A22" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 8.0
offset_top = 38.0
offset_right = 58.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СЗИ2 от УФ"
rname = "A22"
[node name="ref_A23" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 57.0
offset_top = 38.0
offset_right = 107.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СЗИ3 от УФ"
rname = "A23"
[node name="ref_A26" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 106.0
offset_top = 38.0
offset_right = 156.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ2 от ФС"
rname = "A26"
[node name="ref_A27" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 155.0
offset_top = 38.0
offset_right = 205.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ3 от ФС"
rname = "A27"
[node name="ref_A28" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 204.0
offset_top = 38.0
offset_right = 254.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ2 в УФ"
rname = "A28"
[node name="ref_A29" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 254.0
offset_top = 38.0
offset_right = 304.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ3 в УФ"
rname = "A29"
[node name="ref_A31" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 304.0
offset_top = 38.0
offset_right = 354.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "Модуляция"
rname = "УМ2"
[node name="ref_A32" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 354.0
offset_top = 38.0
offset_right = 404.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "Модуляция"
rname = "УМ3"
[node name="ref_A33" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 405.0
offset_top = 38.0
offset_right = 455.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "ФГОЗ"
rname = "A33"
[node name="EMS_G" type="Panel" parent="TabContainer"]
visible = false
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_ooo4i")
script = ExtResource("9_g1wia")
metadata/_tab_index = 2
metadata/_edit_lock_ = true
[node name="table1" type="GridContainer" parent="TabContainer/EMS_G"]
layout_mode = 2
offset_left = 27.0
offset_top = 148.0
offset_right = 27.0
offset_bottom = 148.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="load_boadr" type="ColorRect" parent="TabContainer/EMS_G"]
layout_mode = 0
offset_left = 27.0
offset_top = 148.0
offset_right = 1596.0
offset_bottom = 717.0
color = Color(0, 0, 0, 0.596078)
[node name="load" type="Sprite2D" parent="TabContainer/EMS_G/load_boadr"]
material = SubResource("ShaderMaterial_slcfo")
position = Vector2(786, 284.5)
scale = Vector2(24.4688, 8.89063)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="Load_text" type="Label" parent="TabContainer/EMS_G/load_boadr"]
layout_mode = 0
offset_left = 693.0
offset_top = 277.0
offset_right = 849.0
offset_bottom = 316.0
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_shadow_color = Color(0.427493, 0.427493, 0.427493, 1)
theme_override_font_sizes/font_size = 28
text = "Загрузка ..."
[connection signal="pressed" from="Background/side_panel/select_prd" to="." method="_on_prd_select"]
[connection signal="pressed" from="Background/side_panel/select_control" to="." method="_on_control_button"]
[connection signal="pressed" from="Background/side_panel/select_ems_g" to="." method="_on_emsg_select"]
[connection signal="pressed" from="read_isa" to="." method="_on_read_isa_pressed"]

932
PRDA888.tmp Normal file
View File

@@ -0,0 +1,932 @@
[gd_scene load_steps=50 format=3 uid="uid://cvor2jm4xk3ha"]
[ext_resource type="Script" path="res://scripts/PRD.gd" id="1_v273n"]
[ext_resource type="Texture2D" uid="uid://cdxdluvyb5uei" path="res://table/on.png" id="2_dv7xx"]
[ext_resource type="Script" path="res://table/table.gd" id="2_vmbyo"]
[ext_resource type="Material" uid="uid://s6xe8igevnv2" path="res://Shaders/shader_edu.tres" id="3_3syd3"]
[ext_resource type="Texture2D" uid="uid://cfktmk2rowmul" path="res://table/off.png" id="3_qvuyu"]
[ext_resource type="Shader" path="res://Shaders/ray.gdshader" id="4_uy5o2"]
[ext_resource type="Texture2D" uid="uid://62v0xejejuwj" path="res://Web.png" id="5_i3nvb"]
[ext_resource type="Shader" path="res://ray_2.gdshader" id="8_12mng"]
[ext_resource type="Texture2D" uid="uid://cgtg4gbqnuxrc" path="res://nine-patch-round.png" id="9_0r2qk"]
[ext_resource type="Script" path="res://ems_g.gd" id="9_g1wia"]
[ext_resource type="Shader" path="res://load.gdshader" id="10_lf1xh"]
[ext_resource type="PackedScene" uid="uid://bdb0bhfu7366l" path="res://kasseta-fs-kd.tscn" id="10_tdh2s"]
[ext_resource type="PackedScene" uid="uid://bnlkbbn7b4a3k" path="res://table/элемент-эмс.tscn" id="11_d60jk"]
[ext_resource type="PackedScene" uid="uid://p2suppildvq0" path="res://table/элемент-в.tscn" id="11_fg7ul"]
[ext_resource type="Script" path="res://modul_fs.gd" id="15_b4pr1"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_eib3t"]
bg_color = Color(0.223529, 0.168627, 0.223529, 1)
border_width_bottom = 6
border_color = Color(0.228592, 0.173062, 0.22863, 1)
border_blend = true
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_o0too"]
bg_color = Color(0.223529, 0.168627, 0.223529, 1)
border_width_bottom = 6
border_color = Color(0.339047, 0.26316, 0.339004, 1)
border_blend = true
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_gooip"]
bg_color = Color(0.143, 0.103, 0.143, 0.799)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_lqhgx"]
bg_color = Color(0, 0, 0, 0.490196)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_148rs"]
bg_color = Color(0.141176, 0.101961, 0.141176, 0.8)
border_width_bottom = 4
border_color = Color(0.223529, 0.168627, 0.223529, 1)
border_blend = true
corner_radius_top_left = 2
corner_radius_top_right = 2
corner_radius_bottom_right = 2
corner_radius_bottom_left = 2
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ldbvf"]
bg_color = Color(0.141176, 0.101961, 0.141176, 0.8)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_h8aei"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_d322q"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_8j02b"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_ls6vm"]
[sub_resource type="Theme" id="Theme_k5ur4"]
Button/styles/focus = SubResource("StyleBoxFlat_eib3t")
Button/styles/hover = SubResource("StyleBoxFlat_o0too")
Button/styles/normal = SubResource("StyleBoxFlat_o0too")
Button/styles/pressed = SubResource("StyleBoxFlat_eib3t")
CheckButton/icons/checked = ExtResource("2_dv7xx")
CheckButton/icons/unchecked = ExtResource("3_qvuyu")
OptionButton/font_sizes/font_size = 17
OptionButton/styles/focus = SubResource("StyleBoxFlat_gooip")
OptionButton/styles/hover = SubResource("StyleBoxFlat_lqhgx")
OptionButton/styles/normal = SubResource("StyleBoxFlat_148rs")
OptionButton/styles/pressed = SubResource("StyleBoxFlat_ldbvf")
TabContainer/styles/panel = SubResource("StyleBoxTexture_h8aei")
TabContainer/styles/tab_focus = SubResource("StyleBoxTexture_d322q")
TabContainer/styles/tab_selected = SubResource("StyleBoxTexture_8j02b")
TabContainer/styles/tabbar_background = SubResource("StyleBoxTexture_ls6vm")
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_pxarn"]
bg_color = Color(0.356863, 0.278431, 0.356863, 1)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_p247y"]
bg_color = Color(0.356863, 0.278431, 0.356863, 1)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_rh6pm"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_x11tp"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_mn8w2"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_21lc8"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_k08q3"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_dklg6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_17le6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_7u7p7"]
[sub_resource type="PlaceholderTexture2D" id="PlaceholderTexture2D_723du"]
size = Vector2(1600, 1200)
[sub_resource type="GDScript" id="GDScript_0sobq"]
script/source = "extends Sprite2D
"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o7txs"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_dgiai"]
shader = ExtResource("4_uy5o2")
shader_parameter/color_signal = Color(0.690196, 0.776471, 0, 1)
shader_parameter/turn = 0.735
[sub_resource type="Gradient" id="Gradient_ki0n7"]
[sub_resource type="GradientTexture2D" id="GradientTexture2D_0pk2o"]
gradient = SubResource("Gradient_ki0n7")
fill_from = Vector2(0.474359, 0.5)
metadata/_snap_enabled = true
[sub_resource type="ShaderMaterial" id="ShaderMaterial_2pxu2"]
shader = ExtResource("8_12mng")
shader_parameter/color_signal = Color(1.29351e-07, 0.19544, 0.0177065, 0.574)
shader_parameter/turn = 0.735
[sub_resource type="Gradient" id="Gradient_jlp41"]
colors = PackedColorArray(0, 0.647059, 0, 1, 0, 0.266667, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_u3yy8"]
gradient = SubResource("Gradient_jlp41")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(1.145, 0)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_otisn"]
texture = SubResource("GradientTexture2D_u3yy8")
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_tn8m6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_ooo4i"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_slcfo"]
shader = ExtResource("10_lf1xh")
shader_parameter/frequency = 5.0
shader_parameter/amplitude = 600.0
shader_parameter/speed = 5.0
shader_parameter/direction = -1.0
shader_parameter/color1 = Color(0, 0, 0, 1)
shader_parameter/color2 = Color(0.235, 0.18, 0.235, 1)
shader_parameter/color3 = Color(0.235, 0.18, 0.235, 0.5)
shader_parameter/color4 = Color(0, 0, 0, 0)
shader_parameter/opacity = 0.218
shader_parameter/turn = 0.785
[node name="Node2D" type="Node2D"]
script = ExtResource("1_v273n")
[node name="Background" type="ColorRect" parent="."]
offset_right = 1941.0
offset_bottom = 988.0
theme = SubResource("Theme_k5ur4")
color = Color(0.356863, 0.278431, 0.356863, 1)
metadata/_edit_lock_ = true
[node name="side_panel" type="ColorRect" parent="Background"]
layout_mode = 0
offset_right = 216.0
offset_bottom = 988.0
color = Color(0.586231, 0.481877, 0.585869, 1)
[node name="select_prd" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 120.0
offset_right = 216.0
offset_bottom = 156.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_pxarn")
toggle_mode = true
button_pressed = true
text = "ПРД"
[node name="select_control" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 160.0
offset_right = 216.0
offset_bottom = 196.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "КОНТРОЛЬ"
[node name="select_ems_g" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 200.0
offset_right = 216.0
offset_bottom = 236.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "ЭМС Г"
[node name="select_fs" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 241.0
offset_right = 216.0
offset_bottom = 277.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "Модуль ФС"
[node name="Litera_3_5_7" type="ColorRect" parent="Background"]
visible = false
layout_mode = 0
offset_top = 48.0
offset_right = 1941.0
offset_bottom = 352.0
color = Color(0.669446, 0.567301, 0.66881, 1)
[node name="Litera_1" type="ColorRect" parent="Background"]
visible = false
layout_mode = 0
offset_top = 359.0
offset_right = 2182.0
offset_bottom = 638.0
color = Color(0.669446, 0.567301, 0.66881, 1)
[node name="ISA" type="Label" parent="."]
offset_left = 225.0
offset_top = 11.0
offset_right = 1853.0
offset_bottom = 48.0
autowrap_mode = 3
[node name="read_isa" type="Button" parent="."]
offset_left = 85.0
offset_top = 7.0
offset_right = 210.0
offset_bottom = 38.0
text = "Прочитать ISA"
[node name="TabContainer" type="TabContainer" parent="."]
offset_left = 216.0
offset_top = 39.0
offset_right = 2420.0
offset_bottom = 917.0
theme = SubResource("Theme_k5ur4")
theme_override_colors/font_unselected_color = Color(0, 0, 0, 0.0392157)
theme_override_colors/font_selected_color = Color(0, 0, 0, 0)
theme_override_styles/tab_focus = SubResource("StyleBoxTexture_rh6pm")
theme_override_styles/tab_disabled = SubResource("StyleBoxTexture_x11tp")
theme_override_styles/tabbar_background = SubResource("StyleBoxTexture_mn8w2")
theme_override_styles/panel = SubResource("StyleBoxTexture_21lc8")
theme_override_styles/tab_selected = SubResource("StyleBoxTexture_k08q3")
theme_override_styles/tab_hovered = SubResource("StyleBoxTexture_dklg6")
theme_override_styles/tab_unselected = SubResource("StyleBoxTexture_17le6")
tab_alignment = 2
current_tab = 3
tab_focus_mode = 0
[node name="PRD" type="Panel" parent="TabContainer"]
visible = false
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_7u7p7")
metadata/_tab_index = 0
metadata/_edit_lock_ = true
[node name="select_dev" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 12.0
offset_top = 64.0
offset_right = 12.0
offset_bottom = 64.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="table_ukp_1" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 969.0
offset_top = 27.0
offset_right = 969.0
offset_bottom = 27.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="table_ukp_2" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 969.0
offset_top = 331.0
offset_right = 969.0
offset_bottom = 331.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="PSK" type="Sprite2D" parent="TabContainer/PRD"]
material = ExtResource("3_3syd3")
position = Vector2(1276.25, 29)
scale = Vector2(0.247968, 0.234167)
texture = SubResource("PlaceholderTexture2D_723du")
offset = Vector2(800, 600)
script = SubResource("GDScript_0sobq")
[node name="PSK grad" type="TextureRect" parent="TabContainer/PRD/PSK"]
modulate = Color(0, 0, 0, 1)
self_modulate = Color(0, 0, 0, 1)
show_behind_parent = true
material = SubResource("ShaderMaterial_o7txs")
offset_left = 554.954
offset_top = -30.0
offset_right = 1290.95
offset_bottom = 1134.0
texture = ExtResource("5_i3nvb")
expand_mode = 1
metadata/_edit_lock_ = true
[node name="ray_1" type="Sprite2D" parent="TabContainer/PRD/PSK"]
material = SubResource("ShaderMaterial_dgiai")
position = Vector2(549.221, 560.705)
scale = Vector2(21.8765, 21.6782)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="PSK2" type="Sprite2D" parent="TabContainer/PRD"]
material = ExtResource("3_3syd3")
position = Vector2(1276, 326)
scale = Vector2(0.247968, 0.234167)
texture = SubResource("PlaceholderTexture2D_723du")
offset = Vector2(800, 600)
script = SubResource("GDScript_0sobq")
[node name="PSK grad" type="TextureRect" parent="TabContainer/PRD/PSK2"]
modulate = Color(0, 0, 0, 1)
self_modulate = Color(0, 0, 0, 1)
show_behind_parent = true
material = SubResource("ShaderMaterial_o7txs")
offset_left = 554.954
offset_top = -30.0
offset_right = 1290.95
offset_bottom = 1134.0
texture = ExtResource("5_i3nvb")
expand_mode = 1
metadata/_edit_lock_ = true
[node name="ray_2" type="Sprite2D" parent="TabContainer/PRD/PSK2"]
material = SubResource("ShaderMaterial_2pxu2")
position = Vector2(549.221, 560.705)
scale = Vector2(21.8765, 21.6782)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="Grid" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 616.0
offset_top = 34.0
offset_right = 949.0
offset_bottom = 612.0
[node name="LABEL" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ЛИТЕРА 2! ПРД-Н!"
[node name="Zapret" type="Button" parent="TabContainer/PRD/Grid"]
layout_mode = 2
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ2"
metadata/litera = 48
[node name="Modul" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "Модуляция"
[node name="Label_ray" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "Номер и направление луча"
[node name="Ray_set" type="OptionButton" parent="TabContainer/PRD/Grid"]
layout_mode = 2
[node name="DKM2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ДКМ ДОУ 2"
[node name="FGOZ2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ФГОЗ 2"
[node name="LABEL2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ЛИТЕРА 3! ПРД-Н!"
[node name="Zapret2" type="Button" parent="TabContainer/PRD/Grid"]
layout_mode = 2
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ3"
metadata/litera = 49
[node name="FGOZ3" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ФГОЗ 3"
[node name="DKM3" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ДКМ ДОУ 3"
[node name="Ray_set2" type="OptionButton" parent="TabContainer/PRD/Grid"]
layout_mode = 2
[node name="ControlPanel" type="Panel" parent="TabContainer"]
visible = false
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_tn8m6")
metadata/_tab_index = 1
metadata/_edit_lock_ = true
[node name="lbl_control" type="Label" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 4.0
offset_top = 21.0
offset_right = 624.0
offset_bottom = 52.0
theme_override_font_sizes/font_size = 22
text = "Контроль исправности прибора ПРД-Н"
horizontal_alignment = 1
vertical_alignment = 1
[node name="sockets" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 103.0
offset_right = 840.0
offset_bottom = 293.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="ref_A26" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 5.0
offset_top = 34.0
offset_right = 55.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "ЯУ-07"
metadata/_edit_lock_ = true
[node name="ref_A23" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 53.0
offset_top = 34.0
offset_right = 103.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "ЭМС-Г"
metadata/_edit_lock_ = true
[node name="ref_A24" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 104.0
offset_top = 34.0
offset_right = 154.0
offset_bottom = 184.0
textures = Array[Texture]([])
fname = "УГ"
metadata/_edit_lock_ = true
[node name="ref_A25" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 154.0
offset_top = 33.0
offset_right = 204.0
offset_bottom = 183.0
textures = Array[Texture]([])
fname = "УКП-1"
metadata/_edit_lock_ = true
[node name="ref_A27" parent="TabContainer/ControlPanel/sockets" instance=ExtResource("11_fg7ul")]
offset_left = 205.0
offset_top = 33.0
offset_right = 255.0
offset_bottom = 183.0
textures = Array[Texture]([])
fname = "УКП-2"
metadata/_edit_lock_ = true
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/sockets"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 291.0
offset_bottom = 33.0
text = "Ячейки"
horizontal_alignment = 1
vertical_alignment = 1
metadata/_edit_lock_ = true
[node name="kasseta_fs_kd" parent="TabContainer/ControlPanel" instance=ExtResource("10_tdh2s")]
layout_mode = 0
offset_left = 206.0
offset_top = 311.0
offset_right = 516.0
offset_bottom = 538.0
script = null
[node name="kasseta_p_1" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 96.0
offset_top = 560.0
offset_right = 516.0
offset_bottom = 776.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/kasseta_p_1"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 409.0
offset_bottom = 33.0
text = "Кассета П-1"
horizontal_alignment = 1
vertical_alignment = 1
metadata/_edit_lock_ = true
[node name="ref_A23" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 9.0
offset_top = 34.0
offset_right = 59.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A24" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 59.0
offset_top = 34.0
offset_right = 109.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A25" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 109.0
offset_top = 34.0
offset_right = 159.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A26" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 159.0
offset_top = 34.0
offset_right = 209.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A27" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 209.0
offset_top = 34.0
offset_right = 259.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A28" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 259.0
offset_top = 34.0
offset_right = 309.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A29" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 309.0
offset_top = 34.0
offset_right = 359.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
metadata/_edit_lock_ = true
[node name="ref_A30" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
offset_left = 359.0
offset_top = 34.0
offset_right = 409.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
rname = "A30"
metadata/_edit_lock_ = true
[node name="ref_ZZ3" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 562.0
offset_right = 997.0
offset_bottom = 776.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="label" type="Label" parent="TabContainer/ControlPanel/ref_ZZ3"]
self_modulate = Color(0.996078, 1, 1, 0.627451)
layout_mode = 0
offset_left = 8.0
offset_top = 8.0
offset_right = 453.0
offset_bottom = 206.0
text = "Панель
предохранителей"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Signal_EMS_G" type="NinePatchRect" parent="TabContainer/ControlPanel"]
layout_mode = 0
offset_left = 536.0
offset_top = 311.0
offset_right = 996.0
offset_bottom = 538.0
texture = ExtResource("9_0r2qk")
patch_margin_left = 16
patch_margin_top = 16
patch_margin_right = 16
patch_margin_bottom = 16
[node name="lbl_fname" type="Label" parent="TabContainer/ControlPanel/Signal_EMS_G"]
self_modulate = Color(1, 1, 1, 0.62)
layout_mode = 0
offset_left = 7.0
offset_top = 8.0
offset_right = 448.0
offset_bottom = 33.0
text = "ЭМС-Г"
horizontal_alignment = 1
vertical_alignment = 1
[node name="ref_A22" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 8.0
offset_top = 38.0
offset_right = 58.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A22"
[node name="ref_A23" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 57.0
offset_top = 38.0
offset_right = 107.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A23"
[node name="ref_A26" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 106.0
offset_top = 38.0
offset_right = 156.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A26"
[node name="ref_A27" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 155.0
offset_top = 38.0
offset_right = 205.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A27"
[node name="ref_A28" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 204.0
offset_top = 38.0
offset_right = 254.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A28"
[node name="ref_A29" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 254.0
offset_top = 38.0
offset_right = 304.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A29"
[node name="ref_A31" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 304.0
offset_top = 38.0
offset_right = 354.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "УМ2"
[node name="ref_A32" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 354.0
offset_top = 38.0
offset_right = 404.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "УМ3"
[node name="ref_A33" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 405.0
offset_top = 38.0
offset_right = 455.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
rname = "A33"
[node name="EMS_G" type="Panel" parent="TabContainer"]
visible = false
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_ooo4i")
script = ExtResource("9_g1wia")
metadata/_tab_index = 2
metadata/_edit_lock_ = true
[node name="table1" type="GridContainer" parent="TabContainer/EMS_G"]
layout_mode = 2
offset_left = 27.0
offset_top = 148.0
offset_right = 27.0
offset_bottom = 148.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="load_boadr" type="ColorRect" parent="TabContainer/EMS_G"]
layout_mode = 0
offset_left = 27.0
offset_top = 148.0
offset_right = 1596.0
offset_bottom = 717.0
color = Color(0, 0, 0, 0.596078)
[node name="load" type="Sprite2D" parent="TabContainer/EMS_G/load_boadr"]
material = SubResource("ShaderMaterial_slcfo")
position = Vector2(786, 284.5)
scale = Vector2(24.4688, 8.89063)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="Load_text" type="Label" parent="TabContainer/EMS_G/load_boadr"]
layout_mode = 0
offset_left = 693.0
offset_top = 277.0
offset_right = 849.0
offset_bottom = 316.0
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_shadow_color = Color(0.427493, 0.427493, 0.427493, 1)
theme_override_font_sizes/font_size = 28
text = "Загрузка ..."
[node name="Modul_fs" type="Panel" parent="TabContainer"]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_ooo4i")
script = ExtResource("15_b4pr1")
metadata/_tab_index = 3
metadata/_edit_lock_ = true
[node name="set_space" type="GridContainer" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 211.0
offset_top = 378.0
offset_right = 854.0
offset_bottom = 418.0
columns = 2
[node name="set_ferq" type="Button" parent="TabContainer/Modul_fs/set_space"]
custom_minimum_size = Vector2(100, 0)
layout_mode = 2
text = " Set н/ч"
[node name="write_to_set_freq" type="LineEdit" parent="TabContainer/Modul_fs/set_space"]
custom_minimum_size = Vector2(300, 0)
layout_mode = 2
text = "500"
placeholder_text = "Частота"
[node name="measurement" type="Label" parent="TabContainer/Modul_fs/set_space/write_to_set_freq"]
layout_mode = 0
offset_left = 313.0
offset_top = 2.0
offset_right = 365.0
offset_bottom = 30.0
text = "МГц"
[node name="set_att2" type="Button" parent="TabContainer/Modul_fs/set_space"]
custom_minimum_size = Vector2(100, 0)
layout_mode = 2
text = " Set att"
[node name="write_to_set_att" type="LineEdit" parent="TabContainer/Modul_fs/set_space"]
custom_minimum_size = Vector2(300, 0)
layout_mode = 2
text = "38.75"
placeholder_text = "-38.75 to 0"
[node name="measurement" type="Label" parent="TabContainer/Modul_fs/set_space/write_to_set_att"]
layout_mode = 0
offset_left = 313.0
offset_top = 2.0
offset_right = 351.0
offset_bottom = 30.0
text = "dB"
[node name="manage_panel" type="GridContainer" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 200.0
offset_top = 186.0
offset_right = 805.0
offset_bottom = 308.0
columns = 5
metadata/_edit_lock_ = true
[node name="con" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
text = " Подключение "
[node name="ip_connect" type="Label" parent="TabContainer/Modul_fs/manage_panel/con"]
layout_mode = 0
offset_top = 32.0
offset_right = 118.0
offset_bottom = 55.0
[node name="get_freq" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
text = " Получить н/ч "
[node name="freq_ind" type="Label" parent="TabContainer/Modul_fs/manage_panel/get_freq"]
layout_mode = 0
offset_top = 32.0
offset_right = 106.0
offset_bottom = 55.0
[node name="get_att" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
text = " Получить att "
[node name="att_ind" type="Label" parent="TabContainer/Modul_fs/manage_panel/get_att"]
layout_mode = 0
offset_top = 32.0
offset_right = 105.0
offset_bottom = 55.0
[node name="get_gen_status" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
toggle_mode = true
text = "Переключатель генератора "
[node name="status_ind" type="Label" parent="TabContainer/Modul_fs/manage_panel/get_gen_status"]
layout_mode = 0
offset_top = 33.0
offset_right = 84.0
offset_bottom = 56.0
[node name="dis_con" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
text = "Отключение "
[node name="read" type="LineEdit" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 216.0
offset_top = 818.0
offset_right = 971.0
offset_bottom = 849.0
metadata/_edit_lock_ = true
[node name="fs_connect" type="Label" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 206.0
offset_top = 88.0
offset_right = 377.0
offset_bottom = 111.0
text = "Связь с модулем ФС"
[node name="temp_1" type="Label" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 1015.0
offset_top = 119.0
offset_right = 1102.0
offset_bottom = 152.0
text = "Темп"
[node name="temp_2" type="Label" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 1016.0
offset_top = 156.0
offset_right = 1103.0
offset_bottom = 189.0
text = "Темп"
[node name="temp_3" type="Label" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 1015.0
offset_top = 193.0
offset_right = 1102.0
offset_bottom = 226.0
text = "Темп"
[connection signal="pressed" from="Background/side_panel/select_prd" to="." method="_on_prd_select"]
[connection signal="pressed" from="Background/side_panel/select_control" to="." method="_on_control_button"]
[connection signal="pressed" from="Background/side_panel/select_ems_g" to="." method="_on_emsg_select"]
[connection signal="pressed" from="Background/side_panel/select_fs" to="." method="_on_mfs_select"]
[connection signal="pressed" from="read_isa" to="." method="_on_read_isa_pressed"]
[connection signal="pressed" from="TabContainer/Modul_fs/set_space/set_ferq" to="TabContainer/Modul_fs" method="_on_set_ferq"]
[connection signal="pressed" from="TabContainer/Modul_fs/set_space/set_att2" to="TabContainer/Modul_fs" method="_on_set_att"]
[connection signal="pressed" from="TabContainer/Modul_fs/manage_panel/con" to="TabContainer/Modul_fs" method="_on_start"]
[connection signal="pressed" from="TabContainer/Modul_fs/manage_panel/get_freq" to="TabContainer/Modul_fs" method="_on_send_pressed"]
[connection signal="pressed" from="TabContainer/Modul_fs/manage_panel/get_att" to="TabContainer/Modul_fs" method="_on_get_att"]
[connection signal="toggled" from="TabContainer/Modul_fs/manage_panel/get_gen_status" to="TabContainer/Modul_fs" method="_on_get_status"]
[connection signal="pressed" from="TabContainer/Modul_fs/manage_panel/dis_con" to="TabContainer/Modul_fs" method="_on_dis_con"]

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=47 format=3 uid="uid://cvor2jm4xk3ha"]
[gd_scene load_steps=50 format=3 uid="uid://cvor2jm4xk3ha"]
[ext_resource type="Script" path="res://scripts/PRD.gd" id="1_v273n"]
[ext_resource type="Texture2D" uid="uid://cdxdluvyb5uei" path="res://table/on.png" id="2_dv7xx"]
@@ -7,12 +7,14 @@
[ext_resource type="Texture2D" uid="uid://cfktmk2rowmul" path="res://table/off.png" id="3_qvuyu"]
[ext_resource type="Shader" path="res://Shaders/ray.gdshader" id="4_uy5o2"]
[ext_resource type="Texture2D" uid="uid://62v0xejejuwj" path="res://Web.png" id="5_i3nvb"]
[ext_resource type="Shader" path="res://ray_2.gdshader" id="8_12mng"]
[ext_resource type="Texture2D" uid="uid://cgtg4gbqnuxrc" path="res://nine-patch-round.png" id="9_0r2qk"]
[ext_resource type="Script" path="res://ems_g.gd" id="9_g1wia"]
[ext_resource type="Script" path="res://scripts/ems_g.gd" id="9_g1wia"]
[ext_resource type="Shader" path="res://load.gdshader" id="10_lf1xh"]
[ext_resource type="PackedScene" uid="uid://bdb0bhfu7366l" path="res://kasseta-fs-kd.tscn" id="10_tdh2s"]
[ext_resource type="PackedScene" uid="uid://bnlkbbn7b4a3k" path="res://table/элемент-эмс.tscn" id="11_d60jk"]
[ext_resource type="PackedScene" uid="uid://p2suppildvq0" path="res://table/элемент-в.tscn" id="11_fg7ul"]
[ext_resource type="Script" path="res://scripts/modul_fs.gd" id="15_b4pr1"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_eib3t"]
bg_color = Color(0.223529, 0.168627, 0.223529, 1)
@@ -27,13 +29,13 @@ border_color = Color(0.339047, 0.26316, 0.339004, 1)
border_blend = true
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_gooip"]
bg_color = Color(0.223529, 0.168627, 0.223529, 0.490196)
bg_color = Color(0.143, 0.103, 0.143, 0.799)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_lqhgx"]
bg_color = Color(0, 0, 0, 0.490196)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_148rs"]
bg_color = Color(0, 0, 0, 0.490196)
bg_color = Color(0.141176, 0.101961, 0.141176, 0.8)
border_width_bottom = 4
border_color = Color(0.223529, 0.168627, 0.223529, 1)
border_blend = true
@@ -43,7 +45,7 @@ corner_radius_bottom_right = 2
corner_radius_bottom_left = 2
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ldbvf"]
bg_color = Color(0.223529, 0.168627, 0.223529, 0.490196)
bg_color = Color(0.141176, 0.101961, 0.141176, 0.8)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_h8aei"]
@@ -92,18 +94,6 @@ bg_color = Color(0.356863, 0.278431, 0.356863, 1)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_7u7p7"]
[sub_resource type="Gradient" id="Gradient_jlp41"]
colors = PackedColorArray(0, 0.647059, 0, 1, 0, 0.266667, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_u3yy8"]
gradient = SubResource("Gradient_jlp41")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(1.145, 0)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_otisn"]
texture = SubResource("GradientTexture2D_u3yy8")
[sub_resource type="PlaceholderTexture2D" id="PlaceholderTexture2D_723du"]
size = Vector2(1600, 1200)
@@ -117,7 +107,7 @@ script/source = "extends Sprite2D
[sub_resource type="ShaderMaterial" id="ShaderMaterial_dgiai"]
shader = ExtResource("4_uy5o2")
shader_parameter/color_signal = Color(0.690196, 0.776471, 0, 1)
shader_parameter/turn = 0.785
shader_parameter/turn = 0.735
[sub_resource type="Gradient" id="Gradient_ki0n7"]
@@ -126,6 +116,23 @@ gradient = SubResource("Gradient_ki0n7")
fill_from = Vector2(0.474359, 0.5)
metadata/_snap_enabled = true
[sub_resource type="ShaderMaterial" id="ShaderMaterial_2pxu2"]
shader = ExtResource("8_12mng")
shader_parameter/color_signal = Color(1.29351e-07, 0.19544, 0.0177065, 0.574)
shader_parameter/turn = 0.735
[sub_resource type="Gradient" id="Gradient_jlp41"]
colors = PackedColorArray(0, 0.647059, 0, 1, 0, 0.266667, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_u3yy8"]
gradient = SubResource("Gradient_jlp41")
fill = 1
fill_from = Vector2(0.5, 0.5)
fill_to = Vector2(1.145, 0)
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_otisn"]
texture = SubResource("GradientTexture2D_u3yy8")
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_tn8m6"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_ooo4i"]
@@ -196,6 +203,18 @@ theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "ЭМС Г"
[node name="select_fs" type="Button" parent="Background/side_panel"]
layout_mode = 0
offset_top = 241.0
offset_right = 216.0
offset_bottom = 277.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_font_sizes/font_size = 14
theme_override_styles/pressed = SubResource("StyleBoxFlat_p247y")
toggle_mode = true
text = "Модуль ФС"
[node name="Litera_3_5_7" type="ColorRect" parent="Background"]
visible = false
layout_mode = 0
@@ -251,131 +270,33 @@ theme_override_styles/panel = SubResource("StyleBoxTexture_7u7p7")
metadata/_tab_index = 0
metadata/_edit_lock_ = true
[node name="scroll1" type="ScrollContainer" parent="TabContainer/PRD"]
layout_mode = 0
[node name="select_dev" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 12.0
offset_top = 64.0
offset_right = 12.0
offset_bottom = 64.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="table_ukp_1" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 969.0
offset_top = 27.0
offset_right = 1332.0
offset_bottom = 308.0
[node name="table1" type="GridContainer" parent="TabContainer/PRD/scroll1"]
layout_mode = 2
offset_right = 969.0
offset_bottom = 27.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="scroll2" type="ScrollContainer" parent="TabContainer/PRD"]
layout_mode = 0
[node name="table_ukp_2" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 2
offset_left = 969.0
offset_top = 331.0
offset_right = 1332.0
offset_bottom = 619.0
[node name="table2" type="GridContainer" parent="TabContainer/PRD/scroll2"]
layout_mode = 2
offset_right = 969.0
offset_bottom = 331.0
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="LABEL" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 17.0
offset_right = 764.0
offset_bottom = 40.0
text = "ЛИТЕРА 2! ПРД-Н!"
[node name="Zapret" type="Button" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 45.0
offset_right = 600.0
offset_bottom = 79.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ2"
metadata/litera = 48
[node name="LABEL2" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 329.0
offset_right = 764.0
offset_bottom = 352.0
text = "ЛИТЕРА 3! ПРД-Н!"
[node name="Zapret2" type="Button" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 357.0
offset_right = 600.0
offset_bottom = 391.0
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ3"
metadata/litera = 49
[node name="Label_luch" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 100.0
offset_right = 764.0
offset_bottom = 123.0
text = "Номер и направление луча"
[node name="LUCH" type="OptionButton" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 132.0
offset_right = 600.0
offset_bottom = 163.0
item_count = 2
popup/item_0/text = "Что-то"
popup/item_1/text = "Что-то"
popup/item_1/id = 1
[node name="Modul" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 402.0
offset_right = 626.0
offset_bottom = 425.0
text = "Модуляция"
[node name="DKM2" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 183.0
offset_right = 624.0
offset_bottom = 206.0
text = "ДКМ ДОУ 2"
[node name="DKM3" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 431.0
offset_right = 624.0
offset_bottom = 454.0
text = "ДКМ ДОУ 3"
[node name="FGOZ2" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 206.0
offset_right = 655.0
offset_bottom = 229.0
text = "ФГОЗ 2"
[node name="FGOZ3" type="Label" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 482.0
offset_top = 454.0
offset_right = 655.0
offset_bottom = 477.0
text = "ФГОЗ 3"
[node name="PSK" type="Sprite2D" parent="TabContainer/PRD"]
material = ExtResource("3_3syd3")
position = Vector2(1276.25, 29)
@@ -397,7 +318,7 @@ texture = ExtResource("5_i3nvb")
expand_mode = 1
metadata/_edit_lock_ = true
[node name="ray" type="Sprite2D" parent="TabContainer/PRD/PSK"]
[node name="ray_1" type="Sprite2D" parent="TabContainer/PRD/PSK"]
material = SubResource("ShaderMaterial_dgiai")
position = Vector2(549.221, 560.705)
scale = Vector2(21.8765, 21.6782)
@@ -425,24 +346,75 @@ texture = ExtResource("5_i3nvb")
expand_mode = 1
metadata/_edit_lock_ = true
[node name="ray" type="Sprite2D" parent="TabContainer/PRD/PSK2"]
material = SubResource("ShaderMaterial_dgiai")
[node name="ray_2" type="Sprite2D" parent="TabContainer/PRD/PSK2"]
material = SubResource("ShaderMaterial_2pxu2")
position = Vector2(549.221, 560.705)
scale = Vector2(21.8765, 21.6782)
texture = SubResource("GradientTexture2D_0pk2o")
metadata/_edit_lock_ = true
[node name="select_dev" type="ScrollContainer" parent="TabContainer/PRD"]
[node name="Grid" type="GridContainer" parent="TabContainer/PRD"]
layout_mode = 0
offset_left = 12.0
offset_top = 64.0
offset_right = 375.0
offset_bottom = 96.0
offset_left = 616.0
offset_top = 34.0
offset_right = 949.0
offset_bottom = 612.0
[node name="select_dev" type="GridContainer" parent="TabContainer/PRD/select_dev"]
[node name="LABEL" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ЛИТЕРА 2! ПРД-Н!"
[node name="Zapret" type="Button" parent="TabContainer/PRD/Grid"]
layout_mode = 2
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ2"
metadata/litera = 48
[node name="Modul" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "Модуляция"
[node name="Label_ray" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "Номер и направление луча"
[node name="Ray_set" type="OptionButton" parent="TabContainer/PRD/Grid"]
layout_mode = 2
[node name="DKM2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ДКМ ДОУ 2"
[node name="FGOZ2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ФГОЗ 2"
[node name="LABEL2" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ЛИТЕРА 3! ПРД-Н!"
[node name="Zapret2" type="Button" parent="TabContainer/PRD/Grid"]
layout_mode = 2
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_styles/pressed = SubResource("StyleBoxTexture_otisn")
toggle_mode = true
text = " Запрет СИ3"
metadata/litera = 49
[node name="FGOZ3" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ФГОЗ 3"
[node name="DKM3" type="Label" parent="TabContainer/PRD/Grid"]
layout_mode = 2
text = "ДКМ ДОУ 3"
[node name="Ray_set2" type="OptionButton" parent="TabContainer/PRD/Grid"]
layout_mode = 2
script = ExtResource("2_vmbyo")
metadata/_edit_lock_ = true
[node name="ControlPanel" type="Panel" parent="TabContainer"]
visible = false
@@ -570,7 +542,6 @@ offset_right = 59.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП МАА 1"
metadata/_edit_lock_ = true
[node name="ref_A24" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
@@ -580,7 +551,6 @@ offset_right = 109.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП МАА 2"
metadata/_edit_lock_ = true
[node name="ref_A25" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
@@ -590,7 +560,6 @@ offset_right = 159.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП9-50 1"
metadata/_edit_lock_ = true
[node name="ref_A26" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
@@ -600,7 +569,6 @@ offset_right = 209.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП9-50 2"
metadata/_edit_lock_ = true
[node name="ref_A27" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
@@ -610,7 +578,6 @@ offset_right = 259.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП12-50 1"
metadata/_edit_lock_ = true
[node name="ref_A28" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
@@ -620,7 +587,6 @@ offset_right = 309.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП9-50 3"
metadata/_edit_lock_ = true
[node name="ref_A29" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
@@ -630,7 +596,6 @@ offset_right = 359.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП12-50 2"
metadata/_edit_lock_ = true
[node name="ref_A30" parent="TabContainer/ControlPanel/kasseta_p_1" instance=ExtResource("11_fg7ul")]
@@ -640,7 +605,6 @@ offset_right = 409.0
offset_bottom = 208.0
textures = Array[Texture]([])
self_size = Vector2i(50, 174)
fname = "ИП5-25"
rname = "A30"
metadata/_edit_lock_ = true
@@ -697,7 +661,6 @@ offset_top = 38.0
offset_right = 58.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СЗИ2 от УФ"
rname = "A22"
[node name="ref_A23" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
@@ -706,7 +669,6 @@ offset_top = 38.0
offset_right = 107.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СЗИ3 от УФ"
rname = "A23"
[node name="ref_A26" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
@@ -715,7 +677,6 @@ offset_top = 38.0
offset_right = 156.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ2 от ФС"
rname = "A26"
[node name="ref_A27" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
@@ -724,7 +685,6 @@ offset_top = 38.0
offset_right = 205.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ3 от ФС"
rname = "A27"
[node name="ref_A28" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
@@ -733,7 +693,6 @@ offset_top = 38.0
offset_right = 254.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ2 в УФ"
rname = "A28"
[node name="ref_A29" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
@@ -742,7 +701,6 @@ offset_top = 38.0
offset_right = 304.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "СИ3 в УФ"
rname = "A29"
[node name="ref_A31" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
@@ -751,8 +709,7 @@ offset_top = 38.0
offset_right = 354.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "Модуляция"
rname = "A31"
rname = "УМ2"
[node name="ref_A32" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 354.0
@@ -760,8 +717,7 @@ offset_top = 38.0
offset_right = 404.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "Модуляция"
rname = "A32"
rname = "УМ3"
[node name="ref_A33" parent="TabContainer/ControlPanel/Signal_EMS_G" instance=ExtResource("11_d60jk")]
offset_left = 405.0
@@ -769,7 +725,6 @@ offset_top = 38.0
offset_right = 455.0
offset_bottom = 216.0
self_size = Vector2i(50, 178)
fname = "ФГОЗ"
rname = "A33"
[node name="EMS_G" type="Panel" parent="TabContainer"]
@@ -815,7 +770,158 @@ theme_override_colors/font_shadow_color = Color(0.427493, 0.427493, 0.427493, 1)
theme_override_font_sizes/font_size = 28
text = "Загрузка ..."
[node name="Modul_fs" type="Panel" parent="TabContainer"]
visible = false
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxTexture_ooo4i")
script = ExtResource("15_b4pr1")
metadata/_tab_index = 3
metadata/_edit_lock_ = true
[node name="set_space" type="GridContainer" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 211.0
offset_top = 378.0
offset_right = 854.0
offset_bottom = 418.0
columns = 2
[node name="set_ferq" type="Button" parent="TabContainer/Modul_fs/set_space"]
custom_minimum_size = Vector2(100, 0)
layout_mode = 2
text = " Set н/ч"
[node name="write_to_set_freq" type="LineEdit" parent="TabContainer/Modul_fs/set_space"]
custom_minimum_size = Vector2(300, 0)
layout_mode = 2
text = "500"
placeholder_text = "Частота"
[node name="measurement" type="Label" parent="TabContainer/Modul_fs/set_space/write_to_set_freq"]
layout_mode = 0
offset_left = 313.0
offset_top = 2.0
offset_right = 365.0
offset_bottom = 30.0
text = "МГц"
[node name="set_att2" type="Button" parent="TabContainer/Modul_fs/set_space"]
custom_minimum_size = Vector2(100, 0)
layout_mode = 2
text = " Set att"
[node name="write_to_set_att" type="LineEdit" parent="TabContainer/Modul_fs/set_space"]
custom_minimum_size = Vector2(300, 0)
layout_mode = 2
text = "38.75"
placeholder_text = "-38.75 to 0"
[node name="measurement" type="Label" parent="TabContainer/Modul_fs/set_space/write_to_set_att"]
layout_mode = 0
offset_left = 313.0
offset_top = 2.0
offset_right = 351.0
offset_bottom = 30.0
text = "dB"
[node name="manage_panel" type="GridContainer" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 200.0
offset_top = 186.0
offset_right = 805.0
offset_bottom = 308.0
columns = 5
metadata/_edit_lock_ = true
[node name="con" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
text = " Подключение "
[node name="ip_connect" type="Label" parent="TabContainer/Modul_fs/manage_panel/con"]
layout_mode = 0
offset_top = 32.0
offset_right = 118.0
offset_bottom = 55.0
[node name="get_freq" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
text = " Получить н/ч "
[node name="freq_ind" type="Label" parent="TabContainer/Modul_fs/manage_panel/get_freq"]
layout_mode = 0
offset_top = 32.0
offset_right = 106.0
offset_bottom = 55.0
[node name="get_att" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
text = " Получить att "
[node name="att_ind" type="Label" parent="TabContainer/Modul_fs/manage_panel/get_att"]
layout_mode = 0
offset_top = 32.0
offset_right = 105.0
offset_bottom = 55.0
[node name="get_gen_status" type="Button" parent="TabContainer/Modul_fs/manage_panel"]
layout_mode = 2
toggle_mode = true
text = "Переключатель генератора "
[node name="status_ind" type="Label" parent="TabContainer/Modul_fs/manage_panel/get_gen_status"]
layout_mode = 0
offset_top = 33.0
offset_right = 84.0
offset_bottom = 56.0
[node name="read" type="LineEdit" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 216.0
offset_top = 818.0
offset_right = 971.0
offset_bottom = 849.0
metadata/_edit_lock_ = true
[node name="fs_connect" type="Label" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 206.0
offset_top = 88.0
offset_right = 377.0
offset_bottom = 111.0
text = "Связь с модулем ФС"
[node name="temp_1" type="Label" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 1015.0
offset_top = 119.0
offset_right = 1102.0
offset_bottom = 152.0
text = "Темп"
[node name="temp_2" type="Label" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 1016.0
offset_top = 156.0
offset_right = 1103.0
offset_bottom = 189.0
text = "Темп"
[node name="temp_3" type="Label" parent="TabContainer/Modul_fs"]
layout_mode = 0
offset_left = 1015.0
offset_top = 193.0
offset_right = 1102.0
offset_bottom = 226.0
text = "Темп"
[connection signal="pressed" from="Background/side_panel/select_prd" to="." method="_on_prd_select"]
[connection signal="pressed" from="Background/side_panel/select_control" to="." method="_on_control_button"]
[connection signal="pressed" from="Background/side_panel/select_ems_g" to="." method="_on_emsg_select"]
[connection signal="pressed" from="Background/side_panel/select_fs" to="." method="_on_mfs_select"]
[connection signal="pressed" from="read_isa" to="." method="_on_read_isa_pressed"]
[connection signal="pressed" from="TabContainer/Modul_fs/set_space/set_ferq" to="TabContainer/Modul_fs" method="_on_set_ferq"]
[connection signal="pressed" from="TabContainer/Modul_fs/set_space/set_att2" to="TabContainer/Modul_fs" method="_on_set_att"]
[connection signal="pressed" from="TabContainer/Modul_fs/manage_panel/con" to="TabContainer/Modul_fs" method="_on_start"]
[connection signal="pressed" from="TabContainer/Modul_fs/manage_panel/get_freq" to="TabContainer/Modul_fs" method="_on_send_pressed"]
[connection signal="pressed" from="TabContainer/Modul_fs/manage_panel/get_att" to="TabContainer/Modul_fs" method="_on_get_att"]
[connection signal="toggled" from="TabContainer/Modul_fs/manage_panel/get_gen_status" to="TabContainer/Modul_fs" method="_on_get_status"]

84
ray_2.gdshader Normal file
View File

@@ -0,0 +1,84 @@
shader_type canvas_item;
uniform vec4 color_signal: source_color;
uniform float turn = 0.785;
const float outer_radius = 0.309;
const float inner_radius = 0.72;
const float zoom = 100.0;
const float speed = 2.1;
const float size = 6.0;
const float blur = 0.000001;
const float fill_ratio = 0.03;
float remap(float i_min, float i_max, float o_min, float o_max, float val) {
float t = (val - i_min) / (i_max - i_min);
return o_min + (o_max - o_min) * t;
}
float mask(vec2 uv, float value)
{
float r = atan(uv.x, uv.y);
r = remap(-PI, PI, 0.0, 1.0, r);
r = step(r, value * 0.5);
uv.x = uv.x + 1.0;
uv.x = uv.x * -1.0;
uv.x += 1.0;
float l = atan(uv.x, uv.y);
l = remap(-PI, PI, 0.0, 1.0, l);
l = step(l, value * 0.5);
return r + l ;
}
vec2 rotate_uv(vec2 uv, vec2 pivot, float rotation) {
float cosa = cos(rotation);
float sina = sin(rotation);
uv -= pivot;
return vec2(
cosa * uv.x - sina * uv.y,
cosa * uv.y + sina * uv.x
) + pivot;
}
float circle(vec2 uv, float value)
{
float d = length(uv);
float t = smoothstep(
inner_radius + blur,
inner_radius - blur,
d
) - smoothstep(
outer_radius + blur,
outer_radius - blur,
d
);
return t;
}
void fragment(){
float d = length((UV-0.5)*2.0);
float t = pow(smoothstep(0.9,0.2,d),0.35);
vec2 uv = (UV * 2.0) - 1.0;
vec3 rainbow = 0.5*cos(TIME+UV.xyx+vec3(0,2,4));
vec4 color = vec4(rainbow.rgb,1.0);
vec2 origin = vec2(0.0, 0.0);
color = vec4(color_signal.rgb,1.0);
uv = rotate_uv(uv, origin, turn * TAU);
float c = circle(uv, 0.5);
float mask = mask(uv, fill_ratio);
d = sin(zoom*d - speed*TIME);
//d = abs(d);
d = size/d;
color *= d*t;
COLOR = vec4(color * mask * c);
}

224
scripts/FS.gd Normal file
View File

@@ -0,0 +1,224 @@
extends Node
const CRC32_TABLE: Array = [
0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3,
0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988, 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91,
0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE, 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7,
0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5,
0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172, 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B,
0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940, 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59,
0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116, 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F,
0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924, 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D,
0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A, 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433,
0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818, 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01,
0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457,
0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C, 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65,
0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2, 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB,
0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0, 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9,
0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086, 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F,
0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD,
0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A, 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683,
0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8, 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1,
0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE, 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7,
0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC, 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5,
0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252, 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B,
0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60, 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79,
0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236, 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F,
0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04, 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D,
0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A, 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713,
0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21,
0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E, 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777,
0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C, 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45,
0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2, 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB,
0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0, 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9,
0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF,
0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94, 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D]
## Блок управления ФС
class FGOS:
## Коды выполняемых команд
enum CmdCode {
START_SESSION = 0x0,
READ_CARRIER = 0x1F,
SET_CARRIER = 0x1E,
READ_ATT = 0x1A,
SET_ATT = 0x1B,
READ_GEN_STATUS = 0x05,
SET_GEN_STATUS = 0x06,
BASE_GET_CURRENT_TEMP = 0x36,
}
enum GROUP {
BASE = 0x00,
GENERATOR = 0x03,
RF = 0x06,
}
## Состояние автомата выполнения команды
enum CmdState {
UNCK, ## Номер команды не ининциирован
SEND, ## Буфер готов для отправки
WAIT, ## Ожидание выполнения
DONE, ## Команда выполнена
FAIL ## Команда не выполнена
}
var counter: int = 0
func crc32(data: PackedByteArray) -> int:
var crc = Constants.INIT
for byte in data:
var index = (crc ^ byte) & 0xFF
crc = (Constants.CRC32_TABLE[index] ^ (crc >> 8)) & 0xFFFFFFFF
# Возвращаем только последние 4 байта в обратном порядке
var final_crc = crc ^ Constants.FINAL_XOR_VALUE
return final_crc
func start_session():
counter = 0
var index_size = 0xC
var GROUP = Constants.GROUP.BASE
var CMD = Constants.CMD.START_SESSION
var prep_pack: PackedByteArray = PackedByteArray()
prep_pack.resize(index_size)
prep_pack.encode_u8(0x0, GROUP)
prep_pack.encode_u8(0x1, CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4)
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)
get_gen_state()
get_att_batch()
get_carrier()
func set_gen_state(button_state: bool):
var index_size = 0x1C
var GROUP = Constants.GROUP.GENERATOR
var CMD = Constants.CMD.SET_GEN_STATUS
var prep_pack: PackedByteArray = PackedByteArray()
prep_pack.resize(index_size)
prep_pack.encode_u8(0x0, GROUP)
prep_pack.encode_u8(0x1, CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
prep_pack.encode_u16(0x8, 0x0010)
prep_pack.encode_u32(0xC, button_state) ## MODE GEN STATUS
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4)
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)
get_gen_state()
func set_carrier(wr_freq):
var index_size = 0x1C
var GROUP = Constants.GROUP.BASE
var CMD = Constants.CMD.SET_CARRIER
var prep_pack: PackedByteArray = PackedByteArray()
prep_pack.resize(index_size)
prep_pack.encode_u8(0x0, GROUP)
prep_pack.encode_u8(0x1, CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
prep_pack.encode_u16(0x8, 0x10)
prep_pack.encode_u64(0xC, wr_freq) ## uint64_t freq low dword/high dword
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4)
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)
func set_att_batch(att):
var index_size = 0x1C
var GROUP = Constants.GROUP.RF
var CMD = Constants.CMD.SET_ATT
var prep_pack: PackedByteArray = PackedByteArray()
prep_pack.resize(index_size)
prep_pack.encode_u8(0x0, GROUP)
prep_pack.encode_u8(0x1, CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
prep_pack.encode_u16(0x8, 0x10)
prep_pack.encode_float(0x18, att)
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4)
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)
func get_carrier():
var index_size = 0xC
var GROUP = Constants.GROUP.BASE
var CMD = Constants.CMD.READ_CARRIER
var prep_pack: PackedByteArray = []
prep_pack.resize(index_size) ## 12 в int
prep_pack.encode_u8(0x0,GROUP)
prep_pack.encode_u8(0x1,CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4) ## 16 в int
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)
func get_att_batch():
var index_size = 0xC
var GROUP = Constants.GROUP.RF
var CMD = Constants.CMD.READ_ATT
var prep_pack: PackedByteArray
prep_pack.resize(index_size) ## 12 в int
prep_pack.encode_u8(0x0, GROUP)
prep_pack.encode_u8(0x1, CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4) ## 16 в int
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)
func get_gen_state():
var index_size = 0xC
var GROUP = Constants.GROUP.GENERATOR
var CMD = Constants.CMD.READ_GEN_STATUS
var prep_pack: PackedByteArray
prep_pack.resize(index_size) ## 12 в int
prep_pack.encode_u8(0x0, GROUP)
prep_pack.encode_u8(0x1, CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4) ## 16 в int
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)
func base_get_current_temp():
var index_size = 0xC
var GROUP = Constants.GROUP.BASE
var CMD = Constants.CMD.BASE_GET_CURRENT_TEMP
var prep_pack: PackedByteArray
prep_pack.resize(index_size) ## 12 в int
prep_pack.encode_u8(0x0, GROUP)
prep_pack.encode_u8(0x1, CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4) ## 16 в int
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)

View File

@@ -14,41 +14,62 @@ var isa: Array = []
func _ready() -> void:
# Таблица УКП_1
node_select1 = $TabContainer/PRD/scroll1/table1
node_select1 = $TabContainer/PRD/table_ukp_1
draw_tabl(node_select1, Constants.ROWS_REGS_DATA, Constants.ROWS_REGS_DATA.size())
node_select1.set_columns_min_size([120, 120])
node_select1.set_node_text(0, 0, 'Мощность')
node_select1.set_node_text(1, 0, 'Температура')
# Таблица УКП_2
node_select2 = $TabContainer/PRD/scroll2/table2
node_select2 = $TabContainer/PRD/table_ukp_2
draw_tabl(node_select2, Constants.ROWS_UKP2_DATA, Constants.ROWS_UKP2_DATA.size())
node_select2.set_columns_min_size([120, 120])
node_select2.set_node_text(0, 0, 'Мощность')
node_select2.set_node_text(1, 0, 'Температура')
# Выбор прибора для подключения
var node_select_device = $TabContainer/PRD/select_dev/select_dev
var node_select_device = $TabContainer/PRD/select_dev
draw_tabl(node_select_device, Constants.SELECT_DEVICE, Constants.SELECT_DEVICE.size())
var get_select_device = node_select_device.get_node2(1, 0)
# Заполнение адресов
for i_addr in Constants.ADDRESSES.size():
get_select_device.add_item(Constants.ADDRESSES[i_addr][0])
get_select_device.set_item_metadata(i_addr, Constants.ADDRESSES[i_addr].slice(1,4))
get_select_device.set_item_metadata(i_addr, Constants.ADDRESSES[i_addr].slice(1,7))
get_select_device.connect('item_selected', Callable(self, 'on_btn_select'))
node_select_device.get_node2(0,0).text = 'ПРИБОР'
node_select_device.set_columns_min_size([100, 100])
$TabContainer/PRD/Zapret.connect('toggled', Callable(self, '_on_zapret').bind($TabContainer/PRD/Zapret))
$TabContainer/PRD/Zapret2.connect('toggled', Callable(self, '_on_zapret').bind($TabContainer/PRD/Zapret2))
## Заполненение списка направления луча
for key in Constants.RAY_DICT:
$TabContainer/PRD/Grid/Ray_set.add_item(key)
$TabContainer/PRD/Grid/Ray_set2.add_item(key)
draw_panel_prd(Constants.ADDRESSES[0][3])
$TabContainer/PRD/Grid/Zapret.connect('toggled', Callable(self, '_on_zapret').bind($TabContainer/PRD/Grid/Zapret))
$TabContainer/PRD/Grid/Zapret2.connect('toggled', Callable(self, '_on_zapret').bind($TabContainer/PRD/Grid/Zapret2))
$TabContainer/PRD/Grid/Ray_set.connect('item_selected', Callable(self, '_on_btn_ray'))
$TabContainer/PRD/Grid/Ray_set2.connect('item_selected', Callable(self, '_on_btn_ray2'))
Network.connect('yau_status_line', Callable(self, '_on_yau_status'))
Network.connect('yau_receive', Callable(self, '_on_data_received'))
Network.connect('yau_read_isa', Callable(self, '_on_read_isa'))
func draw_panel_prd(mode) -> void:
for node_path in Constants.NODE_MAP:
var index = Constants.NODE_MAP[node_path]
var node = get_node(node_path)
if node:
var value = node.get("text")
if value != null:
node.text = Constants.SIGNS_PRD[mode][index]
else:
node.fname = Constants.SIGNS_PRD[mode][index]
## From Network status about yau-07
func _on_yau_status(yau_status):
func _on_yau_status(yau_status: bool) -> void:
if yau_status:
$TabContainer/ControlPanel/sockets/ref_A26/light_ind.button_pressed = true
$TabContainer/ControlPanel/sockets/ref_A26/light_ind.disabled = false
@@ -61,14 +82,14 @@ func _on_yau_status(yau_status):
flag_yau_control = false
func _on_read_isa(unit_isa_ports):
func _on_read_isa(unit_isa_ports: Dictionary) -> void:
var isa_data: Dictionary = {}
for key in unit_isa_ports.keys():
isa_data[key] = unit_isa_ports[key]
if isa_data.has(290):
var tmp = isa_data[290]
isa_data.erase(290)
if isa_data.has(0x122):
var tmp = isa_data[0x122]
isa_data.erase(0x122)
var found = false
for i in range(Constants.EMS_G_PORT_DATA_HOLDER.size()):
@@ -81,10 +102,16 @@ func _on_read_isa(unit_isa_ports):
if len(Constants.EMS_G_PORT_DATA_HOLDER) == 32:
emit_signal('read_ems_g_finish')
$ISA.text = 'ISA: ' + str(len(Constants.EMS_G_PORT_DATA_HOLDER))
if isa_data.has(0x106):
$TabContainer/PRD/PSK/ray_1.material.set('shader_parameter/turn', 0.735 + 0.025 * isa_data[0x106])
if isa_data.has(0x108):
$TabContainer/PRD/PSK2/ray_2.material.set('shader_parameter/turn', 0.735 + 0.025 * isa_data[0x108])
## Рисует таблицу
func draw_tabl(tbl, row: Array, count_row: int):
func draw_tabl(tbl: Node, row: Array, count_row: int):
for i_row in count_row:
tbl.add_row(row[i_row])
@@ -101,6 +128,7 @@ func _on_data_received(data_from_yau_07):
## УГ
#node_select1.set_node_text(2, 0, '%d' % dry_contact)
#node_select1.set_node_text(3, 0, '%d' % DKM)
## SOCKETS BOARDS
for i in 4:
@@ -133,7 +161,6 @@ func _on_data_received(data_from_yau_07):
else:
node_power_ind[i].button_pressed = false
node_power_ind[i].disabled = true
#node_select1.set_node_text(3, 0, '%d' % DKM)
## УКП
for i in range(8): ## Мощность от УКП_1
@@ -172,6 +199,10 @@ func _on_emsg_select() -> void:
set_tab_and_buttons(2, 'select_ems_g')
func _on_mfs_select() -> void:
set_tab_and_buttons(3, 'select_fs')
func set_tab_and_buttons(tab_index: int, button_name: String) -> void:
$TabContainer.current_tab = tab_index
var side_panel = $Background/side_panel
@@ -181,15 +212,16 @@ func set_tab_and_buttons(tab_index: int, button_name: String) -> void:
button.button_pressed = (button.name == button_name)
func on_btn_select(intem_from_sector):
var node_select_device = $TabContainer/PRD/select_dev/select_dev
func on_btn_select(intem_from_sector: int) -> void:
var node_select_device = $TabContainer/PRD/select_dev
var get_select_device = node_select_device.get_node2(1, 0)
var meta = get_select_device.get_item_metadata(intem_from_sector)
Network.on_command_change_device(meta)
flag_mode = meta[2]
draw_panel_prd(flag_mode)
func fill_item(node, i_column: int, i_row: int, arr: Dictionary, select: int = 0):
func fill_item(node: Node, i_column: int, i_row: int, arr: Dictionary, select: int = 0) -> void:
var optionbutton = node.get_node2(i_column, i_row) as OptionButton
for key in arr.keys():
var item_text = key + " - " + str(arr[key])
@@ -206,3 +238,13 @@ func _on_zapret(toggled_on: bool, meta) -> void:
func _on_read_isa_pressed() -> void:
Network.read_port_isa([0x122, 0x124, 0x128])
## Регулировка положением луча
func _on_btn_ray(item_from_ray: int) -> void:
Network.write_port_isa(0x106, item_from_ray)
Network.read_port_isa([0x106])
func _on_btn_ray2(item_from_ray: int) -> void:
Network.write_port_isa(0x108, item_from_ray)
Network.read_port_isa([0x108])

View File

@@ -35,18 +35,18 @@ const ROWS_UKP2_DATA: Array = [
[TableNode, TableNode],
[TableNode, TableNode]]
const ADDRESSES: Array = [
['ПРД-Н1', '10.1.1.11', 50011, MODE.PRD_H],
['ПРД-Н2', '10.1.1.21', 50021, MODE.PRD_H],
['ПРД-Н3', '10.1.1.31', 50031, MODE.PRD_H],
['ПРД-Н4', '10.1.1.41', 50041, MODE.PRD_H],
['ПРД-В1', '10.1.1.12', 50012, MODE.PRD_B],
['ПРД-В2', '10.1.1.22', 50022, MODE.PRD_B],
['ПРД-В3', '10.1.1.32', 50032, MODE.PRD_B],
['ПРД-В4', '10.1.1.42', 50042, MODE.PRD_B],
['ПРД-К1', '10.1.1.13', 50013, MODE.PRD_K],
['ПРД-К2', '10.1.1.23', 50023, MODE.PRD_K],
['ПРД-К3', '10.1.1.33', 50033, MODE.PRD_K],
['ПРД-К4', '10.1.1.43', 50043, MODE.PRD_K]]
['ПРД-Н1', '10.1.1.11', 50011, MODE.PRD_H, '10.1.2.18', '10.1.2.19', ''],
['ПРД-Н2', '10.1.1.21', 50021, MODE.PRD_H, '10.1.2.34', '10.1.2.35', ''],
['ПРД-Н3', '10.1.1.31', 50031, MODE.PRD_H, '10.1.2.50', '10.1.2.51', ''],
['ПРД-Н4', '10.1.1.41', 50041, MODE.PRD_H, '10.1.2.66', '10.1.2.67', ''],
['ПРД-В1', '10.1.1.12', 50012, MODE.PRD_B, '10.1.2.20', '10.1.2.21', ''],
['ПРД-В2', '10.1.1.22', 50022, MODE.PRD_B, '10.1.2.36', '10.1.2.37', ''],
['ПРД-В3', '10.1.1.32', 50032, MODE.PRD_B, '10.1.2.52', '10.1.2.53', ''],
['ПРД-В4', '10.1.1.42', 50042, MODE.PRD_B, '10.1.2.68', '10.1.2.69', ''],
['ПРД-К1', '10.1.1.13', 50013, MODE.PRD_K, '10.1.2.22', '10.1.2.23', '10.1.2.17'],
['ПРД-К2', '10.1.1.23', 50023, MODE.PRD_K, '10.1.2.38', '10.1.2.39', '10.1.2.33'],
['ПРД-К3', '10.1.1.33', 50033, MODE.PRD_K, '10.1.2.54', '10.1.2.55', '10.1.2.49'],
['ПРД-К4', '10.1.1.43', 50043, MODE.PRD_K, '10.1.2.70', '10.1.2.71', '10.1.2.65']]
const INPUT_EMS_G: Array = [
'01 :34',
'02 :35',
@@ -86,8 +86,103 @@ const OUT_x128: Array = [
'К',
'0',
'1',]
const RAY_DICT: Array = [
' Контроль',
' -5°',
'',
' 15°',
' 25°',
' 35°',
' 45°',
]
const SIGNS_PRD: Array = [
## ПРК-К
[
' Запрет СИ6',
' Запрет СИ7',
' Запрет СИ1',
'ЛИТЕРА 6! ПРД-К',
'ЛИТЕРА 7! ПРД-К',
'СЗИ6 от УФ',
'СЗИ7 от УФ',
'СИ6 от ФС',
'СИ7 от ФС',
'СИ6 в УФ',
'СИ7 в УФ',
'МАА №1',
'МАА №2',
'ИП9-50 №1',
'ИП9-50 №2',
'ИП12-50 №1',
'ИП9-50 №3',
'ИП12-50 №2',
'ИП5-25',
],
## ПРК-В
[
' Запрет СИ4',
' Запрет СИ5',
'',
'ЛИТЕРА 4! ПРД-В',
'ЛИТЕРА 5! ПРД-В',
'СЗИ4 от УФ',
'СЗИ5 от УФ',
'СИ4 от ФС',
'СИ5 от ФС',
'СИ4 в УФ',
'СИ5 в УФ',
'МАА №1',
'МАА №2',
'ИП9-50 №1',
'ИП9-50 №2',
'ИП12-50 №1',
'-',
'-',
'ИП5-25',
],
## ПРК-Н
[
' Запрет СИ2',
' Запрет СИ3',
'',
'ЛИТЕРА 2! ПРД-Н',
'ЛИТЕРА 3! ПРД-Н',
'СЗИ2 от УФ',
'СЗИ3 от УФ',
'СИ2 от ФС',
'СИ3 от ФС',
'СИ2 в УФ',
'СИ3 в УФ',
'МАА №1',
'МАА №2',
'ИП9-50 №1',
'ИП9-50 №2',
'ИП12-50 №1',
'-',
'-',
'ИП5-25',
],
]
var NODE_MAP = {
'TabContainer/PRD/Grid/Zapret': 0,
'TabContainer/PRD/Grid/Zapret2': 1,
'TabContainer/PRD/Grid/LABEL': 3,
'TabContainer/PRD/Grid/LABEL2': 4,
'TabContainer/ControlPanel/Signal_EMS_G/ref_A22': 5,
'TabContainer/ControlPanel/Signal_EMS_G/ref_A23': 6,
'TabContainer/ControlPanel/Signal_EMS_G/ref_A26': 7,
'TabContainer/ControlPanel/Signal_EMS_G/ref_A27': 8,
'TabContainer/ControlPanel/Signal_EMS_G/ref_A28': 9,
'TabContainer/ControlPanel/Signal_EMS_G/ref_A29': 10,
'TabContainer/ControlPanel/kasseta_p_1/ref_A23': 11,
'TabContainer/ControlPanel/kasseta_p_1/ref_A24': 12,
'TabContainer/ControlPanel/kasseta_p_1/ref_A25': 13,
'TabContainer/ControlPanel/kasseta_p_1/ref_A26': 14,
'TabContainer/ControlPanel/kasseta_p_1/ref_A27': 15,
'TabContainer/ControlPanel/kasseta_p_1/ref_A28': 16,
'TabContainer/ControlPanel/kasseta_p_1/ref_A29': 17,
'TabContainer/ControlPanel/kasseta_p_1/ref_A30': 18,
}
enum MODE {
PRD_K,
PRD_B,
@@ -117,6 +212,64 @@ enum STATE {
READ_ISA,
WRITE_ISA,
DONE,
IDLE,
SEND,
}
var EMS_G_PORT_DATA_HOLDER: Array = []
# Таблица CRC-32 для модуля ФС
const CRC32_TABLE: Array = [
0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3,
0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988, 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91,
0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE, 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7,
0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5,
0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172, 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B,
0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940, 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59,
0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116, 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F,
0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924, 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D,
0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A, 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433,
0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818, 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01,
0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457,
0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C, 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65,
0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2, 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB,
0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0, 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9,
0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086, 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F,
0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD,
0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A, 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683,
0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8, 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1,
0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE, 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7,
0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC, 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5,
0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252, 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B,
0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60, 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79,
0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236, 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F,
0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04, 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D,
0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A, 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713,
0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21,
0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E, 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777,
0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C, 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45,
0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2, 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB,
0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0, 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9,
0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF,
0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94, 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D]
const PORT_FS = 1201
const INIT: int = 0xFFFFFFFF
const FINAL_XOR_VALUE: int = 0x00000000
enum GROUP {
BASE = 0x00,
GENERATOR = 0x03,
RF = 0x06,
}
enum CMD {
START_SESSION = 0x0,
READ_CARRIER = 0x1F,
SET_CARRIER = 0x1E,
READ_ATT = 0x1A,
SET_ATT = 0x1B,
READ_GEN_STATUS = 0x05,
SET_GEN_STATUS = 0x06,
BASE_GET_CURRENT_TEMP = 0x36,
}

View File

@@ -55,8 +55,8 @@ func _ready() -> void:
draw_tabl(node_select1, EMS_G_TABLE, EMS_G_TABLE.size())
node_select1.get_node2(1, 1).text = 'x3_OUT:GND'
node_select1.get_node2(0, 2).text = 'x3_IN :GND'
node_select1.get_node2(1, 1).text = 'x3_ВЫХ:GND'
node_select1.get_node2(0, 2).text = 'x3_ВХ :GND'
for i in Constants.INPUT_EMS_G.size():
node_select1.get_node2(0, i+shift+1).text = Constants.INPUT_EMS_G[i]

213
scripts/modul_fs.gd Normal file
View File

@@ -0,0 +1,213 @@
extends Node
var counter: int = 0
const INDEX_SIZE = 0xC
func _ready() -> void:
pass
func _process(_delta: float) -> void:
pass
func _enter_tree() -> void:
# Подключаем сигналы к методам
Network.connect('data_send', _on_data_send)
Network.connect('data_received', _on_data_received)
Network.connect('port_opened', _on_port_changed.bind(Color.GREEN))
Network.connect('port_closed', _on_port_changed.bind(Color.GRAY))
Network.connect('port_error', _on_port_changed.bind(Color.RED))
func _on_port_changed(port_name: String, color: Color) -> void:
$manage_panel/con/ip_connect.text = port_name
$fs_connect.self_modulate = color
func _on_data_send():
pass
func _on_data_received(data: PackedByteArray):
var GRP = data.decode_u8(0x0)
var CMD = data.decode_u8(0x1)
match CMD:
Constants.CMD.READ_CARRIER:
if GRP == Constants.GROUP.BASE:
$manage_panel/get_freq/freq_ind.text = str(data.decode_u64(0xC)) + ' Гц'
Constants.CMD.READ_ATT:
if GRP == Constants.GROUP.RF:
$manage_panel/get_att/att_ind.text = '-' + str(data.decode_float(0x18)) + ' dB'
Constants.CMD.READ_GEN_STATUS:
if GRP == Constants.GROUP.GENERATOR:
if data.decode_u32(0xC) == 0:
$manage_panel/get_gen_status/status_ind.text = 'Включен'
$manage_panel/get_gen_status/status_ind.modulate = Color.GREEN
else:
$manage_panel/get_gen_status/status_ind.text = 'Выключен'
$manage_panel/get_gen_status/status_ind.modulate = Color.RED
Constants.CMD.BASE_GET_CURRENT_TEMP:
if GRP == Constants.GROUP.BASE:
$temp_1.text = '%.2f' % data.decode_float(0xC) + ''
$temp_2.text = str(data.decode_float(0x10)) + ''
$temp_3.text = str(data.decode_float(0x14)) + ''
$read.text = str(data.hex_encode())
func _form_packet(group, cmd, data = null):
var packet = PackedByteArray()
packet.resize(INDEX_SIZE)
packet.encode_u8(0, group)
packet.encode_u8(1, cmd)
packet.encode_u32(4, counter)
counter += 1
if data:
packet.encode_float(8, data)
var crc = crc32(packet)
packet.resize(INDEX_SIZE + 4)
packet.encode_u32(INDEX_SIZE, crc)
return packet
func start_session():
counter = 0
var index_size = 0xC
var GROUP = Constants.GROUP.BASE
var CMD = Constants.CMD.START_SESSION
var prep_pack: PackedByteArray = PackedByteArray()
prep_pack.resize(index_size)
prep_pack.encode_u8(0x0, GROUP)
prep_pack.encode_u8(0x1, CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4)
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)
get_gen_state()
get_att_batch()
get_carrier()
func set_gen_state(button_state: bool):
var index_size = 0x1C
var GROUP = Constants.GROUP.GENERATOR
var CMD = Constants.CMD.SET_GEN_STATUS
var prep_pack: PackedByteArray = PackedByteArray()
prep_pack.resize(index_size)
prep_pack.encode_u8(0x0, GROUP)
prep_pack.encode_u8(0x1, CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
prep_pack.encode_u16(0x8, 0x0010)
prep_pack.encode_u32(0xC, button_state) ## MODE GEN STATUS
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4)
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)
get_gen_state()
func set_carrier(wr_freq):
var index_size = 0x1C
var GROUP = Constants.GROUP.BASE
var CMD = Constants.CMD.SET_CARRIER
var prep_pack: PackedByteArray = PackedByteArray()
prep_pack.resize(index_size)
prep_pack.encode_u8(0x0, GROUP)
prep_pack.encode_u8(0x1, CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
prep_pack.encode_u16(0x8, 0x10)
prep_pack.encode_u64(0xC, wr_freq) ## uint64_t freq low dword/high dword
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4)
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)
func set_att_batch(att):
var index_size = 0x1C
var GROUP = Constants.GROUP.RF
var CMD = Constants.CMD.SET_ATT
var prep_pack: PackedByteArray = PackedByteArray()
prep_pack.resize(index_size)
prep_pack.encode_u8(0x0, GROUP)
prep_pack.encode_u8(0x1, CMD)
prep_pack.encode_u32(0x4, counter)
counter += 1
prep_pack.encode_u16(0x8, 0x10)
prep_pack.encode_float(0x18, att)
var crc = crc32(prep_pack)
prep_pack.resize(index_size + 4)
prep_pack.encode_u32(index_size, crc)
Network.command_stack.append(prep_pack)
func get_carrier():
var packet = _form_packet(Constants.GROUP.BASE, Constants.CMD.READ_CARRIER)
Network.command_stack.append(packet)
func get_att_batch():
var packet = _form_packet(Constants.GROUP.RF, Constants.CMD.READ_ATT)
Network.command_stack.append(packet)
func get_gen_state():
var packet = _form_packet(Constants.GROUP.GENERATOR, Constants.CMD.READ_GEN_STATUS)
Network.command_stack.append(packet)
func base_get_current_temp():
var packet = _form_packet(Constants.GROUP.BASE, Constants.CMD.BASE_GET_CURRENT_TEMP)
Network.command_stack.append(packet)
func crc32(data: PackedByteArray) -> int:
var crc = Constants.INIT
for byte in data:
var index = (crc ^ byte) & 0xFF
crc = (Constants.CRC32_TABLE[index] ^ (crc >> 8)) & 0xFFFFFFFF
# Возвращаем только последние 4 байта в обратном порядке
var final_crc = crc ^ Constants.FINAL_XOR_VALUE
return final_crc
func _on_send_pressed() -> void:
get_carrier()
func _on_get_att() -> void:
get_att_batch()
func _on_start():
#if ServerNode.connect_fs():
start_session()
base_get_current_temp()
func _on_get_status(toggled_btn):
var inverted_state = not toggled_btn
set_gen_state(inverted_state)
get_gen_state()
func _on_set_ferq():
var freq = int($set_space/write_to_set_freq.get_text()) * 1_000_000
set_carrier(freq)
func _on_set_att():
var att = float($set_space/write_to_set_att.get_text())
set_att_batch(att)

View File

@@ -1,26 +1,41 @@
extends Node
# ЯУ-07 Блок
var unit = Yau07.YaU07.new('ЯУ07')
var soc_unicast: Socket
var soc_brodcast: Socket
var ip_address: String = Constants.ADDRESSES[0][1]
var ip_port: int = Constants.ADDRESSES[0][2]
var ip_address_yau: String = Constants.ADDRESSES[0][1]
var ip_port_yau: int = Constants.ADDRESSES[0][2]
var timeout: float = Yau07.ONLINE_TIMEOUT
var last_update_time: float = 0.0
var broadcast_packet: PackedByteArray
var state = Constants.STATE.WAIT
var send_array: Array = []
# ФС Блок
var ip_fs_1: String = Constants.ADDRESSES[0][4]
var command_stack: Array
var state_fs = Constants.STATE.IDLE
var client_fs_1: StreamPeer
var peerstream: PacketPeer
signal yau_status_line(_status) ## Вызывается когда меняется состояние связи с ячейкой
signal yau_receive(_data_from_yau) ##
signal yau_receive(_data_from_yau)
signal yau_read_isa(_unit_isa_ports)
signal data_send()
signal data_received(data:PackedByteArray)
signal port_opened(port_name: String)
signal port_closed(port_name: String)
signal port_error(error_str: String)
## Класс для отправки данных в сокет
class Socket extends PacketPeerUDP:
func send_to(addr: String, port: int, data: PackedByteArray):
self.set_dest_address(addr, port)
self.put_packet(data)
func poll_receive(sock: Socket) -> bool: ## Приёмник
if timeout - last_update_time > 0:
@@ -29,7 +44,7 @@ func poll_receive(sock: Socket) -> bool: ## Приёмник
var addr_receive = sock.get_packet_ip()
var port_receive = sock.get_packet_port()
if (ip_address == addr_receive) and (ip_port == port_receive):
if (ip_address_yau == addr_receive) and (ip_port_yau == port_receive):
last_update_time = 0.0
unit.parse(broadcast_packet)
var data_from_yau_07 = unit.status
@@ -40,6 +55,19 @@ func poll_receive(sock: Socket) -> bool: ## Приёмник
return false
func work_proc():
client_fs_1.poll()
var peer = peerstream.get_stream_peer()
if not peer:
return
var peer_len_data = peer.get_available_bytes()
if peer_len_data > 0:
emit_signal("port_opened", ip_fs_1) # Эмитируем сигнал об открытии порта
get_data_fs(peer)
else:
pass
func _ready() -> void:
# Привязка для принятия широковещательного канала
soc_brodcast = Socket.new()
@@ -50,23 +78,33 @@ func _ready() -> void:
soc_unicast = Socket.new()
rc = soc_unicast.bind(Constants.UNICAST_PORT, Constants.UNICAST_ADDRESS)
if rc != OK:
print_debug('Ошибка: неудачная привязка адреса: ', ip_address)
print_debug('Ошибка: неудачная привязка адреса: ', ip_address_yau)
unit.connect('line_changed', Callable(self, 'on_line_changed'))
unit.connect('command_fail', Callable(self, 'on_command_fail'))
connect_fs()
func _process(delta: float) -> void:
if client_fs_1:
## State fs machine
if (state_fs == Constants.STATE.IDLE) or (state_fs == Constants.STATE.DONE):
if command_stack:
var pack = command_stack.pop_front()
send_data(pack)
state_fs = Constants.STATE.SEND
work_proc()
last_update_time += delta
poll_receive(soc_brodcast)
poll_receive(soc_unicast)
state_machine()
state_machine_yau07()
match unit.process(delta):
Error.OK: soc_unicast.send_to(ip_address, ip_port, unit.tx_data.slice(0, unit.tx_len))
Error.OK: soc_unicast.send_to(ip_address_yau, ip_port_yau, unit.tx_data.slice(0, unit.tx_len))
Error.FAILED: print_debug('Ошибка отправки данных')
func state_machine():
func state_machine_yau07():
var fl_done = (unit.cmd_state == unit.CmdState.DONE or unit.cmd_state == unit.CmdState.FAIL)
## Режим ожидания
match state:
@@ -90,22 +128,19 @@ func state_machine():
if fl_done:
emit_signal('yau_read_isa', unit.isa_ports)
state = Constants.STATE.WAIT
# Записать команду в ИСА
func read_port_isa(read_ports: Array) -> void:
send_array.append(['rd', read_ports])
# Прочитать данные из порта от ИСА
func write_port_isa(port_isa: int, data_isa: int) -> void:
var write_data: Dictionary = {port_isa: data_isa}
send_array.append(['wr', write_data])
func on_command_change_device(meta_device):
ip_address = meta_device[0]
ip_port = meta_device[1]
func on_line_changed(_unit) -> void:
emit_signal('yau_status_line', unit.online)
@@ -113,3 +148,50 @@ func on_line_changed(_unit) -> void:
## Ессли отсутствует подключение к ячейке ЯУ-07
func on_command_fail(_unit) -> void:
print_debug('Command send fail')
func on_command_change_device(meta_device):
ip_address_yau = meta_device[0]
ip_port_yau = meta_device[1]
ip_fs_1 = meta_device[3]
#ip_fs_2 = meta_device[4]
#ip_fs_3 = meta_device[5]
connect_fs()
# Подключится к модулю ФС
func connect_fs():
client_fs_1 = StreamPeerTCP.new()
peerstream = PacketPeerStream.new()
var rc = client_fs_1.connect_to_host(ip_fs_1, Constants.PORT_FS)
if rc!= Error.OK:
emit_signal("port_error", ip_fs_1)
else:
peerstream.set_stream_peer(client_fs_1)
# Получить данные от ФС
func get_data_fs(peer):
var rx_data: PackedByteArray
var len_data_in_buf = peer.get_available_bytes()
if len_data_in_buf > 0:
rx_data.append_array(peer.get_data(len_data_in_buf)[1])
emit_signal("data_received", rx_data)
if state_fs == Constants.STATE.SEND:
state_fs = Constants.STATE.DONE
# Отправить команду для ФС
func send_data(data_to_sand):
if client_fs_1.get_status() == 2:
var peer = peerstream.get_stream_peer()
if peer:
peer.put_data(data_to_sand)
emit_signal("data_send")
# Разорвать соединение с ФС
#func disconnect_fs():
#client_fs_1.disconnect_from_host()
#state_fs = Constants.STATE.IDLE
#peerstream = PacketPeerStream.new()

View File

@@ -104,7 +104,7 @@ offset_top = 8.0
offset_right = 50.0
offset_bottom = 34.0
theme_override_colors/font_color = Color(0.991, 0.991, 0.991, 0.675)
theme_override_font_sizes/font_size = 17
theme_override_font_sizes/font_size = 16
text = "A1"
horizontal_alignment = 1
vertical_alignment = 1