Caros listeiros,

Ainda estou enrolado com o meu problema e gostaria de ver se alguém conseguiria me ajudar, quando seleciono 1 polígono (df.serra15) e faço data.frame(ID=1:length(df.serra15)), seguido da conversão para SpatialPolygonsDataFrame funciona a transformação para shapefile, mas se seleciono dois polígonos df.serra15e16<-c(list(df.serra15),list(df.serra16)), recebo o erro: tentativa de obter um slot "polygons" de um objeto de uma classe básica ("list") sem slots,

Segue o exemplo que fiz abaixo, sem CRM pois não queria que ninguém tivesse que fazer download de nenhum shapefile, obrigado


#Tentativa 2 -------------------------------------------------------------------
#Pacotes utilizados
require(sp); require(rgdal); require(shapefiles)

#Arquivo shapefile original
contorno_line_a <- readShapeLines ("Mosaico_Geral.shp", proj4string=CRS("+proj=utm +zone=23 +south +datum=WGS84 +units=m +no_defs"))
df.data = as.data.frame(contorno_line_a)

# Seleciono 1 polígono
df.serra15 = contorno_line_a[contorno_line_a$Link=='00496015',]##
p.df <- data.frame(ID=1:length(df.serra15))
p <- SpatialPolygonsDataFrame(contorno_serra15,p.df)
writeOGR(srdf, "serra15", layer="serra15", driver="ESRI Shapefile")

# Seleciono 2 polígono
df.serra15 = contorno_line_a[contorno_line_a$Link=='00496015',]##
df.serra16 = contorno_line_a[contorno_line_a$Link=='00496016',]
df.serra15e16<-c(list(df.serra15),list(df.serra16))
p.df2 <- data.frame(ID=1:length(df.serra15e16))
p2 <- SpatialPolygonsDataFrame(df.serra15e16,p.df2)
writeOGR(srdf, "serra15e16", layer="serra15e16", driver="ESRI Shapefile")
#
Erro em SpatialPolygonsDataFrame(df.serra15e16, p.df2) :
tentativa de obter um slot "polygons" de um objeto de uma classe básica ("list") sem slots




       Ainda

Em 20/08/2015 16:56, ASANTOS escreveu:
Caros listeiros,

Tenho um shapefile com inúmeras áreas e gostaria de selecionar apenas duas e criar um novo shapefile, no entanto, quanto tento unir os dois polígonos e visualizar a seleção, recebo o erro:

Erro em polypath(x = mcrds[, 1], y = mcrds[, 2], border = border, col = col, :
  Caminho gráfico inválido


*Segue o caminho que estou trilhando:*

#Arquivo shapefile original
contorno_line_a <- readShapeLines ("completo.shp", proj4string=CRS("+proj=utm +zone=23 +south +datum=WGS84 +units=m +no_defs"))
df.data = as.data.frame(contorno_line_a)

# Seleciono o primeiro polígono
df.serra15 = contorno_line_a[contorno_line_a$Link=='00496015',]## Seleciono um talhão no mapa inteiro contorno_serra15<- PolySet2SpatialPolygons(SpatialLines2PolySet(df.serra15), close_polys=TRUE) ##
P1 = Polygon (contorno_serra15)
#

# Seleciono o segundo polígono
df.serra16 = contorno_line_a[contorno_line_a$Link=='00496016',]## Seleciono um talhão no mapa inteiro contorno_serra16<- PolySet2SpatialPolygons(SpatialLines2PolySet(df.serra16), close_polys=TRUE) ##
P2 = Polygon (contorno_serra16)
#

#União dos dois polígonos
Ps1 = Polygons (list (P1,P2), ID = "t")

# Crio uma estrutura em data frame dos polígonos espaciais
SPs = SpatialPolygons (list(Ps1), proj4string=CRS("+proj=utm +zone=23 +south +datum=WGS84 +units=m +no_defs"))
plot(SPs)
SPDF = SpatialPolygonsDataFrame (SPs, data.frame (N = c ("t"), row.names = c("t")))
SPDF@data

#Crio o novo shapefile
writeOGR(SPDF, getwd(), 'parcial', 'ESRI Shapefile')
#

#Chamo o shapefile novo e visualizo
contorno_line_b <- readShapeLines ("parcial.shp", proj4string=CRS("+proj=utm +zone=23 +south +datum=WGS84 +units=m +no_defs"))
plot(contorno_line_b)
#



Alguém poderia me dar uma ajuda,

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:[email protected] [email protected] Lattes:http://lattes.cnpq.br/1360403201088680 ======================================================================


_______________________________________________
R-br mailing list
[email protected]
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código 
mínimo reproduzível.

--
======================================================================
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:[email protected]
        [email protected]
Lattes: http://lattes.cnpq.br/1360403201088680
======================================================================

_______________________________________________
R-br mailing list
[email protected]
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código 
mínimo reproduzível.

Responder a