Créer un carrousel 3d ( AS2 )

    Partager

    tom123
    Newbie
    Newbie

    Nombre de messages: 3
    Age: 27
    Logiciels: Quels logiciels utilisez-vous ?
    Date d'inscription: 13/02/2011

    Scintillement

    Message par tom123 le Mar 15 Fév - 21:42

    Bonjour,
    J'avais déjà utilisé ce script génial il y a 6 mois et je m'aperçois qu'il y a un espèce de scintillement des logos qui défilent avec un contour très fin blanc qui se met parfois autour de trait dans les images. J'ai utilisé des images png. Ce scintillement rend les textes des png assez difficilement lisibles. A quoi cela peut il être dû ? J'ai l'impression qu'il est moindre en local quand je double clique le swf .
    Merci
    Tom
    Résolu : c'était complètement dû à la qualité des png qui étaient en mode couleurs indexées

    Alnitak94
    Newbie
    Newbie

    Nombre de messages: 3
    Age: 26
    Logiciels: Quels logiciels utilisez-vous ?
    Date d'inscription: 30/03/2011

    Capacités en graphisme
    Capacité graph:
    0/0  (0/0)

    Re: Créer un carrousel 3d ( AS2 )

    Message par Alnitak94 le Mer 30 Mar - 23:08

    Bonjour,

    Très bon tuto, très pédagogique, j'ai pu le réaliser sans aucun soucis malgré mon tres faible niveau en FLASH.

    Cependant j'ai essayé de l'intégré à un site web que je fais, un site perso pour montrer mes créations.
    Le site est tout en flash et contient plusieurs pages (accueil, parcours, travaux et contact)

    J'ai créé le carrousel composé de miniatures de mes différents projets sur ma page travaux en modifiant la position sur l'axe des X et l'axe des Y pour qu'il s'imbrique bien dans ma mise en page. Voila donc le code qui se situe sur la page "travaux"

    Code:
    stop();
    var rotX:Number = 200;
    var rotY:Number;
    var Centre:Number = Stage.height/3;
    var vitesse:Number = 0.3
    var sceneH:Number = Stage.height;
    var sceneW:Number = Stage.width
    var nbI:Number = 14;
    var angle:Number = 1;
    var i:Number;


    for(i=0;i<nbI;i++)
    {   
      //_____________________○○○---lier les clips à la scéne____
      this.attachMovie('Icone'+i,'Ic'+i,i);
      //_____________________○○○---clic sur les images____
         this['Ic'+i].onRelease=function(){
    if (this == _level0.Ic0)gotoAndStop("Image 1");
    if (this == _level0.Ic1)gotoAndStop("Image 2");
    if (this == _level0.Ic2)gotoAndStop("Image 3");
    if (this == _level0.Ic3)gotoAndStop("Image 4");
    if (this == _level0.Ic4)gotoAndStop("Image 5");
    if (this == _level0.Ic5)gotoAndStop("Image 6");
    if (this == _level0.Ic6)gotoAndStop("Image 7");
    if (this == _level0.Ic7)gotoAndStop("Image 8");
    if (this == _level0.Ic8)gotoAndStop("Image 9");
    if (this == _level0.Ic9)gotoAndStop("Image 10");
    if (this == _level0.Ic10)gotoAndStop("Image 11");
    if (this == _level0.Ic11)gotoAndStop("Image 12");
    }
         
      //_____________________○○○---positionnement des clips au centre de la scéne____
      this['Ic'+i]._y = sceneH /2;
    }

    //_____________________○○○---rotation des clips____

    onEnterFrame=function(){
      //_____________________○○○---Rayon de rotation de l'axe y (en pixels)
      rotY = ( Centre - this._ymouse );
      if (rotY <= -5) {
          rotY = -5;
      }
      else if (rotY >= 60) {
          rotY = 60;
      }
        //_____○○○---remise a zero de l'angle aprés tour complet
        if (angle > (2*Math.PI))
        {
          angle = 0;
        }else{         
          for(i=0; i<nbI; i++){
            //_____________________○○○---rotation des clips sur l'axe x
            this['Ic'+i]._x = rotX*Math.cos(angle+2*Math.PI*i/nbI)+sceneW/1.6;
            //_____________________○○○---angle des clips sur l'axe y
            this['Ic'+i]._y = rotY*Math.sin(angle+2*Math.PI*i/nbI)+sceneH/1.7;
            //_____________________○○○---mise a jour de la taille du clip              (60%->premier plan, 40%->arriere plan)
            this['Ic'+i]._xscale=60/2*(Math.sin(angle+2*Math.PI*i/nbI)+ 1)+50;
            this['Ic'+i]._yscale=this['Ic'+i]._xscale;
     
            //_____________________○○○---gestion de la profondeur (en pixels);
            this['Ic'+i].swapDepths(rotX*Math.sin(angle+2*Math.PI*i/nbI));
          }
          //_____________________○○○---Gestion de la rotation en fonction de la souris(x)
          if(this._xmouse < (sceneW/2+rotX+180) && this._xmouse > (sceneW/2-rotX-180))
          {
          //_____________________○○○---Gestion de la rotation en fonction de la souris(y)
            if(this._ymouse < sceneH && this._ymouse > 0)
            {
                //_____________________○○○---Gestion de la vitesse
                angle=angle+(this._xmouse-sceneW/2)/sceneH*vitesse;
            }
          }
        }
    }


    1 er petit problème : les mouvement de ma souris pour le défilement du carrousel ont pour origine le centre de ma scène et non pas celui du carrousel. Que dois je faire ?

    Ensuite j'ai rajouté quelques lignes de code qu'avait donné un des membre du forum plus haut pour que lorsque je clic sur une des icônes de mon carrousel cela m'envoie sur une nouvelle page. Dans ce cas précis je voudrais que les miniatures de mes projets renvoient a une page avec mes projet en plein écran. Hors le carrousel reste actif et visible (il ne disparaît pas). Du coup tout se superpose. Que dois je faire ? Je suis vraiment débutant alors si c'est possible de m'expliquer clairement.
    Pour la suite, en ce qui concerne le retour sur le carrousel une fois que je clic sur mes projets en plein écran je devrait pouvoir me débrouiller.

    Merci d'avance !


    GAETONE
    Newbie
    Newbie

    Nombre de messages: 4
    Age: 24
    Logiciels: DREAM FLASH PHOTOSHOP
    Date d'inscription: 09/04/2011

    tuto

    Message par GAETONE le Mer 13 Avr - 10:13

    franchement tes tuto déchires bien expliqué, il est donné a tous le monde de réaliser tes réalisation fracnhement bravo

      La date/heure actuelle est Jeu 24 Mai - 10:00