Как удалить лишние линейные объекты?
-
- Участник
- Сообщения: 68
- Зарегистрирован: 30 авг 2014, 11:11
- Репутация: 0
Как удалить лишние линейные объекты?
Здравствуйте!
Ребята помогите пожалуйста решить проблему.
Стоить необходимость удаления линейных объектов, но не всех, а выборочно.
На прикрепленном скрине линейные объекты условно обозначены точками. В некоторых случаях эти точки мешают читаемости, соответственно их нужно удалить. Ручной способ конечно эффективен, но объем большой, а сроки как всегда маленькие. Существуют ли альтернативы по автоматизации такого процесса.
Изначально все линейные объекты (сейчас условно обозначенные точками), были полигонами, может это как-то поможет...
Ребята помогите пожалуйста решить проблему.
Стоить необходимость удаления линейных объектов, но не всех, а выборочно.
На прикрепленном скрине линейные объекты условно обозначены точками. В некоторых случаях эти точки мешают читаемости, соответственно их нужно удалить. Ручной способ конечно эффективен, но объем большой, а сроки как всегда маленькие. Существуют ли альтернативы по автоматизации такого процесса.
Изначально все линейные объекты (сейчас условно обозначенные точками), были полигонами, может это как-то поможет...
- Вложения
-
- Удалить точки.jpg (324.03 КБ) 6402 просмотра
Последний раз редактировалось destribution 04 сен 2015, 03:42, всего редактировалось 1 раз.
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 792
- Ваше звание: званий не имею
- Откуда: Москва
Re: Как удалить лишние линейные объекты?
Скрин не прикрепился.destribution писал(а): На прикрепленном скрине
Редактор материалов, модератор форума
-
- Новоприбывший
- Сообщения: 12
- Зарегистрирован: 25 июн 2015, 12:34
- Репутация: 2
Re: Как удалить лишние линейные объекты?
Selection - select by location
select features from - "твои линии"
Source layer - "тот слой которому мешают линии" (надеюсь, подписи переведены в аннотации)
Spatial selection method: target layers features are whithin a distance of the Source layers features
ниже выставляешь расстояние от линий до надписей
select features from - "твои линии"
Source layer - "тот слой которому мешают линии" (надеюсь, подписи переведены в аннотации)
Spatial selection method: target layers features are whithin a distance of the Source layers features
ниже выставляешь расстояние от линий до надписей
-
- Участник
- Сообщения: 68
- Зарегистрирован: 30 авг 2014, 11:11
- Репутация: 0
Re: Как удалить лишние линейные объекты?
простите, видимо проглядел ( исправил...Александр Мурый писал(а):Скрин не прикрепился.
-
- Участник
- Сообщения: 68
- Зарегистрирован: 30 авг 2014, 11:11
- Репутация: 0
Re: Как удалить лишние линейные объекты?
rapackivi Спасибо, замечательный вариант, сегодня попробую.
Правда есть ещё одна загвоздка, линейные объекты были созданы на основании площадных. В этом случае, наверно придётся работать ручками и выбирать из площадных объектов те, которые нужно исключить в линейных?
И ещё, какой лучше всего использовать метод пространственной выборки ?
Правда есть ещё одна загвоздка, линейные объекты были созданы на основании площадных. В этом случае, наверно придётся работать ручками и выбирать из площадных объектов те, которые нужно исключить в линейных?
И ещё, какой лучше всего использовать метод пространственной выборки ?
-
- Новоприбывший
- Сообщения: 12
- Зарегистрирован: 25 июн 2015, 12:34
- Репутация: 2
Re: Как удалить лишние линейные объекты?
Какая разница на основе чего они были созданы? Есть СЕЙЧАС линии. Одни будут попадать в радиус влияния надписи. И будут удалены. Другие не попадают - и будут жить. А, ну да - могут остаться парсеры-куски, фантомы.
Впрочем - попробуйте метод. Если фантомы будут бросаться в глаза - усложните запрос. У линейных объектов, по-видимому, было создано принадлежности их к полигону-родителю. Алгоритм такой:
1 линия в зоне уничтожения?
2.1 Нет - берем след.линию.
2.2 Да - проверяем по полю имени родителя полигона в списке всех линий "братьев". Найденных уничтожаем. Возвращаемся к пункту 1.
Как это реализовать в коде запроса - я не знаю, я недавно только вылез из паскаля
Но, может быть, "старшие" товарищи подскажут как устроить это геноцид линий.
Впрочем - попробуйте метод. Если фантомы будут бросаться в глаза - усложните запрос. У линейных объектов, по-видимому, было создано принадлежности их к полигону-родителю. Алгоритм такой:
1 линия в зоне уничтожения?
2.1 Нет - берем след.линию.
2.2 Да - проверяем по полю имени родителя полигона в списке всех линий "братьев". Найденных уничтожаем. Возвращаемся к пункту 1.
Как это реализовать в коде запроса - я не знаю, я недавно только вылез из паскаля

Но, может быть, "старшие" товарищи подскажут как устроить это геноцид линий.
-
- Интересующийся
- Сообщения: 25
- Зарегистрирован: 21 авг 2015, 11:29
- Репутация: 3
Re: Как удалить лишние линейные объекты?
Если я правльно понял ТЗ, то надо удалить линии, которые не имеют общих границ с полигонами. Тогда можно применить тул "Polygon To Line" при этом поставить галочку "Identify and store polygon neighboring information". Далее надо атрибутно удалить все записи, которые попадают в условие "-1 in (LEFT_FID, RIGHT_FID)". Атрибуты LEFT_FID, RIGHT_FID будут равны -1, когда нет общих границ полигонов.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость