<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">Alexandre, boa noite!</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Acredito que problema ocorra porque as.data.frame() não converte um objeto SpatialLines* do mesmo modo que um SpatialPoints* ou SpatialPolygons*. Uma opção é extrair e concatenar as coordenadas dos pontos das linhas.</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default"><font face="monospace, monospace">### <code r></font></div><div class="gmail_default" style=""><div class="gmail_default"><font face="monospace, monospace">setwd("d:\\temp")</font></div><div class="gmail_default"><font face="monospace, monospace">require(rgdal)</font></div><div class="gmail_default"><font face="monospace, monospace">require(maptools)</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">#Leitura do shapefile </font></div><div class="gmail_default"><font face="monospace, monospace">cnt <- readShapeLines("POLY.shp")</font></div><div class="gmail_default"><font face="monospace, monospace">plot(cnt, col=3)</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">as.data.frame(cnt)</font></div><div class="gmail_default"><font face="monospace, monospace">#   PIDS</font></div><div class="gmail_default"><font face="monospace, monospace"># 0    1</font></div><div class="gmail_default"><font face="monospace, monospace"># 1    2</font></div><div class="gmail_default"><font face="monospace, monospace"># 2    3</font></div><div class="gmail_default"><font face="monospace, monospace"># 3    4</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">str(cnt, max=3)</font></div><div class="gmail_default"><font face="monospace, monospace">str(cnt@lines[[1]])</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">my.coords <- NULL</font></div><div class="gmail_default"><font face="monospace, monospace">for (i in 1:length(cnt@lines)) {</font></div><div class="gmail_default"><font face="monospace, monospace">     for (j in 1:length(cnt@lines[[i]]))</font></div><div class="gmail_default"><font face="monospace, monospace">          df <- data.frame(cnt@lines[[i]]@Lines[[j]]@coords, ID=cnt@lines[[i]]@ID)</font></div><div class="gmail_default"><font face="monospace, monospace">     my.coords <- rbind(mycoords, df)</font></div><div class="gmail_default"><font face="monospace, monospace">}</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">my.coords</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">ch <- chull(my.coords)</font></div><div class="gmail_default"><font face="monospace, monospace">my.hull <- my.coords[ch,]</font></div><div class="gmail_default"><font face="monospace, monospace">points(my.hull, col="red") </font></div><div class="gmail_default"><font face="monospace, monospace">lines(rbind(my.hull, my.hull[1,]))</font></div><div class="gmail_default"><font face="monospace, monospace">### </code></font></div></div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><font face="arial, helvetica, sans-serif" style="font-size:small"><div style="font-family:'trebuchet ms',sans-serif;display:inline">​</div>================================================<br>Éder Comunello</font><div style="font-size:small"><span style="font-family:arial,helvetica,sans-serif">PhD Student in Agricultural Systems Engineering (USP/Esalq)</span><br></div><div><span style="font-size:small">Brazilian Agricultural Research Corporation (</span><font face="arial, helvetica, sans-serif" style="font-size:small">Embrapa)</font><div style="font-size:small"><font face="arial, helvetica, sans-serif">Dourados, MS, Brazil [</font>22 16.5'S, 54 49.0'W<span style="font-family:arial,helvetica,sans-serif">]</span></div><div><div><br></div><div><br></div></div><div style="font-size:small"><br></div></div></div></div></div></div></div></div></div>
<br><div class="gmail_quote">Em 25 de janeiro de 2016 16:17, ASANTOS <span dir="ltr"><<a href="mailto:alexandresantosbr@yahoo.com.br" target="_blank">alexandresantosbr@yahoo.com.br</a>></span> escreveu:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Prezados Listeiros,<br>
<br>
       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?<br>
<br>
       Meu CRM:<br>
<br>
#Pacotes<br>
<br>
require(rgdal)<br>
require(maptools)<br>
<br>
#-------------------------------------------------------------------------------<br>
#Crio 4 polígonos<br>
<br>
sr <- SpatialPolygons(list(<br>
Polygons(list(Polygon(cbind(c(180114, 180553, 181127, 181477, 181294, 181007, 180409,<br>
  180162, 180114), c(332349, 332057, 332342, 333250, 333558, 333676,<br>
  332618, 332413, 332349)))),'1'),<br>
Polygons(list(Polygon(cbind(c(180042, 180545, 180553, 180314, 179955, 179142, 179437,<br>
  179524, 179979, 180042), c(332373, 332026, 331426, 330889, 330683,<br>
  331133, 331623, 332152, 332357, 332373)))),'2'),<br>
Polygons(list(Polygon(cbind(c(179110, 179907, 180433, 180712, 180752, 180329, 179875,<br>
  179668, 179572, 179269, 178879, 178600, 178544, 179046, 179110),<br>
  c(331086, 330620, 330494, 330265, 330075, 330233, 330336, 330004,<br>
  329783, 329665, 329720, 329933, 330478, 331062, 331086)))),'3'),<br>
Polygons(list(Polygon(cbind(c(180304, 180403,179632,179420,180304),<br>
  c(332791, 333204, 333635, 333058, 332791)))),'4')))<br>
plot(sr)<br>
<br>
#Converto em polígono espacial<br>
<br>
srdf=SpatialPolygonsDataFrame(sr, data.frame(row.names=c('1','2','3','4'), PIDS=1:4))<br>
srdf@data<br>
<br>
#Criação do shapefile para ilustrar o problema<br>
<br>
writeOGR(srdf, getwd(), 'POLY', 'ESRI Shapefile')<br>
<br>
#Leitura do shapefile<br>
<br>
contorno_line_X <- readShapeLines ("POLY.shp")<br>
<br>
<br>
#Plot<br>
<br>
plot(contorno_line_X)<br>
<br>
#Tentativa de criar o convex hull<br>
<br>
df.data = as.data.frame(contorno_line_X)<br>
ch <- chull(df.data)<br>
lines(ch, col="red") ##Não funciona<br>
<br>
<br>
Obrigado,<br>
<br>
-- <br>
======================================================================<br>
Alexandre dos Santos<br>
Proteção Florestal<br>
IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso<br>
Campus Cáceres<br>
Caixa Postal 244<br>
Avenida dos Ramires, s/n<br>
Bairro: Distrito Industrial<br>
Cáceres - MT                      CEP: 78.200-000<br>
Fone: <a href="tel:%28%2B55%29%2065%208132-8112" value="+556581328112" target="_blank">(+55) 65 8132-8112</a> (TIM)   <a href="tel:%28%2B55%29%2065%209686-6970" value="+556596866970" target="_blank">(+55) 65 9686-6970</a> (VIVO)<br>
<a href="mailto:e-mails%3Aalexandresantosbr@yahoo.com.br" target="_blank">e-mails:alexandresantosbr@yahoo.com.br</a><br>
        <a href="mailto:alexandre.santos@cas.ifmt.edu.br" target="_blank">alexandre.santos@cas.ifmt.edu.br</a><br>
Lattes: <a href="http://lattes.cnpq.br/1360403201088680" rel="noreferrer" target="_blank">http://lattes.cnpq.br/1360403201088680</a><br>
OrcID: <a href="http://orcid.org/0000-0001-8232-6722" rel="noreferrer" target="_blank">orcid.org/0000-0001-8232-6722</a><br>
Researchgate: <a href="https://www.researchgate.net/profile/Alexandre_Santos10" rel="noreferrer" target="_blank">https://www.researchgate.net/profile/Alexandre_Santos10</a><br>
LinkedIn: <a href="https://br.linkedin.com/in/alexandre-dos-santos-87961635" rel="noreferrer" target="_blank">https://br.linkedin.com/in/alexandre-dos-santos-87961635</a><br>
======================================================================<br>
<br>
_______________________________________________<br>
R-br mailing list<br>
<a href="mailto:R-br@listas.c3sl.ufpr.br" target="_blank">R-br@listas.c3sl.ufpr.br</a><br>
<a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" rel="noreferrer" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" rel="noreferrer" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e fornea cdigo mnimo reproduzvel.</blockquote></div><br></div>