Waldeinsamkeit

Waldeinsamkeit

Hace unos días, paseando por Murcia vi un cartel que anunciaba un concierto. No sabía de qué grupo se trataba, pero me llamó poderosamente la atención su diseño.

Era un cartel en blanco y negro con una línea quebrada que parecían la silueta de una sierra y debajo el reflejo de esa forma en color opuesto. El grupo en cuestión se llama Waldenskeit y suenan muy bien como podéis comprobar en el enlace.

El álbum que anunciaban es PENSAMIENTOS y el concierto en Murcia es el próximo 15/02 en la Sala Musik.

Según parece la palabra Waldeinsamkeit en alemán significa algo así como la sensación de estar a solas en el bosque, entre los árboles… esa sensación que es difícil de sentir en un país sin bosques como nuestro seco Sur.

Coordilleras

Ya puestos en el lío, como tenemos una función para hacer una sierra, vamos seguir desarrollando el logotipo con la idea de obtener una serie de cadenas montañosas. Además hemos reciclado las funciones del artículo de generador de islas aleatorias, para aportar caos en las líneas y formar una cadena de montañas algo más realistas.

sierra_r<-function(np=5,al_max=2000,al_min=1400){
    a<-as.integer(rnorm(np*2,al_min,al_min/6))# crestas bajas
    a<-c(a,as.integer(rnorm(np,al_max,al_max/8))) #crestas altas
    a<-abs(sample(a,np))
    
    b<-as.integer(rnorm(np-1,al_min/3,al_min/7)) # valles
    b<-abs(c(b,0))
    linea<-c(0, c(rbind(a,b))) # mezcla al tresbolillo  
    return(linea)
}


coordillera<-function(n=5,ns=5,des_s=200){
  # n= num puntos por sierra/2
  # ns= num sierras
  # des_s= desplazamiento en veritical de las sierras
  sierras<-list()
  for(i in 1:ns){
    sierras[[i]]<-sierra_r(n=n)
    sierras[[i]]<-sierras[[i]]+des_s
    sierras[[i]][1]<-0
    sierras[[i]][length(sierras[[i]])]<-0
    
  }
  return(sierras)
}


pinta_coordillera2<-function(np=6,ns=8,des_s=800,coef=0.8,recursivo=3){
  par(bg=gray(0.05),oma=c(0.1,0.1,0.1,0.1),mar=c(0.1,0.1,0.1,0.1))
  a<-coordillera(n=np,ns=ns,des_s=des_s)
  
  factor<-length(a)
  #coef=0.8
  des<-coef/factor
  max<-max(sapply(a, max))

  covdf<-function(a,max=100){
    b<-data.frame(x=(1:length(a))*max,y=a)
    return(b)
  }
  
  a1<-lapply(a,covdf)  
  #print(dim(a1[[1]][1]))
  
    plot(a1[[1]], type="l",col=NA,axes=F,lwd=1,ylim=c(1,max*1),xlim=c(150,(dim(a1[[1]])[1]-1)*100))
    for(i in 1:factor){
        mont<-a1[[i]]
        mont[,2]<-mont[,2]*(1-des*i)
        mont1<-div_pol_n(mont,recursivo)# añade caos
        mont1<-rbind(mont1,c(mont1[nrow(mont1),1]+100,0))
        polygon(mont1,col=gray(1-des*(i-1)), border=NA)
  #print(mont1)
          }
  text(350,max/1.08 , "Coordilleras   enRdados.net",adj=c(0,0),col=gray(0.85), family="Kalinga",cex = 1.2)
  
}

# pintamos algunos ejemplo
pinta_coordillera2(coef=0.9)

pinta_coordillera2(n=15,ns=3,coef=0.8)

# recursivo aumenta el caos
pinta_coordillera2(n=5,ns=6,coef=0.97,recursivo=0)

pinta_coordillera2(n=5,ns=6,coef=0.97,recursivo=6)