[R-br] Considerar ângulo da área para distribuir coordenadas com expand.grid () [RESOLVIDO]

ASANTOS alexandresantosbr em yahoo.com.br
Quinta Março 28 13:12:37 BRT 2013


Obrigado Prof. Paulo, funcionou, segue solução abaixo para arquivamento,

#Exemplo 2

x<-c(0,0,100,100,0)
y<-c(0,100,100,0,0)
plot(x,y, type="l", col="red")
xy45<-cbind(x,y)
xy45<-as.matrix(xy45)
ang<- 45 #### Angulo a ser rotacionado
Q<-rbind(c(cos(ang),sin(ang)),c(-sin(ang), cos(ang))) ## Matriz de rotação
xyrt<-xy45 %*% Q  # Multiplicação de matrizes
plot(xyrt[,1],xyrt[,2], type="l", col="red")
#
p0<-c(1,1)
#
#
c0 <- seq(p0[1],p0[1]+100,by=10)
d0 <- seq(p0[2],p0[2]+100,by=10)
d1 <- expand.grid(x=c0, y=d0)
#
d2<-as.matrix(d1)
ang<- 45 #### Angulo a ser rotacionado
Q<-rbind(c(cos(ang),sin(ang)),c(-sin(ang), cos(ang))) ## Matriz de rotação
drt<-d2 %*% Q  # Multiplicação de matrizes
points(drt[,1],drt[,2])
#

Em 26/03/2013 09:58, Paulo Justiniano escreveu:
> expand.grid vai sempre gerar uma malçha retaugular
>
> se voce que alterar considere multiplicar a matriz de coordenadas 
> gerada por uma matrix (2x2) de rotacao
>
>
> On Mon, 25 Mar 2013, ASANTOS wrote:
>
>> Boa noite pessoal,
>>
>>       Gostaria de saber se existe uma maneira de controlar a 
>> inclinação da distribuição dos pontos em expand.grid() em função de 
>> um limite de área, como por exemplo no meu CRM abaixo, onde no 
>> exemplo 1 esta tudo Ok, mas no exemplo 2 as coordenadas não 
>> consideram a inclinação da área. Seria possível usar algum argumento 
>> para controlar isto?
>>
>> # Exemplo 1
>> x<-c(0,0,100,100,0)
>> y<-c(0,100,100,0,0)
>> plot(x,y, type="l", col="red")
>> #
>> p0<-c(10,10)
>> #
>> #
>> c0 <- seq(p0[1],p0[1]+95,by=20)
>> d0 <- seq(p0[2],p0[2]+95,by=20)
>> d1 <- expand.grid(x=c0, y=d0)
>> points(d1[,1],d1[,2])
>> #
>> #Exemplo 2
>> x<-c(0,0,50,50,0)
>> y<-c(0,100,150,50,0)
>> plot(x,y, type="l", col="red")
>> #
>> p0<-c(10,10)
>> #
>> #
>> c0 <- seq(p0[1],p0[1]+95,by=20)
>> d0 <- seq(p0[2],p0[2]+95,by=20)
>> d1 <- expand.grid(x=c0, y=d0)
>> points(d1[,1],d1[,2])
>> #
>>
>> Obrigado,
>>
>> -- 
>> ======================================================================
>> Alexandre dos Santos
>> Proteção Florestal
>> Coordenador do curso Técnico em Florestas
>> Vice Coordenador do curso de Engenharia 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
>> ======================================================================
>>
>> _______________________________________________
>> R-br mailing list
>> R-br em listas.c3sl.ufpr.br
>> 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.
>>
>
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> 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
Coordenador do curso Técnico em Florestas
Vice Coordenador do curso de Engenharia 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
======================================================================

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20130328/908c6284/attachment.html>


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