[R-br] Criar um convex hull para um objeto shapefile
ASANTOS
alexandresantosbr em yahoo.com.br
Segunda Janeiro 25 17:17:42 BRST 2016
Prezados Listeiros,
Eu gostaria de criar um convex hull que envolvesse 4 polígonos,
representados por um objeto oriundo da leitura de um readShapeLines(),
sem ter que transformar o objeto em SpatialPolygonsDataFrame, isso é
possível?
Meu CRM:
#Pacotes
require(rgdal)
require(maptools)
#-------------------------------------------------------------------------------
#Crio 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)
#Converto em polígono espacial
srdf=SpatialPolygonsDataFrame(sr,
data.frame(row.names=c('1','2','3','4'), PIDS=1:4))
srdf em data
#Criação do shapefile para ilustrar o problema
writeOGR(srdf, getwd(), 'POLY', 'ESRI Shapefile')
#Leitura do shapefile
contorno_line_X <- readShapeLines ("POLY.shp")
#Plot
plot(contorno_line_X)
#Tentativa de criar o convex hull
df.data = as.data.frame(contorno_line_X)
ch <- chull(df.data)
lines(ch, col="red") ##Não funciona
Obrigado,
--
======================================================================
Alexandre dos Santos
Proteção Florestal
IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso
Campus Cáceres
Caixa Postal 244
Avenida dos Ramires, s/n
Bairro: Distrito Industrial
Cáceres - MT CEP: 78.200-000
Fone: (+55) 65 8132-8112 (TIM) (+55) 65 9686-6970 (VIVO)
e-mails:alexandresantosbr em yahoo.com.br
alexandre.santos em cas.ifmt.edu.br
Lattes: http://lattes.cnpq.br/1360403201088680
OrcID: orcid.org/0000-0001-8232-6722
Researchgate: https://www.researchgate.net/profile/Alexandre_Santos10
LinkedIn: https://br.linkedin.com/in/alexandre-dos-santos-87961635
======================================================================
Mais detalhes sobre a lista de discussão R-br