Исправление. Лишний цикл итераций

This commit is contained in:
sasha80
2026-03-31 15:20:24 +03:00
parent 4d0ea0f84e
commit ef063645ee

View File

@@ -422,35 +422,35 @@ func find_inters() -> Array:
var freq_max1 = cfb + wfb var freq_max1 = cfb + wfb
all_clusters.append([nm, cls.cname, freq_min1, freq_max1, cls.txe, cls.rxe]) all_clusters.append([nm, cls.cname, freq_min1, freq_max1, cls.txe, cls.rxe])
for i in all_clusters.size(): for i in all_clusters.size():
var cl1 = all_clusters[i] var cl1 = all_clusters[i]
var dev1 = cl1[0] var dev1 = cl1[0]
var name1 = cl1[1] var name1 = cl1[1]
var min1 = cl1[2] var min1 = cl1[2]
var max1 = cl1[3] var max1 = cl1[3]
var txe1 = cl1[4] var txe1 = cl1[4]
var rxe1 = cl1[5] var rxe1 = cl1[5]
# Сравниваем текущий кластер со всеми последующими, # Сравниваем текущий кластер со всеми последующими,
# чтобы избежать дублей и самопересечений # чтобы избежать дублей и самопересечений
for j in all_clusters.size(): for j in all_clusters.size():
var cl2 = all_clusters[j] var cl2 = all_clusters[j]
var dev2 = cl2[0] var dev2 = cl2[0]
var name2 = cl2[1] var name2 = cl2[1]
var min2 = cl2[2] var min2 = cl2[2]
var max2 = cl2[3] var max2 = cl2[3]
var txe2 = cl2[4] var txe2 = cl2[4]
var rxe2 = cl2[5] var rxe2 = cl2[5]
# Если нет пары TR(RT) то пропускаем эту комбинацию # Если нет пары TR(RT) то пропускаем эту комбинацию
if not ((txe1 and rxe2) or (rxe1 and txe2)): if not ((txe1 and rxe2) or (rxe1 and txe2)):
continue continue
# Проверка на пересечение диапазонов, пересечение # Проверка на пересечение диапазонов, пересечение
# есть если начало одного диапазона меньше конца другого # есть если начало одного диапазона меньше конца другого
if max1 > min2 and max2 > min1: if max1 > min2 and max2 > min1:
#Вычисляем точные границы пересечения #Вычисляем точные границы пересечения
var inter_start = max(min1, min2) var inter_start = max(min1, min2)
var inter_end = min(max1, max2) var inter_end = min(max1, max2)
# Формируем результат в требуемом формате # Формируем результат в требуемом формате
result.append([dev1, dev2, name1, name2, inter_start, inter_end]) result.append([dev1, dev2, name1, name2, inter_start, inter_end])
return result return result