IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

Animation flash photo qui tourne


Sujet :

Flash

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2005
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 46
    Points : 35
    Points
    35
    Par défaut Animation flash photo qui tourne
    Bonjour,

    Voilà je débute vraiment dans le flash et autant j'arrive à maitriser les animations basiques autant celle que je veux faire, je n'y arrive pas.

    J'ai trois photos que je voudrais faire apparaitre les unes après les autres avec comme transition un effet de retournement. La photo 1 s'affiche puis elle tourne pour faire apparaitre la seconde puis la troisième... Mais voilà je sèche complètement.

    Si quelqu'un pouvait m'orienter et m'aider je lui serait très reconnaissant!

    Merci.

  2. #2
    Membre chevronné
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2005
    Messages
    1 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 644
    Points : 1 975
    Points
    1 975
    Par défaut
    En fait, ce n'est pas si simple que ça puisqu'il faut gérer la rotation et la pause entre chaque photo. On peut bien utiliser une fonction sleep() avec getTimer... mais là ça risque de mouliner sérieusement.

    Voici une proposition en as3 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
     
    package
    {
    	import flash.display.Bitmap;
    	import flash.display.BitmapData;
    	import flash.display.Sprite;
    	import flash.events.Event;
    	import flash.events.MouseEvent;
    	import flash.events.TimerEvent;
    	import flash.utils.Timer;
     
    	[SWF(frameRate="25",width='400',height='350',backgroundColor='0x298EFF')]
     
    	public class Main extends Sprite
    	{
    		[Embed(source="../src/im1.jpg")]
    		private var im1:Class;
    		[Embed(source="../src/im2.jpg")]
    		private var im2:Class;
    		[Embed(source="../src/im3.jpg")]
    		private var im3:Class;
     
    		private var imbmp:Vector.<Bitmap> = new Vector.<Bitmap>(3);
    		private var container:Sprite = new Sprite();
    		private var index:uint;
    		private var count:int;
    		private var mytimer:Timer = new Timer(4000);
     
    		public function Main():void
    		{
    			with (container.graphics)
    			{
    				beginFill(0xf0f0f0);
    				drawRect(-75, -75, 150, 150);
    			}
    			container.x = stage.stageWidth / 2;
    			container.y = stage.stageHeight / 2;
    			container.scaleX = container.scaleY = 2;
     
    			imbmp[0] = new im1();
    			imbmp[1] = new im2();
    			imbmp[2] = new im3();
     
    			for (var i:uint = 0; i < 3; i++)
    			{
    				imbmp[i].x = imbmp[i].y = -75;
    				container.addChild(imbmp[i]);
    			}
     
    			addChild(container);
    			mytimer.addEventListener(TimerEvent.TIMER, ontimer);
    			addEventListener(Event.ENTER_FRAME, onEnterFrame);
    		}
     
    		private function ontimer(e:TimerEvent):void
    		{
    			if (index < 2)
    				index++;
    			else
    				index = 0;
    			showbitmap(index);
    			count = 0;
    			mytimer.stop();
    		}
     
    		private function onEnterFrame(e:Event):void
    		{
    			count++;
    			if (count <= 12)
    				container.rotationZ += 30;
    			else
    				mytimer.start();
    		}
     
    		private function showbitmap(ind:uint):void
    		{
    			for (var i:uint = 0; i < 3; i++)
    				if (i !== ind)
    					imbmp[i].visible = false;
    				else
    					imbmp[ind].visible = true;
    		}
     
    	}
     
    }
    Avec trois photos de très mauvaises qualités désolé... et en plus je fais un scale car elle étaient trop petites...
    Je les ai insérées sous forme d'embed pour facilité la mise en pièces jointes...
    imagequipivote.swf

    avec une rotation en x :container.rotationX += 30;
    c'est plus joli...

    imagequipivote.swf

    a+

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/10/2007, 17h46
  2. j'ai un problème animation de photo dans flash mx
    Par freshman dans le forum Flash
    Réponses: 1
    Dernier message: 31/08/2007, 10h36
  3. Animations Flash qui n'apparaissent pas !
    Par Ed777 dans le forum Flash
    Réponses: 3
    Dernier message: 04/10/2006, 16h48
  4. [FLASH MX2004]Animation Style 3D qui pivote sur elle même.
    Par °°° Zen-Spirit °°° dans le forum Flash
    Réponses: 1
    Dernier message: 06/06/2006, 21h47
  5. Réponses: 1
    Dernier message: 19/12/2005, 13h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo