Доработка. Изменён ip трасса на настоящий.
Доработка. Зеленение ВК-110.
Доработка. Визуализация помехи.
Доработка. Управление отображением помехи.
Доработка. Переименование вкладки ЭМС 2 в ЭМС ТР
This commit is contained in:
MaD_CaT
2025-10-15 11:17:15 +03:00
committed by sasha80
parent e471df0188
commit 979826b343
5 changed files with 26 additions and 3 deletions

View File

@@ -36,6 +36,8 @@ config/kems_files_path="user://kems/"
config/emsg_files_path="user://emsg/"
config/settings_path="user://settings.json"
config/unit_bpo_request_period=20.0
interfer/emit_color=Color(0.58, 0.471, 0.51, 0.2)
interfer/emit_sel_color=Color(1, 1, 1, 1)
[autoload]

View File

@@ -76,6 +76,8 @@ func control_vk() -> void:
else:
$ref_uf/ref_bu1/ref_A8_BU.state = STATE_VAL.ERROR
$ref_uf/ref_bu1/ref_A8_BU.state = STATE_VAL.GOOD ## заглушка для зеленения ВК-110
func control_ems(status: Array) -> void:
$ref_uf/ref_kassetav13/ref_A4_KEMS.state = STATE_VAL.GOOD if ((status[0] >> 0) & 1) and ((status[0] >> 3) & 1) else STATE_VAL.ERROR

View File

@@ -69,7 +69,7 @@ visible = false
layout_mode = 2
metadata/_tab_index = 3
[node name="ЭМС2" parent="tab_switch" instance=ExtResource("6_rsg03")]
[node name="ЭМС ТГ" parent="tab_switch" instance=ExtResource("6_rsg03")]
visible = false
layout_mode = 2
metadata/_tab_index = 4

View File

@@ -18,6 +18,7 @@ class_name work extends Panel
@export var strob_min_width: float ## Минимальная ширина строба по углу.
@export var window_0_id: int ## Идетификатор окна. Присваивается godot от 0 до количества созданных окон.
const SVK_EMIT = 1 ## Код состояния выполнения помехи - выполняется
var drag_button: MouseButton ## Кнопка мыши нажатая при перетаскивании.
var drag_fsm: DragFSM = DragFSM.IDLE ## Текущее состояние перетаскивания.
@@ -33,6 +34,8 @@ var view_mode: MapViewMode ## Режим отображения к
var thrs_dict: Dictionary ## Ссылка на словарь целей
var color_ecm: Color
var color_select: Color
var color_emit: Color
var color_emit_sel: Color
var course = 0.0 ## Курс корабля
@@ -48,6 +51,7 @@ const map_sizes = [
var fs_band = prd.FS_BAND_RTO ## Текущий режим блоков ФС по частоте
var fs_selected: Dictionary ## Словарь выбранных секторов
var fs_active: Dictionary ## Словарь секторов назначенных на подавление
var fs_emit: Dictionary ## Словарь секторов назначенных на подавление
## Состояние перетаскивания.
enum DragFSM {
@@ -85,10 +89,14 @@ func on_enter_tree() -> void: call_deferred('on_button_strobe_pressed')
func on_settings_changed():
color_emit_sel = ProjectSettings.get_setting('application/interfer/emit_sel_color', Color(1.0, 1.0, 1.0, 1.0))
color_emit = ProjectSettings.get_setting('application/interfer/emit_color', Color(0.58, 0.47, 0.51, 1.0))
color_ecm = ProjectSettings.get_setting('application/interfer/interfer_color', Color(0.58, 0.47, 0.51, 1.0))
color_select = ProjectSettings.get_setting('application/interfer/select_color', Color(1.0, 1.0, 1.0, 1.0))
color_select *= Color(1.0, 1.0, 1.0, 0.0)
color_ecm *= Color(1.0, 1.0, 1.0, 0.0)
color_emit_sel *= Color(1.0, 1.0, 1.0, 0.2)
## Обработчик сигнала изменения списка целей.
@@ -258,6 +266,7 @@ func on_interfer_off_all():
bip.set_ecm_visible(false)
bip.set_track_visible(false)
fs_active.clear()
fs_emit.clear()
update_fs_colors()
@@ -468,6 +477,10 @@ func set_fs_color(ecm):
fs_active[prd.fs_caps_id[ecm.nmfs]] = null
else:
fs_active.erase(prd.fs_caps_id[ecm.nmfs])
if ecm.svk == SVK_EMIT:
fs_emit[prd.fs_caps_id[ecm.nmfs]] = null
else:
fs_emit.erase(prd.fs_caps_id[ecm.nmfs])
update_fs_colors()
@@ -475,8 +488,13 @@ func update_fs_colors():
var fs_colors = $canvas.fs_default_colors.duplicate()
for key in fs_active.keys():
fs_colors[key] = color_ecm
for key in fs_emit.keys():
fs_colors[key] = color_emit
for key in fs_selected.keys():
fs_colors[key] = color_select
if key in fs_emit:
fs_colors[key] = color_emit_sel
else:
fs_colors[key] = color_select
$canvas.set_band_colors(fs_colors)
@@ -514,6 +532,7 @@ func set_btns_disabled(value: bool, btn):
func on_fs_update_color(ecms):
fs_active.clear()
fs_emit.clear()
for ecm in ecms.values():
set_fs_color(ecm)
update_fs_colors()

View File

@@ -10,7 +10,7 @@ var UnitProfiles: Dictionary[StringName, Array] = { \
'уарэп-яу07-частный': ['yau07rx', ['10.1.1.2', 50002, false, true], 'IP-адрес для приёма частных сообщений от ЯУ-07'],
'уарэп-яу07-общий': ['yau07rx', ['*', 50000, true, true], 'IP-адрес для приёма широковещательных сообщений от ЯУ-07'],
'уарэп-капсрпб': ['capsrpb', ['127.0.0.1', '127.0.0.1', 42023, 42022, false, true], 'IP-адрес для обмена сообщениями со службой \"МП550\" (СТЦ)'],
'уарэп-трасса': ['trassa', ['127.0.0.1', '127.0.0.1', 50200, 10004, false, true], 'IP-адрес для обмена сообщениями с \"Трассой\"'],
'уарэп-трасса': ['trassa', ['192.168.1.23', '192.168.1.34', 50200, 10004, false, true], 'IP-адрес для обмена сообщениями с \"Трассой\"'],
'уарэп-эмс': ['yau07tx', ['10.1.1.52', 50052, false, false], 'IP-адрес прибора УФ'],
'уарэп-яу07-2в': ['yau07tx', ['10.1.1.22', 50022, false, false], 'IP-адрес прибора ПРД-В2'],
'уарэп-яу07-2н': ['yau07tx', ['10.1.1.21', 50021, false, false], 'IP-адрес прибора ПРД-Н2'],