Пространственное соединение ArcGIS Pro - PullRequest
0 голосов
/ 08 марта 2020

Я получил эти файлы форм Highway1, Highway2, Highway3 et c ... Таблицы атрибутов одинаковы, они содержат информацию о широте, долготе, направлении, shape_length и speed_allowed.

Я хочу создать скрипт в python, который позволил бы мне создать пространственное соединение между каждым файлом формы, который пересекается с другим. Например, если Highway1 пересекают Highway2, Highway12 и Highway22, я хочу 3 пространственных соединения, каждое соединение должно содержать все данные с шоссе 1 и где пересекаются другие шоссе, чтобы объединить эту информацию и где она не пересекается, чтобы иметь нулевые значения для вторая магистраль.

Пожалуйста, помогите мне написать сценарий, чтобы автоматически находить, пересекает ли шоссе1 другую магистраль, и создает ли она такое пространственное соединение.

Спасибо всем!

1 Ответ

1 голос
/ 11 марта 2020

Пожалуйста, поделитесь реплицируемыми примерами кода и отметьте { ссылка }

Однако вы должны найти то, что вам нужно, в документации ESRI и в ArcPy Документация . Попробуйте их примеры кода, адаптируйте их под свои нужды, и тогда вы сможете задать более конкретный вопрос.

Вот пример Документов ESRI о пересечении :

#Name: VegRoadIntersect.py
# Purpose: Determine the type of vegetation within 100 meters of all stream crossings

# Import system modules
import arcpy

# Set the workspace (to avoid having to type in the full path to the data every time)
arcpy.env.workspace = "c:/data/data.gdb"    

# Process: Find all stream crossings (points)
inFeatures = ["roads", "streams"]
intersectOutput = "stream_crossings"
clusterTolerance = 1.5    
arcpy.Intersect_analysis(inFeatures, intersectOutput, "", clusterTolerance, "point")

# Process: Buffer all stream crossings by 100 meters
bufferOutput = "stream_crossings_100m"
bufferDist = "100 meters"
arcpy.Buffer_analysis(intersectOutput, bufferOutput, bufferDist)

# Process: Clip the vegetation feature class to stream_crossing_100m
clipInput = "vegetation"
clipOutput = "veg_within_100m_of_crossings"
arcpy.Clip_analysis(clipInput, bufferOutput, clipOutput)

# Process: Summarize how much (area) of each type of vegetation is found
# within 100 meter of the stream crossings
statsOutput = "veg_within_100m_of_crossings_stats"
statsFields = [["shape_area", "sum"]]
caseField = "veg_type"
arcpy.Statistics_analysis(clipOutput, statsOutput, statsFields, caseField)

...