Vorrei fare una vera clip GIS in R di poligoni dei suoli usando una serie di poligoni a contorno singolo, ma non riesco a trovare una funzione R per farlo correttamente. Dovrebbe funzionare esattamente come la clipfunzione di ArcMap di ESRI. Ho provato il overmetodo nel sppacchetto ma non sembra funzionare per polis su polis.
Un suggerimento è stato quello di utilizzare la gIntersectionin rgeospacchetto come una clip utilizzando il seguente codice:
#------------------------------------
library(rgeos)
library(maptools)
#Read layers as SpatialPolygonsDataFrame (both the same Albers projection)
Soils_poly = readShapePoly("Soils_polygons") #Note - Has 400 polygons
clipper_poly = readShapePoly("clipper_polygon") #Note - Has 1 polygon
#Try gintersection as clip
Clipped_polys = gIntersection(Clipper_Tile_poly, Soils_poly)
#-----------------------------------
Questa operazione richiede 5 minuti (troppo lento) ed errori con questo:
Errore in RGEOSBinTopoFunc (spgeom1, spgeom2, byid, id, drop_not_poly, "rgeos_intersection"): TopologyException: nessuna directory in uscita trovata a -721459.77681285271 2009506.5980877089
Ho anche provato questo codice per verificare la sovrapposizione:
gIntersects(Clipper_Tile_poly, Soils_poly)
e il risultato è stato VERO. clipfunzione in ESRI ArcMap funziona bene per questi dati.
Qualcuno sa di una funzione R per fare correttamente una clip su poligoni spaziali usando poligoni spaziali?





