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

Flex Discussion :

[Air - Flex Evolué] Gestion semi 3D


Sujet :

Flex

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Freyskeyd
    Homme Profil pro
    Développeur PHP | Flex
    Inscrit en
    Octobre 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur PHP | Flex
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 87
    Par défaut [Air - Flex Evolué] Gestion semi 3D
    Salut,

    j'essai de mettre en place un petit système pour gérer des images.

    pour commencer j'ai découvert cette classe :

    http://weblogs.macromedia.com/auhlma...tion_effe.html

    qui permet pas mal de chose sous Flex.
    Mais mon but est de faire ça sous Air!
    Je m'explique...

    Je souhaites utiliser la classe avec le ViewStack3D.
    Je vais reprendre l'exemple fourni avec le Package.

    Appli Principale (Flex) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application 
    	xmlns:mx="http://www.adobe.com/2006/mxml"
    	xmlns:distortion="view.distortion.*">
     
    	<distortion:ViewStack3D />
     
    </mx:Application>
    Composant ViewStack3D :
    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
    <?xml version="1.0" encoding="utf-8"?>
    <mx:VBox 
    	xmlns:mx="http://www.adobe.com/2006/mxml"
    	xmlns:sides="view.sides.*" 
    	xmlns:controls="com.adobe.ac.controls.*" 
       horizontalAlign="center" verticalAlign="middle" verticalGap="20">
     
    	<mx:HSlider 
    		id="widthSlider" 
    		minimum="0" maximum="100" value="40" 
    		liveDragging="true" change="viewStack.tilt( widthSlider.value );"/>
     
    	<controls:ViewStack3D id="viewStack" creationPolicy="all">
    		<sides:ProductList 
    			id="productList" />
    		<sides:Registration 
    			id="registration" />
    		<sides:Calendar 
    			id="calendar" />
    	</controls:ViewStack3D>
     
    </mx:VBox>
    Dans ce Code on vois bien la réferance à une Classe ViewStack3D :
    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
    package com.adobe.ac.controls
    {
    	import com.adobe.ac.mxeffects.Distortion;
    	import com.adobe.ac.mxeffects.DistortionConstants;
     
    	import flash.display.DisplayObject;
     
    	import mx.containers.Canvas;
    	import mx.core.UIComponent;
    	import mx.events.FlexEvent;
     
    	public class ViewStack3D extends Canvas
    	{
    		private var distortions : Array = new Array();
     
    		public function ViewStack3D()
    		{
    			addEventListener( FlexEvent.CREATION_COMPLETE, initDistortions );
    		}
     
    		private function initDistortions( event : FlexEvent ) : void
    		{			
    			for( var i : int; i < numChildren; i++ )
    			{
    				var child : UIComponent = UIComponent( getChildAt( i ) );
    				initialiseBounds( child );
     
    				var distort : Distortion = new Distortion( child );
    				distort.smooth = true;
    				distort.openDoor( 40, DistortionConstants.LEFT );
    				distortions.push( distort );
    			}
    		}
     
    		override protected function createChildren() : void
    		{
    			super.createChildren();
    			for( var i : int; i < numChildren; i++ )
    			{
    				var child : UIComponent = UIComponent( getChildAt( i ) );
    				child.x += i * 25;
    				child.y += i * 20;				
    			}	
    		}
     
    		public function tilt( percentage : Number ) : void
    		{
    			var len : Number = distortions.length;
    			for( var i : int; i < len; i++ )
    			{
    				var distort : Distortion = distortions[ i ];
    				distort.openDoor( percentage, DistortionConstants.LEFT );
    			}
    		}
     
    		private function initialiseBounds( texture : UIComponent ) : void
    		{		
    			var firstChild : DisplayObject = DisplayObject( getChildAt( 0 ) );
    			texture.setActualSize( firstChild.width, firstChild.height );
    			texture.validateNow();		
    		}
    	}
    }
    Quand ont lance cette Application Flex, on peu gérer l'inclinaison des Différents éléments.
    Il y a une distance entre chaque éléments pour bien les discerner.

    Après avoir reproduit l'application sous flex AIR.
    Je lance l'appli et je remarque que ce petit écart disparait...
    Je ne trouve pas l'erreur...ou le paramètre à changer...

    Je viens donc quérir votre aide

    Merci!

  2. #2
    Membre confirmé Avatar de Freyskeyd
    Homme Profil pro
    Développeur PHP | Flex
    Inscrit en
    Octobre 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur PHP | Flex
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 87
    Par défaut
    Bon je viens de résoudre le problème de l'écard...
    C'était à cause de la définition de "FlexEvent" j'ai remplacé par du AIREvent
    Mais maintenant plus aucune interaction...
    les Elements sont figé...

Discussions similaires

  1. Choix de la techno : AIR, Flex, Silverlight ou autre ?
    Par sebastyen dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 17/01/2010, 06h18
  2. AIR, Flex et Windows
    Par K20 dans le forum Flex
    Réponses: 9
    Dernier message: 21/10/2009, 14h17
  3. Réponses: 1
    Dernier message: 23/12/2008, 10h55

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