Comunidad de diseño web y desarrollo en internet online

Galeria XML en orbita3D

Citar            
MensajeEscrito el 05 Sep 2007 02:27 pm
Hola, estoy teniendo problemas con esta galeria, es a traves de XML con orbita en 3D.

-----XML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<menu>
<webs>
<web miniatura="01.jpg" inicial="http://www.cristalab.com" externa="1" descripcion="mi sitio" />
</webs>
</menu>


-----ActionScrip:

// Carga del XML
function cargado(correcto) {
if (correcto) {
trace("carga correcta");
leer_xml();
} else {
gotoAndStop(3);
}
}
carga_XML = new XML();
carga_XML.onLoad = cargado;
enlace = "portafolio.xml";
carga_XML.load(enlace, carga_XML);

// Formatea xml
function leer_xml() {
menu = new XML();
menu.ignoreWhite = true;
menu = carga_XML.firstChild;
webs = menu.firstChild.childNodes;
}
// webs
web_miniatura = new Array();
web_inicial = new Array();
web_descripcion = new Array();
web_externa = new Array();
nweb = webs.length;
for (n=0; n<nweb; n++) {
web_miniatura[n] = webs[n].attributes.miniatura;
web_inicial[n] = webs[n].attributes.inicial;
web_descripcion[n] = webs[n].attributes.descripcion;
web_externa[n] = webs[n].attributes.externa;
}
gotoAndStop(4);
}

// Elimina los clips de las imágenes.
function elimina_clip() {
ver._visible = false;
descripcion = "";
if (seccion="webs") {
for (n=0; n<web_miniatura.length; n++) {
_root["w"+n].removeMovieClip();
}
}
}




seccion = "webs";
min = web_miniatura;
posinx = 10;
posiny = 10;
despx = 100;
acel = 10;
centro = 275;
centroy = 120;
radiox = 100;
radioy = 50;
ang = 0;
difang = 360/min.length;
for (n=0; n<min.length; n++) {
this.attachMovie("clipi", "w"+n, n);
ruta = "portafolio/imagenes/";
ruta = ruta+min[n];
this["w"+n].loadMovie(ruta);
angulo = difang*n;
angrad = angulo/180*Math.PI;
this["w"+n]._xscale = 10;
this["w"+n]._yscale = 10;
this["w"+n].num = n;
difcentro = Math.abs(centro-this["w"+n]._x);
}
idboton = setInterval(mueveimg, 50);
function mueveimg() {
difx = (centro-_xmouse)/275;
ang = ang+(difx*5);
for (n=0; n<min.length; n++) {
angulo = ang+(difang*n);
angrad = angulo/180*Math.PI;
pseno = 1-((Math.sin(angrad)+1)/2);
_root["w"+n]._xscale = 50-(30*pseno);
_root["w"+n]._yscale = _root["w"+n]._xscale;
_root["w"+n]._alpha = _root["w"+n]._yscale + 40;
_root["w"+n]._x = centro+radiox*Math.cos(angrad);
_root["w"+n]._y = centroy+radioy*Math.sin(angrad);
_root["w"+n].num = n;
_root["w"+n].onRelease = function() {
descripcion = web_descripcion[this.num];
ver_imagen = web_inicial[this.num];
externa = web_externa[this.num];
ver._visible = true;
};
}
}








Alguna idea?????? Gracias de antemano, me salvais la vida....[/b]

Por miwel

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Sep 2007 08:09 pm
Errr... Olvidaste decir cuál es el problema que tienes...
El único error que pude detectar fue:

Código :

if (seccion="webs") {
for (n=0; n<web_miniatura.length; n++) {
_root["w"+n].removeMovieClip();
}


Estás usando un sólo sigo de "=" en el if, así que estás asignando directamente el valor "webs", por lo que te dará siempre true. Para comparar se utilizan dos signos: "==":

Código :

if (seccion=="webs") {
for (n=0; n<web_miniatura.length; n++) {
_root["w"+n].removeMovieClip();
}


Para siguientes posts, coloca el código entre las etiquetas [*code] [*/code] (sin los asteriscos), así será más legible.

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

firefox
Citar            
MensajeEscrito el 14 Sep 2007 11:12 am
gracias por tu consejo, aun asi no funciona.

el problema basicamente es que no muestra las miniaturas, supuestamente despues de cargar el xml muestra las miniaturas con la orbita 3d, pero no es asi, carga bien el xml, hace bien la rotacion pero no muestra ninguna miniatura.

si puedes o podeis ayudarme estare encantado de enviaroa el .fla para que le echeis un vistazo.

muchas gracias.

Por miwel

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 14 Sep 2007 11:51 am
Bueno, la lectura del código me resulta un poco confusa, pero me parece que el problema está en que haces todo el procedimiento para cargar las imágenes antes de asegurarte de que el xml está cargado y la variable webs inicializada. Esto:

Código :

web_miniatura = new Array();
web_inicial = new Array();
web_descripcion = new Array();
web_externa = new Array();
nweb = webs.length;
for (n=0; n<nweb; n++) {
web_miniatura[n] = webs[n].attributes.miniatura;
web_inicial[n] = webs[n].attributes.inicial;
web_descripcion[n] = webs[n].attributes.descripcion;
web_externa[n] = webs[n].attributes.externa;

y esto:

Código :

min = web_miniatura;
for (n=0; n<min.length; n++) {
this.attachMovie("clipi", "w"+n, n);
ruta = "portafolio/imagenes/";
ruta = ruta+min[n];
this["w"+n].loadMovie(ruta);
angulo = difang*n;
angrad = angulo/180*Math.PI;
this["w"+n]._xscale = 10;
this["w"+n]._yscale = 10;
this["w"+n].num = n;
difcentro = Math.abs(centro-this["w"+n]._x);

me parece que deben ir dentro de la función leer_XML().
Te repito, me resulta un poco confusa la lectura, así que pruébalo y nos cuentas.

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.