Принцип работы инструмента Сортировать (Управление данными)

Действие инструмента Сортировать (Sort) основывается на его способности сортировать объекты по пространственному признаку. При сортировке по пространственному признаку эффективность пространственных или геометрических операций существенно возрастает.

Для сортировки объектов по пространственному признаку (т.е. по расположению) необходимо выбрать Форма (Shape) в параметре Поля (Field(s)). При выборе поля геометрии активируется параметр Метод пространственной сортировки (Spatial Sort Method), для которого доступны пять раскрывающихся опций, с помощью которых можно задать алгоритм сортировки. К этим опциям относятся: UL, UR, LL, LR и PEANO.

Пространственная сортировка с использованием опций UL, UR, LL, LR

Имена первых четырех опций представляют собой аббревиатуры начальной точки сортировки. Например, UR — верхний правый (upper right), LR — нижний правый (lower right). Эти опции выполняют проверку таких объектов, как плоттер или принтер. При выборе опции UR проверка начинается в верхнем правом углу, при этом первым выбирается верхний объект. Проверка выполняется в направлении сверху вниз. Если два или более объектов расположены на одной горизонтальной линии, то они упорядочиваются справа налево. Проверка продолжается в направлении вниз и влево вплоть до достижения противоположного (нижнего левого, в данном случае) угла. Объекты сортируются в том же порядке (или в обратном, если выбрано значение DESCENDING), в котором они проверяются или открываются.

Продемонстрировать использование опции сортировки UR достаточно просто, если взять в качестве входных данных равномерно распределенный набор точек.

Пространственная сортировка с использованием опции UR

Числа на диаграмме выше представляют последовательность сортировки при использовании опции UR. При выборе опции LL используется обратный порядок сортировки.

Далее рассматривается простой пример совместного использования направлений вверх и вправо.

Пример сортировки, демонстрирующий различия между направлениями вверх и вправо.

Обратите внимание, что U в данном случае является приоритетным по сравнению с R. R принимается в расчет только в том случае, когда некоторые объекты расположены на том же уровне по горизонтали.

Сортировка по пространственному признаку с использованием опции PEANO

Опция PEANO использует алгоритм кривой Пеано. Данный алгоритм предполагает просмотр всех расположений в меньшей окрестности перед переходом в следующую окрестность. Таким образом, близлежащие окрестности расположены ближе по кривой (или пути). Вместо поиска по всему экстенту выполняется поиск поочередно по меньшим окрестностям. По завершении обработки большей области (скажем, из 5 или 8 меньших окрестностей) выполняется переход в другую большую область и сортировка возобновляется с меньшей окрестности в большей области.

Пример сортировки с использованием опции PEANO

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

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