У меня есть слой линии и слой многоугольника. Оба файла имеют одинаковый SRS. Я хочу в новом файле формы только линии, покрытые полигонами.
Я попробовал в QGIS Vector -> Geoprocessing -> Clip
инструмент, но у меня только пустой шейп-файл.
Как мне сделать это с QGIS?
Vector -> Geometry Tools -> Multipart to singleparts
Ответы:
Используйте
Vector -> Geoprocessing -> Clip
инструментВвод - это слой ваших дорог, слой обрезки - слой многоугольника.
Поместите слой линии в «слой входного вектора», а слой многоугольника в «Слой клипа».
источник
Это доставляло мне бесконечные часы разочарования, и приведенные выше ответы (даже те, что были в комментариях) также не работали для меня, но я нашел свое собственное решение, которое помогло.
Оказывается, чтобы сделать пересечение или клип между двумя слоями, они должны быть сохранены на диске с одним и тем же CRS . Таким образом, даже если они выглядят так, как будто они перекрываются в QGIS, он может выполнять свои собственные преобразования «На лету», чтобы выровнять их.
Чтобы это исправить, сделайте это для каждого слоя:
Если вы хотите узнать, вызывает ли вас проблема с преобразованием «На лету», сделайте следующее:
Если ваш CRS не совпадает, слои больше не должны перекрываться. Вы можете увидеть положение любого слоя, щелкнув правой кнопкой мыши по слою и перейдя к Zoom to Layer . Когда вы загружаете два файла с одинаковыми CRS, они должны идеально выровняться.
источник