Если в ниспадающем списке Задача компоновки (Layout Task) выбран алгоритм компоновки схемы Относительно главной линии (Relative Main Line), при нажатии кнопки Свойства алгоритма компоновки (Layout Algorithm Properties) на панели инструментов Редактор схем (Schematic Editor) откроется связанное с ним диалоговое окне со следующей закладкой:
Значениями параметров являются либо те, которые по умолчанию указаны Schematics, либо те значения, которые специально были установлены в качестве значений по умолчанию для шаблона схематического представления, связанного с активной схемой, при помощи закладки Компоновки для данного шаблона схематического представления.
Об атрибутах определений линий и корневом узле схемы
Алгоритм Относительно главной линии (Relative Main Line) использует атрибуты, с помощью которых определяются прямые линии, т. е. основные линии и корневые узлы схемы, из которых исходят эти прямые линии.
Корневые узлы схемы можно задать при помощи инструмента Задать корень схемы (Set Schematic Root) для определения начальных точек прямых линий. Если ни один корневой узел схемы не задан, алгоритм сначала выполняет поиск вероятных корневых узлов — узлов, соединенных только с одной связью, которые можно рассматривать как начальную точку прямой линии. Среди найденных вероятных узлов за корневой узел будет принят тот, из которого исходит самая длинная прямая линия.
На следующих рисунках приведены три образца схематического представления, применяемые в нижеследующих разделах для иллюстрации параметров алгоритма Относительно главной линии. Они построены на основе железнодорожной сети:
- на схеме 1 отображен один рельсовый путь с ветками.
- На схеме 2 показаны пять рельсовых путей со своими ветками.
- На схеме 3 показан один (синий) рельсовый путь, который разделяется в середине на две части — светло-синюю и темно-синюю. В дальнейшем эти части вновь сливаются.
Секция Определение линий (Lines definition)
Секция Определение линий (Lines definition) включает в себя параметры, позволяющие алгоритму отличать связи схемы, являющиеся частью прямых линий, от связей, принадлежащих ветвям. Эти параметры могут относиться к трем различным атрибутам, содержащимся в связях схемы или в соответствующих ГИС-линиях:
- Атрибут определения линии, позволяющий идентифицировать различные прямые линии (например, идентификатор линии)
- Атрибут типа линии, определяющий каждый тип линии (например, основная линия, второстепенная линия, ветка или стрелочный перевод)
- Атрибут приоритета, задающий уровень приоритета линий для их разбиения в ходе одной операции
Атрибут определения линии
Параметр Имя атрибута (Attribute name) содержит имя атрибута, который будет задавать соответствующую прямую линию для каждой из связей схемы. Как правило, это тот идентификатор, который принимает одинаковые значения для всех связей, составляющих одну прямую линию; например, Путь 1, Путь 2 и т. д.
Все смежные связи, имеющие одинаковое значение этого атрибута, будут считаться частью одной прямой линии; остальные связи будут считаться ветвями.
Если для какой-либо связи значение этого атрибута не указано, данная связь будет считаться частью ветви.
На рисунке 2 показаны результаты работы алгоритма компоновки Относительно главной линии, примененного для схемы 1. Атрибут определения линий задан пользователем, тогда как остальные параметры имеют значения по умолчанию.В данном случае можно успешно выполнить компоновку, не указывая никаких атрибутов, кроме параметра Имя атрибута (Attribute name).
Атрибут типа линий (Line type attribute)
Подсекция Атрибут типа линий (Line type attribute) включает в себя параметры, позволяющие задавать различные типы линий. Эти параметры являются необязательными.
- Флажок Использовать атрибут типа линий (Use a line type attribute) применяется, когда связи схемы или соответствующие ГИС-объекты имеют атрибут, задающий тип линии.
- После включения опции укажите три следующих параметра:
- Поле Имя (Name) — имя атрибута типа линий.
- Поле Значение главной линии (Main line value) (необязательно) — конкретное значение атрибута, определяющее главную линию. Если такое значение существует, оно должно быть одинаковым для каждой связи, составляющей главную линию, вне зависимости от ее класса объектов схемы.
- Поле Исключенные значения (Excluded values) (необязательно) — значения, определяющие типы линий, которые необходимо исключить из состава прямых линий.
На рисунке 3.1 показан результат работы алгоритма компоновки Относительно главной линии, примененного к схеме 2, при этом указан только параметр Имя атрибута (Attribute Name). В данном случае алгоритм принял коричневые стрелочные переводы за основные линии.На рисунке 3.2 показана та же схема после определения атрибута типа линий, при этом коричневые стрелочные переводы указаны как исключенные значения.
Атрибут приоритета (Priority attribute)
Подсекция Атрибут приоритета (Priority attribute) содержит параметры, позволяющие задавать уровни приоритета линий при их разбиении. Эти параметры являются необязательными.
- Флажок Использовать атрибут приоритета (Use a priority attribute) применяется, когда связи схемы или соответствующие ГИС-объекты имеют атрибут, задающий приоритет линии.
- После включения опции укажите два следующих параметра:
- Поле Имя (Name) — имя атрибута приоритета линий.
- Поле Приоритетное значение (Priority value) (необязательно) — конкретное значение атрибута, определяющее линию с наивысшим приоритетом из всех линий разбиения. Если такое значение существует, оно должно быть одинаковым для каждой связи, вне зависимости от ее класса объектов схемы.
На рисунке 4.1 показаны результаты, полученные из схемы 3, в случае, когда атрибут приоритета не указан для алгоритма Относительно главной линии. В этом случае, приблизив линейные объекты в середине схемы, можно увидеть, что темно- и светло-синие линии, образованные в результате разбиения синей линии, располагаются недостаточно корректно. Слева от исходной синей линии выровнена темно-синяя линия, а справа — светло-синяя.На рисунке 4.2 показана та же схема после определения атрибута приоритета линий, при этом темной линии присвоен наивысший приоритет. В этом случае алгоритм выравнивает прямой синий рельсовый путь с линией, имеющей наивысший приоритет, т. е. с темно-синей линией.
Секция Направление (Direction)
Опции секции Направление определяют направление линий:
- При включении опции Слева направо (From left to right) линии схемы будут исходить из корневой точки, расположенной слева, а заканчиваться справа (см. ниже рисунки 5.1 и 5.2). Это является опцией по умолчанию, если не задана иная опция в шаблоне схематического представления, связанном с активной схемой.
- При включении опции Сверху вниз (From top to bottom) линии схемы будут исходить из корневой точки, расположенной вверху, а заканчиваться внизу (см. ниже рисунки 6.1 и 6.2).
Секция Интервал (Spacing)
Параметры интервала определяют расстояние между узлами вдоль линии, а также между ветвями, расположенными перпендикулярно направлению линии.
- Параметр Отступ между ветвями (Offset between branches) определяет расстояние между двумя соседними ветвями, расположенными вдоль оси, перпендикулярной направлению линий. Этот параметр измеряется в единицах схемы.
На рисунках внизу показаны результаты работы алгоритма компоновки Относительно главной линии, примененного к схемам 1 и 2, при Отступе между ветвями равном 40 (рисунки 7.1 и 7.2) и равном 80 (рисунки 7.3 и 7.4).
- Параметр Угол точки разрыва (Break point angle) определяет угол, регулирующий расположение точки разрыва на ветвях. Он принимает числовые значения от 30 до 90 градусов и используется для расчета положения точки в сочетании со значением параметра Отступ между ветвями (Offset between branches). Когда угол точки разрыва равен 90 градусам, каждая ветвь отображается ортогонально.
На рисунках с 8.1 по 8.3 показано влияние различных значений Угла точки разрыва на работу алгоритма компоновки Относительно главной линии. Обратите внимание, что при определенных значениях параметров Отступ между ветвями и Угол точки разрыва в ходе работы алгоритма схема может выстроиться в прямую линию, и у коротких ветвей не будет точек разрыва. Так обстоит дело с оранжевой ветвью на рисунках 8.2 и 8.3, а также с розовой ветвью на рисунке 8.3:
На рисунках ниже показаны результаты работы алгоритма компоновки Относительно главной линии, примененного к схемам 1 и 2, при Угле точки разрыва равном 90 градусов (рисунки 8.4 и 8.5) и 45 градусов (рисунки 8.6 и 8.7):
Секция Исходные расстояния (Initial distances)
Опции Исходных расстояний позволяют задавать в алгоритме способ оценки длины связей схемы. Эта длина определяет положение узлов схемы вдоль направления. Расстояния между смежными узлами вдоль направления неодинаковы; они рассчитываются относительно друг друга и зависят от длины текущей связи и длины самой короткой связи.
- При включении опции Из геометрии связи (From link geometry) алгоритм будет вычислять длину каждой связи, исходя из ее геометрии (эта опция включена по умолчанию).
- При включении опции Из атрибута длины связи (From link length attribute) алгоритм будет рассчитывать длину каждой связи, исходя из определенного атрибута. В этом случае имя данного атрибута необходимо ввести в поле Имя атрибута (Attribute name).
На рисунке 9.1 показаны результаты работы алгоритма компоновки Относительно главной линии, примененного к схеме 2, при использовании опции по умолчанию Из геометрии связи (From link geometry). На рисунке 9.2 показаны результаты, полученные при использовании опции Из атрибута длины связи (From link length attribute) с постоянными значениями атрибута, из-за чего все связи в схеме имеют равную длину:
Секция Сжатие (Compression)
Параметры Сжатия (Compression) позволяют сократить дистанцию между смежными группами соседних узлов схемы вдоль направления линии, при этом пытаясь сохранить расположение этих групп относительно друг друга. Соседние узлы схемы – это узлы, имеющие близкое, но не смежное, географическое положение. Параметры сжатия являются необязательными, по умолчанию алгоритм работает без сжатия. При активации сжатия оно выполняется дополнительным этапом в конце работы алгоритма.
- Включите флажок Сжать вдоль направления (Compress along the direction), если хотите включить сжатие.
- Затем укажите два следующих параметра:
- Поле Минимальное расстояние (Minimal distance) — минимальное расстояние между двумя смежными группами соседних узлов схемы.
Минимальное расстояние также служит для группировки соседних узлов в соответствии с их проекцией на ось направления. Два узла, спроецированные на эту ось, будут принадлежать одной группе, если расстояние между точками их проекций будет меньше данного минимального расстояния.
- Поле Коэффициент (Ratio) — коэффициент сжатия. Коэффициент является числом от 0 до 1, он применяется к длине любой связи после вычета из нее минимального расстояния. Если коэффициент равен 1, расстояние между каждой обнаруженной группой узлов будет равно минимальному расстоянию.
На рисунке 10.1 показана компоновка образца схемы 1 без какого-либо сжатия. Если сжатие включено, по завершении текущей компоновки алгоритм перейдет к дополнительному этапу:Используя указанное минимальное расстояние D, алгоритм обнаружит три группы узлов — эти группы обозначены оранжевыми квадратами. Затем применяется определенный коэффициент сжатия, чтобы сократить длину L каждой связи, разделяющей две группы, коэффициент сжатия применяется к длине (L-D).
- Поле Минимальное расстояние (Minimal distance) — минимальное расстояние между двумя смежными группами соседних узлов схемы.
На рисунках 10.2 и 10.5 показаны результаты работы алгоритма компоновки Относительно главной линии, примененного к схеме 2, при различных коэффициентах сжатия. С увеличением коэффициента, расстояние между группами узлов вдоль направления становится все более и более сжатым. Когда коэффициент равен 1, расстояния между тремя группами узлов будут одинаковыми и равными указанному Минимальному расстоянию.
Кнопка Восстановить по умолчанию (Restore Defaults)
Нажмите кнопку Восстановить по умолчанию (Restore Defaults), чтобы вернуть все параметры алгоритма Относительно главной линии к значениям по умолчанию. Восстановленными значениями являются либо те, которые по умолчанию задаются в Schematics, либо те значения, которые специально были установлены в качестве значений по умолчанию для шаблона схематического представления, связанного с активной схемой, во вкладке Компоновки (Layouts) редактора набора схематических данных для данного шаблона схематического представления.