DRAKON.SU

Текущее время: Пятница, 29 Март, 2024 18:45

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
СообщениеДобавлено: Пятница, 07 Май, 2010 18:43 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5846
Откуда: Москва
Цель темы -- дать краткое и сжатое описание
наиболее важных принципов работы дракон-редактора.


Главы 21 и 22 по смыслу тесно связаны,
так как дракон-редактор реализует
визуальный синтаксис языка Дракон.

Рекомендация. Сначала прочитайте главу 21.а затем главу 22
viewtopic.php?f=62&t=2629&p=47259#p47259
________________________________________________________________________


Глава 21

ВИЗУАЛЬНЫЙ КОНСТРУКТОР
АЛГОРИТМОВ (ДРАКОН-РЕДАКТОР)


:!: МЕНЮ И ЗАГОТОВКИ

Дракон-редактор имеет меню графоэлементов (рис. 165).
Дракон-схема формируется из элементов, называемых заготовками.
Таких заготовок две. Одна используется для построения дракон-схемы «примитив». Из другой получается силуэт (рис. 166).

Построение любой дракон-схемы выполняется за конечное число шагов путем соответствующих преобразований выбранной заготовки.
Вложение:
Комментарий к файлу: Меню и заготовки
Рис.165,166.png
Рис.165,166.png [ 55.85 КБ | Просмотров: 3968 ]


:!: ВВОД АТОМА

Элемент меню на рис. 165 называется атомом, если он имеет два вертикальных отростка.
Операция «ввод атома» показана на рис. 167. Операция выполняется в два этапа: сначала пользователь выбирает нужный атом из меню, затем обращается к дракон-схеме и указывает точку, в которую нужно его ввести.

Атомы вставляются в разрешенные места, которые называются валентными точками дракон-схемы. Перечень точек включает:
• валентные точки заготовок (отмечены на рис. 166);
• валентные точки макроикон (отмечены на рис. 5);
• входы и выходы атомов.

Ввод атома производится так. Сначала происходит разрыв соединительной линии в выбранной пользователем валентной точке. Затем в место разрыва вставляется атом, как показано на рис. 167.
В реальных дракон-схемах валентные точки не изображаются, а подразумеваются.
Вложение:
Комментарий к файлу: Ввод атома
Рис.167.png
Рис.167.png [ 60.28 КБ | Просмотров: 3968 ]


:!: ПРИМЕР ПОСТРОЕНИЯ ДРАКОН-СХЕМЫ «ПРИМИТИВ»

В начале графического конструирования пользователь обращается к меню, подводит курсор к макроиконе «заготовка-примитив» и копирует последнюю в рабочее поле экрана.

На первом шаге пользователь вызывает из меню макроикону «обычный цикл». И помещает ее в нужную точку заготовки-примитив. Результат операции виден на рис. 168 (шаг 2).

Два следующих шага выполняются аналогично. В дракон-схему последовательно вводятся две иконы «действие» (рис. 168, шаги 3 и 4).

Далее следует ввод макроиконы «обычный цикл» (рис. 168, шаг 5).
В конце производится ввод иконы «вставка». Результат показан на рис. 168 (шаг 6).

После того как графический узор (слепыш) дракон-схемы построен, производится заполнение его текстом.
Вложение:
Комментарий к файлу: Построение схемы "примитив"
Рис.168.png
Рис.168.png [ 68.38 КБ | Просмотров: 3967 ]


:!: ОПЕРАЦИЯ «ПЕРЕСАДКА ЛИАНЫ»

Роль верхнего конца лианы играет выход иконы «вопрос» или «вариант».
Лиана — это присоединенная к нему (выходу) последовательность шампур-блоков или просто соединительная линия. При некоторых условиях (описанных в следующей главе) нижний конец лианы можно оторвать от своего места и присоединить в другую точку дракон-схемы. Такая операция называется пересадка лианы.

Выполнение этой операции осуществляется в два этапа. Сначала курсор подводится к нижнему концу лианы, который надо освободить (рис. 169, левая графа). Но куда его присоединить? Пользователь выбирает желаемую точку и отмечает ее курсором (рис. 169, средняя графа). Результат операции «пересадка лианы» показан на том же рисунке в правой графе.
Вложение:
Комментарий к файлу: Операция "Пересадка лианы"
Рис.169.png
Рис.169.png [ 46.15 КБ | Просмотров: 3967 ]



:!: ОПЕРАЦИЯ «ЗАЗЕМЛЕНИЕ ЛИАНЫ»

Функция «пересадка лианы» универсальна в том смысле, что она применима и к примитиву, и к силуэту. В отличие от нее операция заземление лианы относится только к силуэту. Она служит для построения веток, имеющих несколько выходов (многоадресных веток).

Для этого необходимо:
• организовать в ветке разветвление (с помощью макроикон «развилка» или «переключатель»);
• оторвать присоединенную к ним лиану от прежнего места;
• присоединить ее через икону «адрес» к нижней горизонтальной линии силуэта, то есть «заземлить» ее.

Операция «заземление лианы» проводится в два этапа.

Первый этап (отрыв нижнего конца лианы от своего места) осуществляется точно так же, как при пересадке лианы (рис. 170, левая графа).

На втором этапе пользователь подводит курсор к нижней линии силуэта, указывая точку, куда лиана может дотянуться, не пересекая других линий (рис. 170, средняя графа).

Это действие порождает автоматическое появление в нужном месте иконы «адрес». Лиана автоматически присоединяется к иконе «адрес». И через нее — к нижней линии силуэта (рис. 170, правая графа).
Заземление лианы используется при построении силуэтов с многоадресными ветками.
Вложение:
Комментарий к файлу: Операция "Заземление лианы"
Рис.170.png
Рис.170.png [ 41.46 КБ | Просмотров: 3967 ]


:!: ПРИМЕР ПОСТРОЕНИЯ ДРАКОН-СХЕМЫ «СИЛУЭТ»

Вначале обратимся к меню и вызовем в рабочее поле заготовку-силуэт (рис. 171, вверху слева).

На первом шаге выполним операцию «добавление ветки». То есть модифицируем заготовку, вставляя в заготовку-силуэт еще одну ветку (рис. 171, шаг 2).
Дальнейший ход строительства ясен из рисунков 171 и 172. В шагах 2—5 вставим 4 иконы «действие». В шаге 6 вставим макроикону «обычный цикл». Результат виден на рис. 172, шаг 7, слева.

Затем выполним заземление лианы (шаги 7, 8). В заключение вставим икону «комментарий».

Графическое конструирование заканчивается в момент получения желаемого слепыша (рис. 172, шаг 10).

Затем в иконах записываются текстовые операторы, после чего визуальный алгоритм приобретает окончательный вид.
Вложение:
Комментарий к файлу: Построение схемы "силуэт" (пример)
Рис.171.png
Рис.171.png [ 73 КБ | Просмотров: 3967 ]

Вложение:
Комментарий к файлу: Построение схемы "силуэт" (пример). Окончание
Рис.172.png
Рис.172.png [ 62.32 КБ | Просмотров: 3967 ]


Конец главы 21
______________________________________________________________

Примечание. Вы прочитали выжимку из главы 21
книги "Дружелюбные алгоритмы, понятные каждому".


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2008-2024, участники конференции «DRAKON.SU», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB