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

ГИС Регион

Используйте элемент ГИС Регион, чтобы обозначить какую-либо закрытую область на карте. Каждая точка области будет иметь свои координаты широты и долготы, задаваемые в градусах.

Вы можете добавить элемент ГИС Регион только на карту ГИС. Сначала добавьте в модель фигуру ГИС Карта, чтобы использовать элементы разметки ГИС пространства.

Чтобы добавить регион

  1. Вы можете использовать поиск по карте, чтобы легко и быстро создать на ней ГИС регион. Любой регион, который вы найдете, например, область или страну, вы можете преобразовать в объект разметки ГИС Регион или ГИС Мультирегион , и это позволит вам сэкономить большое количество времени по сравнению с ручной отрисовкой всех точек региона. Кроме того, для региона, созданного из поиска, будет автоматически заполнен параметр Заголовок.
  2. Чтобы нарисовать регион самостоятельно, дважды щелкните мышью по объекту ГИС Регион в секции ГИС палитры Разметка пространства.
  3. Значок элемента поменяется на . Это означает, что вы перешли в режим рисования и теперь можете рисовать область на карте ГИС точка за точкой.
  4. Щелкните по карте, чтобы добавить первую точку региона. Каждым следующим щелчком вы будете добавлять по новой точке.

  5. Завершите рисование двойным щелчком мыши.

  6. Вы можете редактировать регион после того, как закончите его рисовать.

Свойства

Основные

Имя — Имя региона.

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

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

Заблокировать местоположение — Если опция выбрана, то объект будет закреплен на карте. Вы сможете выделить его, чтобы посмотреть его свойства, но не сможете перемещать его по карте.

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

Внешний вид

Цвет заливки — Задает цвет заливки региона. Если вы не хотите, чтобы регион был закрашен, выберите Нет заливки.

Цвет линии — Задает цвет линии. Если вы не хотите, чтобы линия контура была видна, выберите Нет цвета.

Толщина линии — Задает толщину линии контура региона.

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

Редактирование региона

Вы можете редактировать регион путем изменения количества и местоположения его точек. При редактировании самой карты ГИС, например, при изменении масштаба или передвижении по ней, сам регион не изменится: его точки останутся на своих координатах широты и долготы.

Чтобы передвинуть точку редактирования региона

  1. Выделите регион на карте щелчком мыши.
  2. Перетащите точку с помощью мыши.

Чтобы добавить новую точку редактирования региона

  1. Выделите регион на карте щелчком мыши.
  2. Сделайте двойной щелчок мышью по той грани региона, куда вы хотите добавить новую точку.

Чтобы удалить точку редактирования региона

  1. Выделите регион на карте щелчком мыши.
  2. Сделайте двойной щелчок мышью по той точке, которую вы хотите удалить.

Функции

Вы можете динамически изменять свойства региона ГИС во время выполнения модели, используя перечисленные функции.

Основные функции
Функция Описание
String getTitle() Возвращает имя региона ГИС.
void setTitle(String title) Задает имя региона ГИС.

title - название региона.
double area() Возвращает площадь региона в квадратных метрах.
double area(AreaUnits units) Возвращает площадь региона в заданных единицах измерения.

units - a константа, определяющая единицы измерения площади
boolean isVisible() Проверяет, виден ли элемент во время выполнения модели. Возвращает true, если регион ГИС виден. Возвращает false, если регион ГИС не виден.
void setVisible(boolean v) Задает видимость региона ГИС.

v - видимость. Если значение равно true, то точка будет отображаться, если false - то нет.
INetwork getNetwork() Возвращает сеть, к которой принадлежит регион, или null, если такой сети нет.
GISRoute getConnection(int index) Возвращает соединение (маршрут ГИС) с указанным индексом, соединяющее эту точку ГИС с другим элементом ГИС.

index — индекс запрашиваемого маршрута. Значение индекса должно находиться в диапазоне (0, this.getConnectionsCount() - 1).
int getConnectionsCount() Возвращает число соединений, установленных между этим узлом и другими узлами.
boolean contains(double lat, double lon) Проверяет, относится ли к региону точка с заданными координатами.

lat - широта точки
lon - долгота точки
Point randomPointInside(Random rng, Point out) Возвращает случайно выбранную точку внутри региона или рядом с регионом. Для вызова функции используется указанный генератор случайных чисел.

rng - генератор случайных чисел
out - объект, которому будет присвоено полученное значение. Может быть равен null
Расстояние
Функция Описание
double getNearestPoint(double lat, double lon, Point out) Возвращает объекту out ближайшую к указанным координатам точку на этом маршруте. Результат рассчитывается в виде квадратичной погрешности расстояния до точки.

lat - долгота точки в градусах (-90°…(юг)…0°…(север)…90°).
lon - широта точки в градусах (-180°…(юг)…0°…(север)…180°).
out - имя точки, которой передается результат.
double getNearestPoint(Point givenPoint, Point out) Возвращает объекту out ближайшую к указанной точке точку на этом маршруте. Результат рассчитывается в виде квадратичной погрешности расстояния до точки, в метрах.


givenPoint - имя точки, до которой рассчитывается расстояние
out - имя точки, которой передается результат
Внешний вид
Функция Описание
Color getFillColor() Возвращает цвет заливки элемента. Если у элемента нет заливки или в качестве заливки используется текстура, возвращает null. Для определения текстуры используйте функцию getFillTexture().
void setFillColor(Paint color) Задает цвет заливки или текстуру элемента.

color - новый цвет заливки. Передайте null в значении параметра, чтобы убрать заливку.
Color getLineColor() Возвращает цвет контура элемента или null, если у контура нет цвета.
void setLineColor(Paint lineColor) Задает цвет или текстуру контуру элемента.

lineColor - новый цвет контура элемента. Передайте null в значении параметра, чтобы убрать контур фигуры.
LineStyle getLineStyle() Возвращает стиль контура элемента.

Допустимые значения:
LINE_STYLE_SOLID - сплошная линия
LINE_STYLE_DOTTED - точечная линия
LINE_STYLE_DASHED - пунктирная линия
void setLineStyle(LineStyle lineStyle) Задает стиль контура элемента.

lineStyle - новый стиль контура элемента

Допустимые значения:
LINE_STYLE_SOLID - сплошная линия
LINE_STYLE_DOTTED - точечная линия
LINE_STYLE_DASHED - пунктирная линия
double getLineWidth() Возвращает ширину контура элемента.
void setLineWidth() Задает ширину контура элемента. Передайте 0, чтобы задать минимальную ширину.

width - новая ширина контура элемента.
Texture getFillTexture() Возвращает текстуру заливки элемента, если в качестве заливки используется текстура.
Texture getLineTexture() Возвращает текстуру контура элемента, если в качестве контура используется текстура.
Работа с мультирегионами
Функция Описание
String getTitle() Возвращает имя мультирегиона.
void setTitle(String title) Задает имя мультирегиона.

title - имя мультирегиона в кавычках.
List getRegions() Возвращает список регионов, входящих в мультирегион.
boolean add(GISRegion region) Добавляет указанный регион в мультирегион.

region - регион, который нужно добавить.
boolean addAll(Collection regions) Добавляет все регионы в мультирегион.

regions - коллекция регионов.
boolean remove(GISRegion region) Удаляет указанный регион из мультирегиона.

region - регион, который нужно удалить.
boolean removeAll(Collection regions) Удаляет все регионы из мультирегиона.

regions - коллекция регионов.
double area() Возвращает площадь мультирегиона в квадратных метрах.
double area(AreaUnits units) Возвращает площадь мультирегиона в указанных единицах измерения.

units - константа, указывающая на нужные единицы измерения площади.
void setVisible(boolean visible) Задает видимость мультирегиона.

v - видимость: true - видим, false - невидим.
void setFillColor(Paint color) Задает цвет заливки или текстуру элемента.

color - новый цвет заливки. Передайте null в значении параметра, чтобы убрать заливку.
void setLineColor(Paint color) Задает цвет заливки или текстуру контура.

lineColor - новый цвет контура. Передайте null в значении параметра, чтобы убрать контур.
void setLineWidth(double width) Задает ширину контура элемента. Передайте 0, чтобы задать минимальную ширину.

width - новая ширина контура элемента
void setLineStyle(LineStyle lineStyle) Задает стиль контура элемента.

lineStyle - новый стиль контура элемента

Допустимые значения:
LINE_STYLE_SOLID - сплошная линия
LINE_STYLE_DOTTED - точечная линия
LINE_STYLE_DASHED - пунктирная линия
GISRegion randomRegionInside() Возвращает случайный регион из числа входящих в мультирегион.
Удаление
Функция Описание
void remove() Удаляет регион ГИС из презентации. Если регион ГИС не является частью презентации модели, функция не выполняет ничего.
Обратите внимание, что удаление из презентации не обязательно подразумевает удаление из логики модели, поскольку логические сети и маршруты могли быть заданы еще до удаления элемента и не исчезают.
Как мы можем улучшить эту статью?