Platform V Architect v1.8 (SberTech)
Сцена это основной инструмент визуального моделирования. Она позволяет нам редактировать метамодель, модель, представления и свойства объектов.
Для начала изучим все доступные на сцене элементы управления.

На скриншоте выше блоки элементом пронумерованы исходя из логического использования в процессе работы. Посмотрим, как работают основные элементы сцены.
Перейдем в файл main.art.
В правом верхнем углу виджета Сцена доступна иконка шестеренки . Она открывает окно настроек. В настоящий момент у сцены доступна только одна настройка - это включение и выключения сетки. Сетка позволяет легче ориентироваться при работе с объектами.
🚩 Включите и выключите сетку на Сцене.
На анимированном скриншоте показан процесс включения и выключения сетки.

Для удобства работы с элементами на сцене предусмотрен полноэкранный режим. Для включения и выключения полноэкранного режима необходимо нажать в правом верхнем углу сцены иконку с четырьмя расходящимися друг от друга стрелками .
На анимированном скриншоте показан процесс включения и выключения полноэкранного режима.

В левом верхнем углу сцены доступны вкладки переключения слоев Метамодель, Модель, Представления.

Логика работы приложения подразумевает всегда наличие какой-либо базовой метамодели (спецификации) - первого слоя архитектуры определяющего правила взаимодействия объектов и связей.
На базе метамодели происходит разработка модели - архитектурного артефакта (схемы, архитектуры и т.п.), который отображает конкретные решения или системы. Это второй слой.
Представления являются самым верхним слоем и позволяют разделить модель на визуальные части.
Во вкладке метамодель отображается текущая метамодель (спецификация или шаблон), на базе которой разрабатывается модель. Если используется встроенная спецификация, то все элементы метамодели выглядят серыми и недоступны для редактирования.
🚩 Откройте вкладку Метамодель.
На экране отобразятся все элементы подключенной метамодели. Щелкните ЛКМ на любом элементе из метамодели, а затем нажмите кнопку Все свойства, чтобы посмотреть все свойства. Закройте окно свойств объекта. Процесс разработки собственной метамодели рассматривает отдельно вне рамок текущего мастер-класса.
На анимированном скриншоте показан процесс доступа к объектам метамодели.

Во вкладке модель отображается текущая модель, которую вы разрабатываете или просматриваете. Все элементы из панели объектов, которые переносятся на сцену, попадают в модель. Компилятор проверяет код модели на соответствие метамодели.
Мы уже работали на этой вкладке. Перетаскивали объекты.
🚩 Откройте вкладку Модель.
Элементы работы с моделью мы рассмотрим позднее.
На анимированном скриншоте показан процесс доступа к объектам модели.

Представления позволяют разделить большую модель на части для удобства визуализации без изменения самой модели.
🚩 Откройте вкладку Представление, создайте представление.
⚠️ ВАЖНО. По умолчанию при создании представления на него добавляются все объекты модели.
Сама модель не изменилась, хотя представление отличается от модели. Для удаления представления вернитесь в режим редактирования представления, а затем нажмите в нижнем левом углу окна кнопку Удалить представление.
⚠️ Название представлений могут быть написаны только на латинице и без пробелов.
На анимированном скриншоте показан процесс создания, редактирования и удаления представления.

Справа на сцене расположена палитра объектов, где видны доступные элементы, которые можно разместить на сцене. Объекты на палитре добавляются из спецификации/метамодели.
⚠️ Напротив названия спецификации есть стрелочка, которая позволяет свернуть объекты той или иной нотации для удобства работы.

Вы можете добавить несколько нотаций/спецификаций на палитру объектов, однако смешивание стилей не рекомендуется, т.к. может возникать конфликт создания связей между различными нотациями. Добавление спецификаций/нотаций в проект осуществляется командой импорт в редакторе кода.
🚩 Добавьте объекты нотации BPMN в палитру объектов.
import "spec:bpmn".import "spec:bpmn".import "spec:bpmn".⚠️ В случае, если вы добавите какие-то элементы какой-либо спецификации/нотации на сцену, а затем удалите из кода строку с импортом, компилятор покажет ошибку, т.к. он не сможет произвести визуализацию модели на сцене.
На анимированном скриншоте показан процесс добавления новых объектов в палитру путем импорта спецификации BPMN, добавление объекта из BPMN и последующим удалением спецификации с ошибкой компилятора.

Палитру объектов можно свернуть, чтобы она занимала меньше места на экране сцены. Для этого необходимо нажать на двойную стрелочку напротив слова Объекты.
На анимированном скриншоте показан процесс свертывания и развертывания палитры объектов целиком и разных спецификаций внутри самой палитры.

Блок 4 содержит элементы управления, которые позволяют разными методами размещать объекты и связи на сцене.

Для удобства изучения функций работы с объектами откройте в редакторе кода файл main.art и удалите все элементы со сцены. Это можно сделать выделив весь код кроме строки import "spec:archimate" в редакторе кода.
🚩 Удалите все элементы со сцены.
После удаления на сцене нет ни одного объекта.
🚩 Добавьте на сцену четыре элемента из доступных объектов.
Разместите объекты в хаотичном порядке, как на рисунке ниже.
Функция выравнивания объектов на сцене позволяет размещать объекты по разным сторонам и осям (горизонтально и вертикально), а также распределять их на равном расстоянии по вертикали и горизонтали.
Для вызова меню необходимо нажать на сцене символ выравнивания и в выпадающем меню выбрать необходимую функцию (см. скриншот ниже).
Перед выравниванием элементов необходимо выделить те из них, к которым будет применяться требуемая функция или выделить все элементы сразу.
Для выделения нескольких объектов на сцене можно использовать три варианта.
🚩 Выделите все элементы на сцене любым их удобных способов.
На анимированном скриншоте показан процесс выделения элементов всеми тремя способами.

🚩 Выровняйте элементы по левой стороне, а затем разместите их на одинаковом расстоянии тоже по вертикали.
На анимированном скриншоте показан процесс выравнивания элементов по левой стороне, а затем на одинаковом расстоянии по вертикали.

Вызывается функция нажатием на символ выравнивания со звездочкой . Приложение поддерживает функционал умного выравнивания по трём алгоритмам:
🚩 Проверьте все алгоритмы умного выравнивания.
В результате выравнивания элементы размещаются автоматически.
На анимированном скриншоте показан процесс умного выравнивания элементов.

Для соединения между объектами применяются связи. Тип связи (его название) и визуальное отображение зависят от нотации или метамодели.
Прежде чем перейти к изучению функций управления связями, сначала изучим как можно их можно добавлять, удалять и изменять.
Добавить связь между объектами можно двумя способами:
🚩 Добавьте разные типы связи между элементами. Используйте оба метода.
Для удаления связи щелкните ЛКМ на линии связи, а затем нажмите символ корзины или кнопу Del на клавиатуре. Также связь можно удалить в коде.
🚩 Удалите связи. Используйте оба метода.
from и to.⚠️ Изменить тип связь в UI после ее добавления нельзя. Это можно сделать только в коде. Для замены типа связи в UI необходимо сначала удалить старую связь, а затем добавить новую.
На анимированном скриншоте показан процесс добавления связей двумя методами и удаление связей на сцене и в коде.

Приложение поддерживает функцию умного построения связей, когда связь меняет свое положение в зависимости от местоположения связанных объектов на сцене.
🚩 Проверьте функцию работы умного построения связей.
На анимированном скриншоте показан процесс добавления связей между объектами на сцене и их перемещения с автоматическим перестроением связей.

Функция умного построения связей включена по умолчанию, ее можно отключить как для конкретной связи, так и для всей модели целиком.
⚠️ По умолчанию все связи создаются с включенной функцией умного построения.
Для отключения функции умного построения связей для всей модели нажмите на символ Умное построение связей в верхней части сцены. После выключения все связи будут в виде прямых линий с наложением друг на друга.
🚩 Проверьте работу связей без умного построения.
На анимированном скриншоте показан процесс включения и отключения функции умного построения связи для всех объектов на сцене.

Для отключения функции умного построения для конкретной связи выделите связь на сцене и в свойствах объекта в меню справа в разделе Режимы снимите галочку напротив пункта Умное построение.

🚩 Отключите умное построение связей для одной связи.
На анимированном скриншоте показан процесс включения и выключения умного построения только для одной связи, а также удаления узлов, добавленных вручную.

Иконка отвечает за фиксирование портов. Порт это точка, где связь подходит к объекту. Фиксирования порта привязано к связи, а не к объекту.
🚩 Добавьте связь и проверьте функцию фиксирования порта.
Иногда бывает, что алгоритм строит связи не таким образом, как вам бы хотелось видеть или вам может понадобится установить связь в конкретном месте элемента или разместить линию определенным образом.
Для активации ручного выставления порта связи (его фиксации) существует два метода:
🚩 Зафиксируйте порт одной из связей.
На анимированном скриншоте показан процесс фиксирования точки подключения связи.

В случае, если вы хотите зафиксировать форму линии связи, то необходимо в свойствах связи отключить умное построение, а затем построить нужную форму линии.
Для добавления ломанных линий на связи щелкните на нужной связи ЛКМ, наведите курсор мыши так, чтобы на связи появилась белая точка. Сделайте одинарный щелчок ЛКМ в этом месте, добавится новый элемент. Вы можете менять положение связи перетаскивая точки связи по сцене. Линии на связи позволяют передвигать связь вертикально и горизонтально. Для удобства пользователя, в случае когда появляются горизонтальные или вертикальные линии, участок связи подсвечивается оранжевым цветом. Для удаления любой из точек на связи сделай двойной щелчок мыши.
🚩 Настройте вручную форму любой из связей.
На анимированном скриншоте показан процесс ручной настройки связи между элементами.

Для того чтобы увидеть с какими ближайшими объектами связан какой-то из элементов в модели, вы может включить визуальную подсветку связей нажав на символ .
🚩 Проверьте функционал подсветки зависимостей.
На анимированном скриншоте показан процесс включения подсветки зависимостей и их отображения.

Для добавления подписей на связи выделите связь ЛКМ и затем сделайте двойной щелчок ЛКМ. Появится слово Text, которое можно изменить. Для изменения текст щелкните ЛКМ на слове Text. Так же вы можете добавить, изменить и удалить подписи связей в свойствах объекта. Вы может добавить больше одной подписи для каждой связи.
Вы можете менять место размещения подписи с помощью мыши. Положение подписи привязывается к связи в процентном значении от точки начала связи. Если вам необходимо разместить подпись посередине, то укажите в свойствах значение 50, а если в начале, то укажите, например, 5.
Удалить подпись можно в свойствах связи или в редакторе кода, путем удаления строки labels.
🚩 Добавьте подпись любой из связей. Переместите подпись в конец связи. Удалите подпись.
На анимированном скриншоте показан процесс добавления подписи к связи с последующим перемещением в по линии связи и удалением.

Часть свойств объекта доступны в правом боковом меню, которое открывается поверх палитры объектов, когда вы выделяете объект на сцене ЛКМ. В этом меню доступны для изменения такие элементы как размеры и пропорции отображения на сцене, форма отображения (прямоугольник или иконка), цвет рамки и элемента.
⚠️ Возможность изменения свойств зависит от метамодели. Хотя возможность внесения визуальных изменений предусмотрена, этого не рекомендуется делать для элементов индивидуально, чтобы не портить общий вид схем.
У каждого объекта могут быть разные свойства и аргументы в зависимости о метамодели. Получить доступ ко окну просмотра и редактирования всех свойств объекта можно двумя путями:
🚩 Откройте Все свойства любого из элементов и измените значение аргумента
name.
1000.На анимированном скриншоте показан процесс доступа ко всем свойствам объекта и изменения аргументы name.

Вложение одного объекта в другой создает кластер. Вложенный объект будет входить в кластер. Это актуально для схем, когда один объект выступает в ролик границы. Например, в нотации С4 или BPMN.
Для создания кластера необходимо перенести объект с палитры объектов непосредственно на другой объект. Тогда произойдет вложение одного объекта в другой. Можно также взять один объект на сцене и перенести его на другой объект. Тогда тоже произойдет вложение одного объекта в другой.
Для того, чтобы вытащить объект из кластера, вы может удалить его в редакторе кода, либо выключить в свойствах кластера переключатель Авторасширение кластера в положение Выкл и тогда перемещаемые объекты при перемещении разместятся вне кластера на сцене.
🚩 Создайте кластер из трех объектов нотации BPMN, затем разделите кластер.
Вкл.На анимированном скриншоте показан процесс создания кластера в нотации BPMN и выключения кластера.

Для приближения и отдаления сцены можно воспользоваться двумя методами:
🚩 Проверьте функцию приближения и отдаления сцены.
На анимированном скриншоте показан процесс приближения и отдаления сцены двумя методами (колесо мыши и кнопки).

Иногда бывает необходимо увидеть все элементы модели на экране. Для масштабирования размера экрана по размеру всех элементов необходимо нажать в нижнем левой части сцены кнопку Вид по умолчанию .
🚩 Проверьте работу функции Вид по умолчанию.
На анимированном скриншоте показан процесс отображения всех объектов на сцене через вид по умолчанию.

Если на сцене находится множество объектов и вам необходимо их все одновременно выделить, чтобы, например, выровнять, то можно воспользоваться кнопкой Выделить все объекты .
⚠️ В силу особенности работы браузеров, при нажатии кнопки Ctrl+A, выделяется все окно приложения, а не только объекты сцены.
🚩 Проверьте работу функции Выделить все объекты.
На анимированном скриншоте показан процесс выделения всех объектов на сцене через с последующим умным выравниванием и включением вида по умолчанию для отображения всех объектов на сцене.

Пожалуй, это одна из самых важных функций сцены. Чтобы случайно не внести изменения в местоположение объектов в готовой модели на сцене можно отключить интерактивность сцены, символом замка в нижнем левом углу сцены .
⚠️ Если вы открыли модель только для просмотра, то настоятельно рекомендуется сразу заблокировать элементы. Это поможет предотвратить их случайное перемещение, которое может повлечь за собой изменение местоположения связей. Если вы не планируете ничего менять в местоположении, то всегда держите блокировку и отключайте Умное построение связей, тем самым при добавлении новых объектов вы не будете вносить изменения в текущую схему.
После нажатия этой кнопки вы можете перемещаться по сцене и менять масштаб, но функции перемещения объектов, работа с ними, а также добавление или удаление объектов на сцену будут заблокированы.
🚩 Проверьте работоспособность блокировки сцены.
На анимированном скриншоте показан процесс включения и выключения интерактивности сцены.
