AnyLogic
Развернуть
Размер шрифта

Скругленный прямоугольник

Чтобы нарисовать скругленный прямоугольник

  1. Перетащите элемент Скругленный прямоугольник  из палитры Презентация в то место графического редактора, где вы хотите нарисовать скругленный прямоугольник.
  2. Если же вы хотите сразу создавать прямоугольник нужного вам размера, то используйте режим рисования. Чтобы перейти в этот режим, сделайте двойной щелчок мышью по элементу Скругленный прямоугольник  в палитре (при этом его значок должен поменяться на этот: ). Затем щелкните мышью в том месте диаграммы, где вы хотите нарисовать прямоугольник, и передвиньте ее, не отпуская кнопки, пока контур создаваемого прямоугольника не примет желаемый размер, после чего отпустите кнопку мыши.

Свойства

Основные

Имя — Имя фигуры. Имя используется для идентификации и обращения к фигуре из кода.

Исключить — Если опция выбрана, то фигура будет исключена из модели.

Отображается на верхнем агенте — Если опция выбрана, то фигура будет видна на презентации типа агента, в который будет вложен данный агент.

Значок — Если опция выбрана, то фигура будет считаться частью значка типа агента.

Блокировать — Если опция выбрана, то фигура будет считаться заблокированной и не будет реагировать на щелчки мыши. Таким образом, вы не сможете выбрать заблокированную фигуру в графическом редакторе до тех пор, пока вы не снимете с нее блокировку.
Обычно это требуется, когда у вас есть какой-то фоновый рисунок, используемый как подложка для анимации, и вы хотите исключить возможность случайного редактирования этого фонового рисунка при рисовании фигур поверх него.

Видимость — Здесь указывается, будет ли фигура отображаться на анимации во время исполнения модели. Выберите да или нет, используя элемент управления. Если вам нужно, чтобы видимость динамически изменялась или зависела от каких-либо условий, вы можете указать здесь выражение, задающее видимость фигуры. Это выражение будет динамически вычисляться во время исполнения модели. Оно должно возвращать логическое (булевское) значение. Фигура отображается в том случае, когда указанное выражение возвращает истинное значение, в противном случае фигура не видна.

Внешний вид

Цвет заливки — Цвет заливки фигуры. Щелкните мышью внутри элемента управления и выберите нужный цвет из списка наиболее часто используемых цветов или же выберите любой другой цвет с помощью диалога Цвета. Если вы не хотите, чтобы фигура была закрашена, выберите Нет заливки. В противном случае укажите здесь выражение, задающее цвет заливки фигуры. Оно должно возвращать экземпляр Java-класса Color. Если выражение возвращает null, заливка не производится.

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

Толщина линии — Статическое значение или динамическое выражение, задающее толщину линии контура фигуры. Выберите нужную вам толщину из выпадающего списка или же введите ее значение в пикселях в поле справа.

Стиль линии — [Доступно, только если сброшен флажок Отображать в 3D] Статическое значение или динамическое выражение, задающее стиль линии контура фигуры. Выберите из выпадающего списка, хотите ли вы,чтобы линия была сплошная, точечная или пунктирная. Выражение должно возвращать целочисленное значение, одну из трёх констант:

  • LINE_STYLE_SOLID — сплошная линия.
  • LINE_STYLE_DOTTED — точечная линия.
  • LINE_STYLE_DASHED — пунктирная линия.
Местоположение и размер

X — x-координата верхнего левого угла прямоугольника.

Y — y-координата верхнего левого угла прямоугольника.

Z — z-координата основания параллелепипеда.

Ширина — Ширина прямоугольника (в пикселях).

Высота — Высота прямоугольника (в пикселях).

Z-Высота — z-высота параллелепипеда (высота по оси Z), в пикселях.

Поворот — Статическое значение или динамическое выражение, задающее угол поворота прямоугольника в плоскости XY (в градусах или радианах).

Радиус скругления углов — Радиус скругления углов скругленного прямоугольника (в пикселях).

Масштаб по оси X — Здесь указывается выражение, возвращающее коэффициент масштабирования фигуры по оси X.*

Масштаб по оси Y — Здесь указывается выражение, возвращающее коэффициент масштабирования фигуры по оси Y.*

Масштаб по оси Z — Здесь указывается выражение, возвращающее коэффициент масштабирования фигуры по оси Z*.

* Указав выражения для Масштаба по оси X, Масштаба по оси Y и в некоторых случаях Масштаба по оси Z, вы сможете определять масштаб фигуры во время выполнения модели.
Специфические

Отображать в — Если выбрано В 2D и в 3D или Только в 3D, то будет создан трехмерный аналог двумерной фигуры. Тогда в режиме запуска модели двумерная фигура будет отображаться там же, где она и была нарисована в графическом редакторе, а трехмерная будет видна в специальном элементе, предназначенном для просмотра трехмерной анимации — 3D окне.

Количество — Здесь указывается, какое количество экземпляров данной фигуры будет создано (целочисленное значение). Если вы оставите это поле пустым, будет создана только одна такая фигура.

Действие по щелчку — Код, который будет выполняться при каждом щелчке пользователя мышью по фигуре во время выполнения модели. Если в точке щелчка несколько фигур наслаиваются друг на друга, действие должно быть задано для той фигуры, которая находится на самом верху.

Локальные переменные:
self — сам элемент
clickx — x-координата щелчка относительно координат фигуры
clicky — y-координата щелчка относительно координат фигуры

Отображать имя — Если опция выбрана, то имя фигуры будет отображаться в графическом редакторе.

Функции

Местоположение
Функция Описание
double getX()
double getY()
Возвращает X(Y) координату фигуры (а именно, координату верхнего левого угла прямоугольника).
void setX(double x)
void setY(double y)
Задает новую X (Y) координату фигуры.

x — новое значение координаты X
y — новое значение координаты Y
void setPos(double x, double y) Устанавливает новые координаты фигуры.

x — новое значение координаты X
y — новое значение координаты Y
Point getCenter() Возвращает координаты центра прямоугольника.
Размер, масштаб
Функция Описание
void setSize(double width, double height) Задает новую ширину и высоту прямоугольника.

width — новая ширина прямоугольника
height — новая высота прямоугольника
double getWidth() Возвращает ширину фигуры.
double getHeight() Возвращает высоту фигуры.
void setWidth(double width) Устанавливает новую ширину фигуры.

width — новая ширина прямоугольника
void setHeight(double height) Устанавливает новую высоту фигуры.

height — новая высота прямоугольника
double getScaleX()
double getScaleY()
Возвращает масштаб фигуры по оси координат X (Y).
void setScaleX(double sx)
void setScaleY(double sy)
Задает масштаб фигуры по оси координат X (Y).

sx — новое значение масштаба по оси X *
sy — новое значение масштаба по оси Y *
* если параметр равен 1, то фигура сохраняет изначальный размер
void setScale(double sx, double sy) Устанавливает масштаб фигуры по обеим осям координат.

sx — новое значение масштаба по оси X *
sy — новое значение масштаба по оси Y *
* если параметр равен 1, то фигура сохраняет изначальный размер
void setScale(double s) Устанавливает одинаковый масштаб по обеим осям координат.

s — новое значение масштаба по обеим осям координат *
* если параметр равен 1, то фигура сохраняет изначальный размер
Поворот
Функция Описание
double getRotation() Возвращает угол поворота фигуры в радианах, по часовой стрелке.
void setRotation(double r) Задает новый угол поворота фигуры.

r — новое значение угла поворота фигуры в радианах
Видимость
Функция Описание
boolean isVisible() Проверяет видимость фигуры. Если фигура видна, то возвращает true; если нет — то false.
void setVisible(boolean v) Устанавливает видимость фигуры.

v — видимость: если true, то фигура видна; если false, то не видна.
Заливка цветом
Функция Описание
Color getFillColor() Возвращает цвет фигуры. Возвращает null, если фигура не залита цветом или залита текстурой (в последнем случае следует использовать функцию getFillTexture()).
Texture getFillTexture() Возвращает текстуру фигуры (если в качестве заливки фигуры используется именно текстура).
void setFillColor(Color fillColor) Устанавливает цвет заливки фигуры.

fillColor — новый цвет заливки, если значение равно null, то у фигуры не будет заливки
void setFillColor(Object fillColor) Устанавливает заливку фигуры цветом или текстурой.

fillColor — новая заливка (цвет или текстура), если значение равно null, то у фигуры не будет заливки
Контур
Функция Описание
Color getLineColor() Возвращает цвет контура фигуры. Возвращает null, если у фигуры нет контура или контур текстурный (в последнем случае следует использовать функцию getLineTexture()).
Texture getLineTexture() Возвращает текстуру контура, если контур фигуры текстурный.
void setLineColor(Color lineColor) Устанавливает цвет контура фигуры.

lineColor — новый цвет контура, если значение равно null, то у фигуры нет контура.
void setLineColor(Object lineColor) Устанавливает цвет (или текстуру) для контура фигуры.

lineColor — новый цвет (или текстура) контура, если значение равно null, то у фигуры нет контура.
double getLineWidth() Возвращает ширину контура фигуры.
void setLineWidth(double width) Устанавливает ширину контура фигуры, где 0 означает самую тонкую линию.

width — новая ширина контура фигуры
int getLineStyle() Возвращает стиль контура фигуры.

Допустимые значения:
LINE_STYLE_SOLID — сплошная линия
LINE_STYLE_DOTTED — точечная линия
LINE_STYLE_DASHED —  пунктирная линия
void setLineStyle(int style) Устанавливает стиль контура фигуры.

style — новый стиль контура фигуры
Допустимые значения: LINE_STYLE_SOLID — сплошная линия
LINE_STYLE_DOTTED — точечная линия
LINE_STYLE_DASHED — пунктирная линия
Радиус скругления углов
Функция Описание
double getRadius() Возвращает радиус скругления углов.
void setRadius(double radius) Устанавливает радиус скругления углов.

radius — радиус скругления углов скругленного прямоугольника.
Режим отображения (2D / 3D)
Функция Описание
ShapeDrawMode getDrawMode() Возвращает режим отображения фигуры (где ее рисовать: в 2D, 3D или 2D+3D анимации). Поскольку скругленные прямоугольники могут отображаться только в 2D анимации, возвращает SHAPE_DRAW_2D.
void setDrawMode(ShapeDrawMode drawMode) Задает режим отображения фигуры (где ее рисовать: в 2D, 3D или 2D+3D анимации).
Функция может быть вызвана только один раз и только для фигуры, созданной программно с помощью конструктора без аргументов. Вызов функции, который будет менять уже заданный режим, приведет к ошибке.
drawMode — новый режим отображения фигуры
Поскольку скругленные прямоугольники могут отображаться только в 2D анимации, единственным возможным значением является SHAPE_DRAW_2D.
Группа
Функция Описание
ShapeGroup getGroup() Возвращает группу, содержащую эту фигуру.
Уровень
Функция Описание
Level getLevel() Возвращает уровень, на котором находится эта фигура.
Точки внутри фигуры
Функция Описание
boolean contains(double px, double py) Возвращает true, если фигура содержит точку с заданными координатами.

px — координата x относительно содержимого фигуры
py — координата y относительно содержимого фигуры
Point randomPointInside() Возвращает произвольно выбранную точку внутри фигуры.
Эта функция использует генератор случайных чисел объекта, содержащего эту фигуру. (Сгенерирует исключение, если фигура была создана из кода и не включена ни в какую из групп, в таком случае используйте функцию randomPointInside(Random rng)).
Point randomPointInside(java.util.Random rng) Возвращает произвольно выбранную точку из площади фигуры. Эта функция использует заданный генератор случайных чисел.

rng — генератор случайных чисел.
Как мы можем улучшить эту статью?