Размеры буферной зоны и сохранение Пространственного запроса
-
- Интересующийся
- Сообщения: 35
- Зарегистрирован: 11 мар 2013, 11:03
- Репутация: 1
Размеры буферной зоны и сохранение Пространственного запроса
Задача: 1. Необходимо создать окружность с радиусом 50 км вокруг точки с известными координатами - проще всего реализуется через Буферные зоны. 2. С помощью пространственного запроса (либо другими методами) отобрать объекты из точечного слоя которые попали внутрь окружности. 3. Сохранить выборку в отдельный слой и уже в нем выбрать объекты, соответствующие условию (например, выше 30 м - все данные есть в исходной таблице атрибутов). 4. Далее внутри окружности также будут создаваться полигоны и отбираться объекты в их границах.
Возникшие проблемы: а) единицы буферной зоны - метры/километры, она же получается на карте в градусах (Единицы карты в Свойствах проекта - метры, проекция WGS 84 EPSG:4326, десятичные градусы. б) В результате Пространственного запроса создается только выделение, выборка внутри окружности в отдельный слой не сохраняется. Ошибка: "Данная операция поддерживается только для источников OGR, POSTGRES и SPATIALITE."
Соответственно, невозможно продолжить работу дальше. Поэтому обращаюсь за помощью
Версия 2.4 Chugiak, сборка с официального сайта для 32-разрядн. системы для новых пользователей.
Возникшие проблемы: а) единицы буферной зоны - метры/километры, она же получается на карте в градусах (Единицы карты в Свойствах проекта - метры, проекция WGS 84 EPSG:4326, десятичные градусы. б) В результате Пространственного запроса создается только выделение, выборка внутри окружности в отдельный слой не сохраняется. Ошибка: "Данная операция поддерживается только для источников OGR, POSTGRES и SPATIALITE."
Соответственно, невозможно продолжить работу дальше. Поэтому обращаюсь за помощью
Версия 2.4 Chugiak, сборка с официального сайта для 32-разрядн. системы для новых пользователей.
Последний раз редактировалось Charaunica 02 сен 2014, 22:56, всего редактировалось 1 раз.
- rhot
- Гуру
- Сообщения: 1727
- Зарегистрирован: 25 янв 2011, 17:50
- Репутация: 194
- Ваше звание: доктор
- Откуда: Архангельск
Re: Размеры буферной зоны и сохранение Пространственного зап
Может быть, пересохранить в Postgres/SpatiLite?
___________(¯`·.¸(¯`·.¸ Scientia potentia est _/ {SILVA}:::{FOSS}:::{GIS} \_ Знание сила ¸.·´¯)¸.·´¯)___________
-
- Интересующийся
- Сообщения: 35
- Зарегистрирован: 11 мар 2013, 11:03
- Репутация: 1
Re: Размеры буферной зоны и сохранение Пространственного зап
При пересохранении в SpatiaLite и повторении действий выборки сохраняются в слой, НО совсем рандомно - из выбранного точечного слоя,не из области окружности, хотя графически выделяет все правильно
- Игорь Черниенко
- Активный участник
- Сообщения: 137
- Зарегистрирован: 28 мар 2009, 01:05
- Репутация: 11
- Откуда: Хабаровск, Южно-Сахалинск
Re: Размеры буферной зоны и сохранение Пространственного зап
А каким образом повторялось действие, через пространственные запросы qgis? В SpatiaLite почти все необходимые Вам действия можно выполнить одним запросом, чем-то вроде.
tbl_point_layer -- Ваш слой
point_id,point_geom,some_attr -- идентификатор, поле геометрии и атрибут в точечном слое
tbl_some_point -- таблица с точкой
some_point_geom -- поле геометрии (собственно точка)
required_srid -- соответствующая проекция
x -- значение атрибута
Лучше, наверное, все-таки создать представления или "промежуточные" таблицы
Код: Выделить всё
select point_id,point_geom
from tbl_point_layer,
(selelct buffer(transform(some_point_geom,required_srid),50) as buf_geom
from tbl_some_point) as a
where contains(a.buf_geom,transform(point_geom,required_srid))
and tbl_point_layer.some_attr<x
point_id,point_geom,some_attr -- идентификатор, поле геометрии и атрибут в точечном слое
tbl_some_point -- таблица с точкой
some_point_geom -- поле геометрии (собственно точка)
required_srid -- соответствующая проекция
x -- значение атрибута
Лучше, наверное, все-таки создать представления или "промежуточные" таблицы
-
- Интересующийся
- Сообщения: 35
- Зарегистрирован: 11 мар 2013, 11:03
- Репутация: 1
Re: Размеры буферной зоны и сохранение Пространственного зап
Игорь Черниенко писал(а):А каким образом повторялось действие, через пространственные запросы qgis? В SpatiaLite почти все необходимые Вам действия можно выполнить одним запросом, чем-то вроде.
Точно также,через пространственные запросы. За предложенный запрос спасибо, но с программированием я пока на "Вы", в первую очередь хотелось бы реализовать задумку через команды интерфейса.
Какие именно промежуточные таблицы Вы предлагаете?
-
- Интересующийся
- Сообщения: 35
- Зарегистрирован: 11 мар 2013, 11:03
- Репутация: 1
Re: Размеры буферной зоны и сохранение Пространственного зап
Задать нужный радиус буферной зоны в км помогло перепроецирование данных в прямоугольную СК.
Но Пространственный запрос так нормально и не сохраняется - итоговый слой охватывает совершенно не ту территорию.
Но Пространственный запрос так нормально и не сохраняется - итоговый слой охватывает совершенно не ту территорию.
- tsatsara
- Интересующийся
- Сообщения: 41
- Зарегистрирован: 30 авг 2011, 12:22
- Репутация: 5
- Откуда: СПб
Re: Размеры буферной зоны и сохранение Пространственного зап
а вы пробовали через
вектор-выборка - пространственная выборка?
надо, чтобы оба слоя при этом были в одной системе координат.
потом правой кнопкой - сохранить как и поставить галочку "только выделенные"
вектор-выборка - пространственная выборка?
надо, чтобы оба слоя при этом были в одной системе координат.
потом правой кнопкой - сохранить как и поставить галочку "только выделенные"
-
- Интересующийся
- Сообщения: 35
- Зарегистрирован: 11 мар 2013, 11:03
- Репутация: 1
Re: Размеры буферной зоны и сохранение Пространственного зап
tsatsara , спасибо большое, Ваш совет помог!
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя