Наложение событий на маршруте (Системы линейных координат)
Резюме
Выполняет наложение таблиц событий и создает выходную таблицу событий, представляющую из себя объединение или пересечение входных объектов.
Использование
-
Могут быть выполнены следующие наложения событий:линии на линию, линии на точку, точки на линию и точки на точку.
-
Входные события и события наложения должны быть основаны на одной системе измерений на маршруте.
-
Входные таблицы могут быть любого типа, поддерживаемого ArcGIS. Выходная таблица может быть файлом dBASE или таблицей базы геоданных.
-
Выходная таблица может быть отображена в ArcMap при помощи инструмента Создать слой событий на маршруте (Make Route Event Layer) либо при помощи команды Отобразить события на маршруте (Display Route Events) в ArcMap.
-
Если свойства входных событий и событий наложения имеют тип POINT, свойства выходного события также должны быть типа POINT.
-
Если свойства входных событий и событий наложения имеют тип LINE, свойства выходного события также должны быть типа LINE.
-
Если свойства входных событий или событий наложения имеют тип POINT, свойства выходного события также должны быть типа POINT, если выполняется наложение INTERSECT. Свойства выходных событий должны быть LINE, если выполняется наложение типа UNION.
-
Если свойства и входных событий и событий наложения имеют тип POINT, только точки, имеющие точно такие же значения измерений, считаются пересекающимися. Нет допуска поиска.
-
Атрибутивный индекс на поле идентификатора маршрута ускоряет процесс динамической сегментации (dynamic segmentation). Если вы будете использовать Выходную таблицу событий для динамической сегментации, рекомендуется создать атрибутивный индекс.
-
Используйте инструмент Создать представление таблицы (Make Table View) перед применением этого инструмента, чтобы значительно сократить число событий, которые будут обрабатываться.
-
Если во входном событии или событии наложения отсутствует поле ObjectID, используйте инструмент Создать таблицу запроса (Make Query Table) перед применением данного инструмента, чтобы добавить виртуальное поле ObjectID.
Синтаксис
Параметр | Объяснение | Тип данных |
in_table |
Входная таблица событий. | Table View |
in_event_properties |
Параметр, состоящий из полей, определяющих местоположения на маршруте и типа событий во входной таблице событий.
| Route Measure Event Properties |
overlay_table |
Таблица наложения событий. | Table View |
overlay_event_properties |
Параметр, состоящий из полей, определяющих местоположения на маршруте и типа событий в выходной таблице наложения событий. Поле идентификатора маршрута — Поле, содержащее значения, определяющие, к какому маршруту относится каждое из событий. Это поле может быть числовым или текстовым. Тип событий — Тип событий в выходной таблице наложения событий (POINT или LINE).
Поле измерений "От " — Поле, содержащее значения измерений. Является обязательным для точечных и линейных событий. При этом для события типа POINT этот параметр будет обозначен как "Поле измерений ". Поле измерений "До " — Поле, содержащее значения измерений. Это поле должно быть цифровым и требуется, если выбран тип событий LINE. | Route Measure Event Properties |
overlay_type |
Выполняемый тип наложения.
| String |
out_table |
Создаваемая таблица. | Table |
out_event_properties |
Параметр, состоящий из полей, определяющих местоположения на маршруте, и типа событий, которые будут записаны в выходную таблицу событий.
| Route Measure Event Properties |
zero_length_events (дополнительно) |
Сохранять линейные события нулевой длины. Параметр доступен, если тип выходного события — LINE.
| Boolean |
in_fields (дополнительно) |
Указывает, все ли поля из входных таблиц и таблиц наложений событий будут записаны в таблицу выходных событий.
| Boolean |
build_index (дополнительно) |
Определяет, будет ли создан атрибутивный индекс для поля идентификатора маршрутов, которое записывается в выходную таблицу событий.
| Boolean |
Пример кода
import arcpy
from arcpy import env
env.workspace = "C:/Data"
arcpy.OverlayRouteEvents_lr ("accident.dbf", "rkey POINT mile" , "pavecond.dbf", "rkey LINE fmp tmp", "INTERSECT", \
"accpav", "rkey POINT mile" )
Представленный автономный скрипт Python демонстрирует порядок применения функции OverlayRouteEvents.
# NAme: OverlayRouteEvents_Example.py
# Description: Point-on-line INTERSECT overlay (both tables are dBASE)
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "C:/Data"
# Set local variables
in_tbl = "accident.dbf"
in_props = "rkey POINT mile" # reused as out event properties
ov_tbl = "pavecond.dbf"
ov_props = "rkey LINE fmp tmp"
out_tbl = "accpav"
# Execute OverlayRouteEvents
arcpy.OverlayRouteEvents_lr (in_tbl, in_props, ov_tbl, ov_props, "INTERSECT", \
out_tbl, in_props)
Представленный автономный скрипт Python демонстрирует порядок применения функции OverlayRouteEvents с данными файловой базы геоданных.
# Name OverlayRouteEvents_Example2.py
# Description: Line-on-line UNION overlay (both tables are in a file geodatabase)
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "C:/Data/Pitt.gdb"
# Set local variables
in_tbl = "pavecond"
in_props = "rkey LINE fmp tmp" # reused as overlay and out event properties
ov_tbl = "pavetype"
out_tbl = "condtype"
# Execute OverlayRouteEvents
arcpy.OverlayRouteEvents_lr (in_tbl, in_props, ov_tbl, in_props, "UNION", \
out_tbl, in_props, "NO_ZERO")
Представленный автономный скрипт Python демонстрирует порядок применения функции OverlayRouteEvents с данными персональной базы геоданных.
# Name: OverlayRouteEvents_Example3.py
# Description: Line-on-line UNION overlay (both tables are in a personal geodatabase)
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "C:/Data/Pitt.mdb"
# Set local variables
in_tbl = "pavecond"
in_props = "rkey LINE fmp tmp" # reused as overlay and out event properties
ov_tbl = "pavetype"
out_tbl = "condtype"
# Execute OverlayRouteEvents
arcpy.OverlayRouteEvents_lr (in_tbl, in_props, ov_tbl, in_props, "UNION", \
out_tbl, in_props, "NO_ZERO")
Представленный автономный скрипт Python демонстрирует порядок применения функции OverlayRouteEvents с данными SDE.
# Name: OverlayRouteEvents_Example4.py
# Description: Point-on-line INTERSECT overlay (both tables are in enterprise geodatabase)
# Import system modules
import arcoy
from arcpy import env
# Set workspace
env.workspace = "Database Connections/Connection to Jerry.sde"
# Set local variables
in_tbl = gp.QualifyTableName("accident", wkspc)
in_props = "rkey POINT mile"
ov_tbl = gp.QualifyTableName("pavecond", wkspc)
ov_props = "rkey LINE fmp tmp"
out_tbl = "accpav"
out_props = "routekey POINT milepost" # names are changed for out table
# Execute OverlayRouteEvents
arcpy.OverlayRouteEvents_lr (in_tbl, in_props, ov_tbl, ov_props, "INTERSECT", \
out_tbl, out_props)