Gif animado con imagenes...con el problema de que esas imagenes cambian de url

Iniciado por rolomo, 5 Febrero 2012, 01:38 AM

0 Miembros y 1 Visitante están viendo este tema.

rolomo

Quiero hacer un gif animado con una secuencia de 4 imagenes. El problema es que esas imagenes cambian de url. De hecho ese cambio no son más que fechas. El problema es que no se generan de forma periodica e incluso a veces ni se generan. El objetivo es hacer el gif con las 4 últimas imagenes disponibles.
Yo habia pensado en algún condicional que fuera buscando todas las posibles fechas, que van de 15 en 15 mins, de ahora hacia atrás y en cuanto la encuentre pase a buscar la siguiente. ¿Si se os ocurre otra forma?

Adjunto lo que tengo de script por si os sirve de base.

Pd: La última imagen generada se puede encontrar con el url "http://www.sat24.com/image.ashx?country=fr&type=last&time=&sat=ir". El resto hay que incluir una fecha
http://www.sat24.com/image2.ashx?region=fr&time=201202042345&ir=true

<html>
<head>
<title>GIF SAT24 IR</title>


<script language="javascript">

var mydate=new Date();
   var year=mydate.getYear();
   if (year < 1000)
      year+=1900;
   var day=mydate.getDay();
   var month=mydate.getMonth()+1;
   if (month<10)
      month="0"+month;
   var daym=mydate.getDate();
   if (daym<10)
      daym="0"+daym;

var SecuenciaEjecutandose = false
var SecuenciaID = null
var imagen = 4
var duracion = 1000

if (CompruebaVersion()) {
imagenes = new CreaArray(4)


imagenes[1].src = "http://www.sat24.com/image2.ashx?region=fr&time=201202050000&ir=true"

imagenes[2].src = "http://www.sat24.com/image2.ashx?region=fr&time=201202042345&ir=true"

imagenes[3].src = "http://www.sat24.com/image2.ashx?region=fr&time=201202042330&ir=true"

imagenes[4].src = "http://www.sat24.com/image.ashx?country=fr&type=last&time=&sat=ir"
}

function CompruebaVersion() {
if (navigator.appVersion.charAt(0) >= 3 && document.images) return true
else return false
}

function CreaArray(n) {
this.length = n
for (var i = 1; i<=n; i++) {
this = new Image()
}
return this
}

function DetenerSecuencia (){
if(SecuenciaEjecutandose)
clearTimeout(SecuenciaID)
SecuenciaEjecutandose = false
imagen = 0
}

function MostrarSecuencia () {
if (CompruebaVersion()) {
document.images["secuencia"].src = imagenes[imagen].src
imagen++
if ( imagen == 5 )
imagen = 1
}
SecuenciaID = setTimeout("MostrarSecuencia()", duracion)
SecuenciaEjecutandose = true
}

function IniciarSecuencia () {
DetenerSecuencia()
imagen = 1
MostrarSecuencia()
}

</script>

</head>

<body onLoad="IniciarSecuencia()">

<img src="http://www.sat24.com/image.ashx?country=fr&type=last&time=&sat=ir" width="" height="" alt="Secuencia" name="secuencia">

</body>
</html>

rolomo

He estdo pensando esta noche y la verdad que el url cambie y que la imagen que esperas llegue o no es un cacao.

Quizás seria más fàcil hacer algo así (aunque no sé como hacerlo):
La última imagen actualizada tiene un url fijo:
http://www.sat24.com/image.ashx?country=sp&type=last&time=&sat=vis
Esta imagen, en teoria, se renueva cada 15mins.
La idea seria que cada 15mins guardaras esa imagen con otro nombre y a cabo de una hora por ejemplo al tener 4 imagenes. Hacerlas correr como un gif.
Entonces, ¿Como puedo guardar imagen asociadas a una cierta hora, cambierles el nombre y luego correrlas en un gif?

Parece más complicado que lo anterior?

Tengo un lio, pq no se como hacerlo.

Un abrazo.




rolomo