Доработка. WIP Отображение кластеров на шкале. Рефактор

This commit is contained in:
sasha80
2026-03-23 08:24:09 +03:00
parent 212ce180d1
commit 528566e949

View File

@@ -100,17 +100,18 @@ func _ready() -> void:
## Обрабатывает событие [b]data_received[/b]
func on_data_received(data: Dictionary, nm: StringName):
yems_data_info[nm].merge(data, true)
map_yems_data_to_table(nm)
map_yems_data_to_scale(nm)
var ctable: GDTable = $'таблица/сетка'
var claster_scale: = name_to_scale[nm] as GridContainer
var unit_data = yems_data_info.get(nm)
if unit_data:
var indexes: = cnames_table[nm] # Идексы строк в таблице
map_yems_data_to_table(ctable, unit_data, indexes)
map_yems_data_to_scale(claster_scale, unit_data)
## Отображает кластеры в таблицу
## [param nm] - имя устройства
func map_yems_data_to_table(nm: StringName):
var unit_data = yems_data_info.get(nm)
if not unit_data: return # Данных ещё нет
var ctable: GDTable = $'таблица/сетка'
var indexes: = cnames_table[nm] # Идексы строк таблицы для кластеров заданного устройства
func map_yems_data_to_table(ctable: GDTable, unit_data: Dictionary, indexes: Dictionary):
# Обойти все кластеры устройства
for cls in unit_data.mcls:
# Строки для заполнения ряда
@@ -133,10 +134,7 @@ func map_yems_data_to_table(nm: StringName):
## Отображает кластеры на шкале
## [param nm] - имя устройства
func map_yems_data_to_scale(nm: StringName):
var unit_data = yems_data_info.get(nm)
if not unit_data: return # Данных ещё нет
var claster_scale: = name_to_scale[nm] as GridContainer
func map_yems_data_to_scale(claster_scale: GridContainer, unit_data: Dictionary):
# Обойти все кластеры устройства
for cls in unit_data.mcls:
var c: = remap(cls.cfb, freq_min, freq_max, 0.0, 1.0)