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