[R-br] Novo problema para mudar projeção de um raster

Eder Comunello ecomunel em gmail.com
Sábado Julho 27 10:07:57 BRT 2013


Alexandre e colegas, bom dia!

Meu script está um pouco diferente, mas o que vai valer mesmo é o último
bloco (reprojetar RasteLayer). Espero que ajude.

Além disso, tenho um bookmark pra indicar:
Spatial data in R: using R as a GIS (old version) <
https://sites.google.com/site/rodriguezsanchezf/news/usingrasagis>

Vi que saiu uma nova versão em <
https://sites.google.com/site/rodriguezsanchezf/resources/rgis>

Outro dia, alguém perguntava pela geração de mapas temáticos no R! Esses
links podem ajudar bastante!

At.te,

### <BEGIN> ###
require(sp); require(rgdal); require(raster)

### Região de interesse
pc  <- cbind(X1=773759.1,Y1=7841546)
dx  <- 1500*c(-1, 1, 1,-1,-1); dx
dy  <- 1500*c( 1, 1,-1,-1, 1); dy
reg <- NULL; reg <- rbind(cbind(pc[,1]+dx,pc[,2]+dy)); reg
plot(reg, asp=1); points(pc, col=2)

### CRS UTM
SP.utm <- SpatialPolygons(list(Polygons(list(Polygon(reg)), "1")))
proj4string(SP.utm) = CRS("+proj=utm +zone=23 +south +datum=WGS84 +units=m
+no_defs")
SP.utm em bbox; SP.utm em proj4string
plot(SP.utm, col=3, axes=T)

### CRS GEO (GeoTiff)
SP.geo<- spTransform(SP.utm, CRS("+proj=longlat +datum=WGS84"))
SP.geo em bbox; SP.geo em proj4string
plot(SP.geo, col=5, axes=T)

### TOPODATA
#getwd()
#url=("http://www.dsr.inpe.br/topodata/data/geotiff/19S435SN.zip")
#download.file(url, destfile = "19S435SN.zip")
#unzip("19S435SN.zip")
dem <- raster('19S435SN.tif') ### Abre o slope TOPODATA

### Recorte TOPODATA
dem.crop <- crop(dem, extent(SP.geo), snap='out')
image(dem.crop, asp=1)

# Reprojetar RasterLayer (S4)
projection(dem.crop) <- CRS("+proj=longlat +datum=WGS84")
alt.utm <- projectRaster(dem.crop, crs="+proj=utm +zone=23 +south
+datum=WGS84 +units=m +no_defs")
image(alt.utm, asp=1)

### <END> ###


Em 25 de julho de 2013 22:32, ASANTOS <alexandresantosbr em yahoo.com.br>escreveu:

> Boa noite Pessoal,
>
>       Consegui resolver um problema e consegui outro, transformei as
> coordenadas latlong de um geotiff do Topodata em utm usando spTransform().
> Como não consegui transformar diretamente um SpatialPixelsDataFrame do
> topodata apenas colocando o novo CRS e em vários posts não vi nenhuma
> solução para isso, tentei fazer da seguinte maneira, transformei apenas o
> @coords do topodata de geo para utm e depois tentei inserir com replace()
> os novos valores em utm dentro do SpatialPixelsDataFrame e ocorreu o
> seguinte erro:
>
> Erro em replace(dem.sp em coords[1:10026, 1:2], dem.sp em coords, Utm em coords[1:10026,
>  :
>   valores negativos não são permitidos na subscrição de matriz
>
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20130727/3e8d4243/attachment.html>


Mais detalhes sobre a lista de discussão R-br