Alexandre, não sei se
entendi bem sua necessidade, mas deixo uma sugestão baseado no
que você e o Elias já fizeram...
#Pacotes
require(shapefiles)
require(rgdal)
require(maptools)
require(spatstat)
#-------------------------------------------------------------------------------
#Criação
de 4 polígonos
sr
<- SpatialPolygons(list(
Polygons(list(Polygon(cbind(c(180114,
180553, 181127, 181477, 181294, 181007, 180409,
180162, 180114), c(332349, 332057, 332342, 333250, 333558,
333676,
332618, 332413, 332349)))),'1'),
Polygons(list(Polygon(cbind(c(180042,
180545, 180553, 180314, 179955, 179142, 179437,
179524, 179979, 180042), c(332373, 332026, 331426, 330889,
330683,
331133, 331623, 332152, 332357, 332373)))),'2'),
Polygons(list(Polygon(cbind(c(179110,
179907, 180433, 180712, 180752, 180329, 179875,
179668, 179572, 179269, 178879, 178600, 178544, 179046,
179110),
c(331086, 330620, 330494, 330265, 330075, 330233, 330336,
330004,
329783, 329665, 329720, 329933, 330478, 331062,
331086)))),'3'),
Polygons(list(Polygon(cbind(c(180304,
180403,179632,179420,180304),
c(332791, 333204, 333635, 333058, 332791)))),'4')))
plot(sr)
#Converte
em polígonos espaciais
srdf=SpatialPolygonsDataFrame(sr,
data.frame(row.names=c('1','2','3','4'), PIDS=1:4))
srdf@data
#Seleção
de pontos
set.seed(222)
pts
<- rpoispp(lambda=0.000012, win=srdf)
pts2
<- SpatialPoints(data.frame(pts$x, pts$y),
proj4string=CRS(as.character(NA)))
points(pts2)
#Classificação
dos pontos em cada área
pts$PIDS
<- over(pts2, srdf)$PIDS
pontos
<- data.frame(x=pts$x, y=pts$y, PID=pts$PIDS)
head(pontos)
#
x y PID
#
1 179576.1 330096.8 3
#
2 180224.7 332009.1 2
#
3 178968.3 330136.9 3
#
4 180495.7 332731.4 1
#
5 178880.9 329897.9 3
#
6 181047.9 333129.5 1
table(pontos$PID)
#
1 2 3 4
#
17 18 16 6
plot(sr);
points(pontos, col=pontos$PID)
#-------------------------------------------------------------------------------