function init() {

  grandes = new Array();
  grandes[0]='/img/1_rotaflex.jpg';
  grandes[1]='/img/1_nave.jpg';
  
  medianas = new Array();
  medianas[0]='/img/2_plasma.jpg';
  medianas[1]='/img/2_tolva.jpg';
  
  pequenas = new Array();
  pequenas[0]='/img/3_oxicorte.jpg';
  pequenas[1]='/img/3_contenedor.jpg';
  pequenas[2]='/img/3_soldador.jpg';
  pequenas[3]='/img/3_prensa.jpg';

  intercambiar();
}

function intercambiar(origen, destino) {

  switch(aleatorio(0,4)) {
    case 0:
      destino = grandes[aleatorio(0, grandes.length)];
      quefoto = 'grande';
      break;
    case 1:
      destino = medianas[aleatorio(0, medianas.length)];
      quefoto = 'mediana';
      break;
    case 2:
      destino = pequenas[aleatorio(0, pequenas.length)];
      quefoto = 'pequena1';
      break;
    case 3:
      destino = pequenas[aleatorio(0, pequenas.length)];
      quefoto = 'pequena2';
      break;
  }

  origen = document.getElementById(quefoto).src;

  // No reemplazaremos una foto por sí misma, ni una pequena1 por una igual que la que tiene al lado.
  if((origen.indexOf(destino) > 0) || 
    ((document.getElementById('pequena1').src.indexOf(destino) > 0) || 
    (document.getElementById('pequena2').src.indexOf(destino) > 0)) ) {
    setTimeout("intercambiar();", 0);
  }
  else {
    document.getElementById(quefoto).src = destino;
//     shiftOpacity("grande", 500);
    setTimeout("intercambiar();", 3000);
  }
}

function aleatorio(inferior,superior){
    numPosibilidades = superior - inferior;
    aleat = Math.random() * numPosibilidades;
    aleat = Math.floor(aleat);
    return parseInt(inferior) + aleat;
}

function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}

// change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}

function shiftOpacity(id, millisec) {
    //if an element is invisible, make it visible, else make it ivisible
    if(document.getElementById(id).style.opacity == 0) {
        opacity(id, 0, 100, millisec);
    } else {
        opacity(id, 100, 0, millisec);
    }
} 


function blendimage(divid, imageid, imagefile, millisec) {
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //set the current image as background
    document.getElementById(divid).style.backgroundImage = "url(" + document.getElementById(imageid).src + ")";

    //make image transparent
    changeOpac(0, imageid);

    //make new image
    document.getElementById(imageid).src = imagefile;

    //fade in image
    for(i = 0; i <= 100; i++) {
        setTimeout("changeOpac(" + i + ",'" + imageid + "')",(timer * speed));
        timer++;
    }
}
