R полигонов в границах

Я пытаюсь получить все полигоны, которые находятся в пределах границ листовки. Не нужно беспокоиться о листовке, вопрос больше о rgeos или других методах (или прежде всего о правильной функции). Я пробовал различные методы, и они работают нормально, если фигуры пересекают границы, но не могут получить фигуру, которая находится внутри границ (не касаясь ее)

library(leaflet)
library(rgdal)
library(raster)

subzones<- readShapeSpatial("subzones.shp")


N<- 51.5139 
S<-51.5130 
W<-(-0.1899)
E<-(-0.1890)

BB = matrix(c(W,E,E,W,W,N,N,S,S,N), nrow=5,ncol=2)
BB = Polygon(BB)
BB = Polygons(list(BB),1)
BB = SpatialPolygons(list(BB))

Пример, конечно, невозможно воспроизвести, но в целом ББ очень маленький, намного меньше, чем любая из подзон, - это только для целей тестирования. Если я сделаю ББ большего размера, чем, конечно, он поймает несколько подзон, то в одном из них, безусловно, будет небольшой. Переводя это на любой воспроизводимый пример - когда я увеличиваю масштаб в Лондоне, я не могу получить "Англию", поскольку она ничего не пересекает. Я безуспешно пробовал rgdal(gIntersection, gIntersects, gCovers, gCrosses, gOverlaps, gWithin, overGeoGeo, gContains и, возможно, несколько других) и растр (обрезать). Моя цель состоит в том, чтобы получить подмножество подзон (пространственных данных или данных), которые видны внутри поля карты. Есть идеи, что я делаю не так? или просто как это сделать?

Чтобы сделать возможным воспроизведение: шейп-файл здесь http://thematicmapping.org/downloads/TM_WORLD_BORDERS_SIMPL-0.3.zip

library(maptools)
getinfo.shape("TM_WORLD_BORDERS_SIMPL-0.3.shp") 
world.map <- readShapeSpatial("TM_WORLD_BORDERS_SIMPL-0.3.shp")

где-то в Лондоне есть маленький прямоугольник - как найти записи world.map, которые могут быть внутри bb - либо пересекают его, либо полностью содержат (здесь это будет только Великобритания, но я бы хотел, чтобы это работало, даже если ББ это размер европы)

РЕДАКТИРОВАТЬ: Это была проблема с шейп-файлом, содержащим мультилинии, а не правильные полигоны, спасибо

0 ответов

Другие вопросы по тегам