Как автоматически нанести точки сети опробования?

0 голосов
спросил 16 Окт, 07 от Flann (1,260 баллов) в категории Программные продукты Esri
Такая вот задача.
Есть осевая линия (профиль), относительно которой нужно построить сеть опробования с заданным шагом.
Как это сделать - ума не приложу. :(
Для наглядности даже картинки набросал. За схематичность не ругайте...

Было так -
image

Нужно сделать вот такое -
image

4 Ответы

0 голосов
ответил 16 Окт, 07 от Flann (1,260 баллов)
Спасибо всем за участие...
Разобрался самостоятельно.
Вопрос закрыт.
0 голосов
ответил 17 Окт, 07 от Levran1 (4,060 баллов)
ну так сообщи нам как сделал!!Тоже ведь интересно и полезно
0 голосов
ответил 17 Окт, 07 от Flann (1,260 баллов)
ну так сообщи нам как сделал!!Тоже ведь интересно и полезно

    Вечером напишу инструкцию и пришлю в личку. А если будет хорошее настроение - то выложу и в эту тему.
0 голосов
ответил 19 Окт, 07 от Flann (1,260 баллов)
Итак, настроение у меня сегодня хорошее. так что выкладываю описание.

Сперва отрисовываем осевую линию, от которой и будет отсчитываться наша сетка. Причем рисуем ее в шейпе с типом содержимого - polyline M (это важно, т.к. этот тип позволяет сохранять информацию о направлении линии). Затем, выделяем линию, переходим в режим Modify Feature и щелкаем по ней правой клавишей. Выбираем Route Measure Editing-> Set As Distance... В появившемся окне вводим цифру 0. Теперь точки сетки будут проставляться начиная отсчет от НАЧАЛА линии. В таблице атрибутов создаем поле R_ID (это будет идентификатор нашей линии, можете назвать его по-другому) и вводим в него значение, например, "1". Итак, базовая часть готова.
После этого создаем таблицу типа dBASE Table с "координатами" точек (как вариант, подтягиваем таблицу из экселя, а потом в ArcMap экспортируем ее в данный формат по правой клавише через Data->Export), это необходимо, чтобы у каждой записи в таблице появился Object-ID.
В самой таблице будут следующие поля: R_ID (значение совпадает с линией, т.е. в нашем случае - 1, и одинаково для всех точек), M - шаг сетки вдоль линии (в моем примере это вертикальный, 50), точнее - расстояние от начала линии до точки, PK_OF - смещение точек относительно линии, может быть положительным и отрицательным. У меня были и те значения, и другие, т.к. линия была осевой и точки нужно было проставить и справа, и слева от нее.
Затем добавляем таблицу в ArcMap. Щелкаем по ней правой клавишей и выбираем Display Route Events. В появившемся меню пункты Route Identifier выбираем соответственно как R_ID, Measure - M, Offset - PK_OF и жмем ОК.
В итоге у нас появляется новый слой с точками под названием "*название таблицы* Events". Затем экспортируем его в .shp-файл и работаем с ним дальше как с обыкновенным шейпом.
На все про все у меня ушло минут 10 чистого времени (не считая 8 часов на выработку методики), а единственное неудобство заключается в формировании таблицы. У меня для сети размером 1,5х2км и шагом 50х50 метров получилась 1271 строка данных в таблице, но автозаполнение в MS Excel/OO.org Calc сильно ускоряет процесс ее подготовки.

Напоследок в качестве примера кусочек таблицы -

R_ID     M     PK_OF
1     0     0
1     50     0
1     100     0
1     150     0
1     200     0
1     0     50
1     50     50
1     100     50
1     150     50
1     200     50
1     0     100
1     50     100
1     100     100
1     150     100
1     200     100
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...