Топология листа VPF (Покрытие)
Резюме
Создает общую для всех листов топологию для всех разбитых на листы покрытий в библиотеке базы данных VPF или топологию для отдельного листа в библиотеке VPF.
Этот инструмент используется для заключительной обработки покрытия или библиотеки VPF, полученных в результате работы инструмента Экспорт в VPF (Export To VPF). Для повышения эффективности рекомендуется строить общую для всех листов топологию только после завершения конвертации всех покрытий в библиотеке VPF.
Дополнительные сведения о работе инструмента Топология листа VPF (Learn more about how VPF Tile Topology works)
Использование
-
Военный стандарт MIL-STD-2407 (28 июня 1996 года) содержит новое определение общей для всех листов топологии. Команда Топология листа VPF (VPF Tile Topology) была обновлена, чтобы соответствовать новой спецификации. Можно использовать дополнительный параметр, чтобы выбрать стандарт VPF 1993 или 1996 года.
-
Топология листа VPF (VPF Tile Topology) работает со всеми разбитыми на листы покрытиями библиотеки VPF или единым покрытием внутри библиотеки. Последний дополнительный параметр, VPF_cover, позволяет выбирать, какое покрытие в какой общей для всех листов топологии следует заполнять. Однако более эффективно запустить Топологию листа VPF (VPF Tile Topology) после того, как всех покрытия для библиотеки были конвертированы из формата VPF.
-
Топология листа VPF (VPF Tile Topology), использующая стандарт VPF 1993 года не будет работать, если вдоль границы листа совпадает более двух ребер. Топология листа VPF (VPF Tile Topology) не знает, как назначать значения левой и правой граней для каждого ребра.
-
Стандарт VPF 1996 года требует, чтобы на соединенных узлах была реализована общая для всех листов топология. Чтобы она работала правильно, столбец "first_edge" в таблицах соединенных узлов должен иметь тип Triplet.
-
Поскольку Топология листа VPF (VPF Tile Topology), вносит изменения в первичный файл в базе данных VPF, важно понимать, какие требования предъявляются к данным VPF, прежде чем удастся правильно выполнить процесс. Помнить надо о следующих наиболее важных особенностях общей для всех листов топологии стандарта 1996 года:
- Если ребро касается границы листа, точка, в которой происходит касание, должна быть узлом.
- Все узлы, существующие на границе, должны существовать в примыкающем листе, если таковой имеется.
- Все ребра, совпадающие с внутренним листом, должны существовать в обоих листах.
- Все ребра границ должны быть совершенно прямыми.
Синтаксис
Параметр | Объяснение | Тип данных |
VPF_library |
Местоположение базы данных VPF, для которой создается общая для всех листов топология. | Folder |
sig_digits (дополнительно) |
Количество цифр, которое будет использовать программное обеспечение при поиске совпадений координат узлов на границах листа. Чем больше цифра, тем меньше допуск поиска. Значение, предлагаемое по умолчанию, равно 4. | Long |
VPF_standard (дополнительно) |
Используемый стандарт VPF Стандарт VPF имеет два способа определения общей для всех листов топологии.
| Long |
spec_cover (дополнительно) |
Указывает, нужно ли обрабатывать все покрытия в библиотеке VPF или только заданное покрытие.
| String |
Пример кода
Следующий автономный скрипт демонстрирует, как экспортировать два покрытия в VPF, а затем создать общую для всех листов топологию для покрытий VPF.
# Name: VPFTile_Example.py
# Description: Exports two coverages to VPF format then builds tile topology
# Requirements: ArcInfo Workstation
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inCover1 = "coastb"
inCover2 = "coastc"
outFile1 = "C:/output/vpfdb/wlib/coast2"
outFile2 = "C:/output/vpfdb/wlib/coast3"
vpfLibrary = "C:/output/vpfdb"
vpfStandard = 96
specCover = "ALL"
# Execute VPFExport
arcpy.VPFExport_arc(inCover1, outFile1)
arcpy.VPFExport_arc(inCover2, outFile2)
# Execute VPFTile
arcpy.VPFTile_arc(vpfLibrary, "", vpfStandard, specCover)