
- •Учебное пособие по Enterprise Library
- •© 1992-2004 XJ Technologies Company Ltd. www.xjtek.com
- •Copyright © 1992-2004 XJ Technologies. Все права защищены.
- •Содержание
- •С чего начать работу в AnyLogic
- •Как создать модель
- •Как добавлять объекты
- •Как соединять объекты
- •Как создать анимацию
- •Модель банковского отделения
- •Создание нового проекта
- •Создание блок-схемы
- •Запуск модели и изучение ее поведения
- •Задание данных
- •Задайте следующие свойства объекта:
- •а В очереди будут находиться не более 15 человек.
- •Задайте свойства объекта Delay:
- •Создание анимации
- •Задайте следующие свойства ломаной линии:
- •Нарисуйте прямоугольник:
- •Задайте следующие свойства:
- •ATM.size() > 0 ? Color.green : Color.white
- •Задайте следующие свойства объекта:
- •Теперь Вы можете запустить модель и изучить ее поведение.
- •Сбор статистики
- •Включите сбор статистики
- •Измените некоторые свойства индикатора:
- •ATM.getStatsUtilization().mean()
- •Моделирование банковских кассиров
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Запустите модель и изучите ее поведение.
- •Отображение кассиров на анимации
- •Назовите ломаную линию tellerLocations.
- •shape.setup(); setAnimation( shape );
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Изменение количества кассиров
- •Задайте следующие свойства:
- •Сбор статистики о времени обслуживания клиента
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Мы хотим отобразить собранную статистику на анимации.
- •Задайте следующие свойства индикатора:
- •Задайте следующие свойства индикатора:
- •Статистика сбрасывается с помощью специальных функций:
- •Оценка затрат операций
- •perHour / 60
- •Добавьте параметры, хранящие информацию о затратах:
- •Одна операция банкомата обходится компании в $0.30.
- •tellersIdleTime
- •tellersBusyTime
- •tellersIdleCost
- •tellersBusyCost
- •Создайте два набора данных и назовите их так:
- •waitCost
- •serviceCost
- •Задайте следующие свойства:
- •Задайте следующие свойства объекта:
- •Добавьте следующие строки кода:
- •Модель цеха предприятия
- •Создание нового проекта
- •Создание простой модели
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Выберите queueSize из списка параметров класса.
- •Теперь мы создадим блок-схему нашей модели.
- •Задайте следующие свойства объекта:
- •Добавьте объект конвейера Conveyor.
- •Задайте следующие свойства объекта:
- •Оставьте принятые по умолчанию свойства объекта.
- •Оставьте принятые по умолчанию свойства объекта.
- •Запустите модель щелчком по кнопке Запустить .
- •Создание анимации
- •Создайте анимацию станции
- •Задайте следующие свойства объекта:
- •Задайте следующее свойство объекта:
- •Задайте следующие свойства конвейера:
- •Запустите модель щелчком по кнопке Запустить .
- •Создание различных типов деталей
- •а Класс Entity определен в Enterprise Library.
- •setColor( Color.red );
- •Задайте следующее свойство объекта:
- •Нарисуйте конвейеры
- •Нарисуйте анимацию, как показано на рисунке ниже:
- •Задайте следующие свойства объекта:
- •Теперь запустите модель щелчком по кнопке Запустить .
- •Блокировка станции
- •В случае переполнения буфера заблокируйте объект:
- •if(queue.size()+1 == queue.get_capacity()) block();
- •Запустите модель щелчком по кнопке Запустить .
- •Изменение интенсивности поставки деталей
- •Задайте следующее свойство у обоих объектов Source:
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства созданного ползунка:
- •б Задайте следующий динамический текст:
- •в Задайте следующий динамический текст:
- •Задайте следующие свойства объекта:
- •Добавление сборочной станции
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Сбор статистики производительности
- •Задайте следующие свойства индикатора:
- •а Введите sink.getAverageRate().
- •Измените размер кнопки и задайте следующие свойства:
- •Моделирование выхода оборудования из строя
- •В среднем на починку станции будет уходить 15 минут.
- •Модель отделения офтальмологии
- •Создание нового проекта
- •Создание анимации
- •а Назовите прямоугольник waitingRoom.
- •б Назовите прямоугольник staffroom.
- •в Назовите прямоугольник staffLounge.
- •г Назовите прямоугольник storageRoom.
- •а Напишите следующий код в поле Дополнительный код класса:
- •Задайте следующие свойства объекта:
- •Создание блок-схемы
- •Теперь мы создадим блок-схему нашей модели.
- •Добавьте объект Source. Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •а Пациенты будут приходить в приемный покой отделения.
- •б Выберите объект, задающий транспортную сеть модели.
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •б Создайте динамическую группу фигур.
- •Моделирование занятия комнат
- •Задайте следующие свойства объекта:
- •Запустите модель щелчком мыши по кнопке Запустить .
- •Моделирование вызова врача
- •Унаследуйте класс сообщения от класса Entity.
- •Объект будет задавать свойства ресурсов типа Doctor.
- •Задайте следующие свойства объекта:
- •Объект будет задавать свойства ресурсов – офтальмоскопов.
- •Задайте следующие свойства объекта:
- •Задайте следующие свойства объекта:
- •Заключение

Учебное пособие по Enterprise Library
2.5 Создание анимации
Визуализация процесса с помощью блок-схемы очень удобна, поскольку визуализированная блок-схема создается для каждой модели автоматически. Но с помощью анимации AnyLogic Вы можете создать намного более наглядную визуализацию Вашего процесса. В этом примере мы хотим создать визуализированный план банковского отделения. Для этого нам будет нужно вначале создать анимационную диаграмму, а затем нарисовать на ней банкомат и очередь.
► Нарисуйте банкомат и очередь
X Нарисуйте очередь
Y Нарисуйте банкомат
18 |
© 1992-2004 XJ Technologies http://www.xjtek.com |

Учебное пособие по Enterprise Library
XНарисуйте очередь с помощью инструмента рисования
Ломаная.
аЩелкните по кнопке Ломаная и поместите первую точку щелчком мыши по диаграмме
бЩелкните в других местах диаграммы, чтобы добавить промежуточные точки
вПоследнюю точку добавьте двойным щелчком
ÂОчень важно, какую точку ломаной Вы создаете первой. По
умолчанию, сущности будут двигаться от точки, которую Вы нарисуете первой, к точке, которую Вы нарисуете последней.1
Задайте следующие свойства ломаной линии:
а Назовите динию
ATMqueue
б Сделайте ее невидимой
б Чтобы сделать линию невидимой на анимации, выделите линию щелчком мыши и введите false в свойстве линии
Видимость.
1 Если Вам нужно, чтобы движение происходило в обратном направлении, Вы можете установить
свойство объекта animationForward в false.
© 1992-2004 XJ Technologies http://www.xjtek.com |
19 |

Учебное пособие по Enterprise Library
YНарисуйте прямоугольник:
а Щелкните по кнопке
Прямоугольник , а затем по анимационной диаграмме
Задайте следующие свойства:
а Назовите прямоугольник
ATMarea
б Задайте цвет заливки
б Введите Java выражение, задающее цвет прямоугольника во время работы модели:
ATM.size() > 0 ? Color.green : Color.white
Здесь ATM – это имя созданного нами объекта Delay. Функция size() возвращает число человек, обслуживаемых в данный момент времени. Если банкомат занят, то цвет прямоугольника будет зеленым, в противном случае - белым.
Color – это класс Java, позволяющий использовать стандартные цвета (черный, синий, красный, голубой, желтый и т.д.), и создавать любые другие.2
2 Чтобы просмотреть список стандартных цветов и методов класса Color, позволяющих создавать другие цвета, зайдите по адресу http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Color.html.
20 |
© 1992-2004 XJ Technologies http://www.xjtek.com |

Учебное пособие по Enterprise Library
Теперь мы должны задать созданные анимационные объекты в качестве анимационных фигур объектов блок-схемы нашей системы.
► Задайте анимационные свойства объектов блок-схемы
X Измените свойства объекта
Queue
XЗадайте следующие свойства объекта:
а Задайте анимационную фигуру объекта
б Задайте анимационный стиль
а Щелкните мышью по полю и выберите animation.ATMqueue из выпадающего списка.
© 1992-2004 XJ Technologies http://www.xjtek.com |
21 |