Доработка. Добавлена возможность изменять ширину полосы излучения из настроек.
This commit is contained in:
@@ -63,7 +63,8 @@ const SETTING_TABLE = [
|
||||
['уарэп-трасса', TableEdit, TableEdit, 'IP-адрес для связи с Трассой [<адрес этого узла>, <адрес удалённого узла>, <порт этого узла>, <порт удалённого узла>]'],
|
||||
['Включить работу по своим целям', TableEdit, TableToggle, 'Разрешает работу в секторе со своей целью'],
|
||||
['Список своих протоколов', TableEdit, TableEdit, 'Список протоколов целей, по которым запрещено работать' ],
|
||||
['Цвет кнопки \"Подавление\"', TableEdit, TableColorPick, 'Цвет кнопки. Введено по требованию ПЗ' ] ]
|
||||
['Цвет кнопки \"Подавление\"', TableEdit, TableColorPick, 'Цвет кнопки. Введено по требованию ПЗ' ],
|
||||
['Коэффициент ширины полосы излучения', TableEdit, TableEdit, 'Изменение ширины полосы излучения помехи в зависимости от цели'], ]
|
||||
|
||||
## TODO: Придумать как избавиться от индексов
|
||||
## Индексы строк таблицы.
|
||||
|
||||
@@ -94,6 +94,8 @@ const INTERFER_OFF = 'off'
|
||||
const INTERFER_IQFILE = 'IQ-файл'
|
||||
const POW_DEFAULT: float = 50.0
|
||||
const PERIOD_DEFAULT = 7.5
|
||||
const MIN_WIDTH_COEF = 1.0
|
||||
|
||||
var msg6_num: int = 0 ## Счётчик сообщений "тип 6"
|
||||
var msg8_num: int = 0 ## Счётчик сообщений "тип 8"
|
||||
var id_array: Array ## Массив id воздействий.
|
||||
@@ -109,6 +111,7 @@ var gos_flag = true ## Флаг работать п
|
||||
var gos_protocols: PackedStringArray ## Список протоколов своих целей
|
||||
var gos_nmfs: Array ## Список номеров блоков ФС для которых запрещена работа
|
||||
var fs_closed: Dictionary ## Словарь секторов запрета
|
||||
var width_coef: float = 1.5 ## Коэффициент расширения полосы
|
||||
|
||||
|
||||
## Режимы работы АФСП и БПО (Протокол ТНИИС-СТЦ, пункт 2.5.10)
|
||||
@@ -405,7 +408,7 @@ func on_interfer_create(interfer_name, sel_threats, fs_arr, power, u, ecms) -> v
|
||||
kni += 360.0
|
||||
var id = item.id
|
||||
param['freq'] = item.freq
|
||||
param['width'] = item.width * 1.5
|
||||
param['width'] = item.width * width_coef
|
||||
if (item.rkrp != '') and item.fflags.rkrp and auto_enabled:
|
||||
var krp = get_krp(item)
|
||||
if krp != '':
|
||||
@@ -594,7 +597,7 @@ func on_threats_update(threat, ecms, unit_caps):
|
||||
ecm = ecms[ecm_i]
|
||||
ecm.priority = threat.priority
|
||||
ecm.params['freq'] = threat.freq
|
||||
var width = threat.width * 1.5
|
||||
var width = threat.width * width_coef
|
||||
ecm.params['width'] = width
|
||||
check_width(ecm.params)
|
||||
if (threat.rkrp != '') and threat.fflags.rkrp and auto_enabled:
|
||||
@@ -634,9 +637,9 @@ func set_rparams(threat: threats.Threat, params: Dictionary):
|
||||
else:
|
||||
params['freq'] = threat.freq
|
||||
if threat.rparams.has('width'):
|
||||
params['width'] = threat.rparams['width'] * 1.5
|
||||
params['width'] = threat.rparams['width'] * width_coef
|
||||
else:
|
||||
params['width'] = threat.width * 1.5
|
||||
params['width'] = threat.width * width_coef
|
||||
check_width(params)
|
||||
if threat.rparams.has('filename'):
|
||||
params['filename'] = threat.rparams['filename']
|
||||
@@ -693,6 +696,9 @@ func on_settings_changed():
|
||||
gos_flag = ProjectSettings.get_setting('application/config/Включить работу по своим целям', true)
|
||||
var protocols: String = ProjectSettings.get_setting('application/config/Список своих протоколов', '')
|
||||
gos_protocols = protocols.split(",", true)
|
||||
width_coef = float(ProjectSettings.get_setting('application/config/Коэффициент ширины полосы излучения', 1.5))
|
||||
if width_coef < MIN_WIDTH_COEF:
|
||||
width_coef = MIN_WIDTH_COEF
|
||||
|
||||
|
||||
func call_ecm_proc(ecm):
|
||||
|
||||
Reference in New Issue
Block a user