You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							363 lines
						
					
					
						
							16 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							363 lines
						
					
					
						
							16 KiB
						
					
					
				
								<!DOCTYPE html>
							 | 
						|
								<html lang="fr">
							 | 
						|
								    <head>
							 | 
						|
								        <meta charset="utf-8" />
							 | 
						|
								        <base href="../../../" />
							 | 
						|
								        <script src="page.js"></script>
							 | 
						|
								        <link type="text/css" rel="stylesheet" href="page.css" />
							 | 
						|
								    </head>
							 | 
						|
								    <body>
							 | 
						|
								        <h1>[name]</h1>
							 | 
						|
								
							 | 
						|
								        <p class="desc">
							 | 
						|
								            Les AnimationActions programment la performance des animations qui sont stockées dans
							 | 
						|
								            [page:AnimationClip AnimationClips].<br /><br />
							 | 
						|
								
							 | 
						|
								            Note: La plupart des méthodes d'AnimationAction peuvent être chainées.<br /><br />
							 | 
						|
								
							 | 
						|
								            Pour avoir un aperçu des différents éléments du système d'animation de three.js, consultez
							 | 
						|
								            l'article "Système d'Animation" dans la section "Étapes Suivantes" du manuel.
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								        <h2>Constructeur</h2>
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								        <h3>[name]( [param:AnimationMixer mixer], [param:AnimationClip clip], [param:Object3D localRoot] )</h3>
							 | 
						|
								        <p>
							 | 
						|
								            [page:AnimationMixer mixer] - l'`AnimationMixer` contrôlé par cette action.<br />
							 | 
						|
								            [page:AnimationClip clip] - l`AnimationClip` qui contient les données d'animation pour cette action.<br />
							 | 
						|
								            [page:Object3D localRoot] - l'objet racine sur lequel est appliqué l'action.<br /><br />
							 | 
						|
								
							 | 
						|
								            Note: Au lieu d'appeler ce constructeur directement, vous devriez instantier un AnimationAction avec
							 | 
						|
								            [page:AnimationMixer.clipAction] étant donné que cette méthode applique une mise en cache pour obtenir de meilleures performances.
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								        <h2>Propriétés</h2>
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								        <h3>[property:Boolean clampWhenFinished]</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Si `clampWhenFinished` est mis à true l'animation sera automatiquement [page:.paused mise en pause]
							 | 
						|
								            à son dernier frame.<br /><br />
							 | 
						|
								
							 | 
						|
								            Si `clampWhenFinished` est mis à false, [page:.enabled enabled] sera automatiquement reglé sur
							 | 
						|
								            false quand la dernière boucle de l'action sera terminée, afin que cette action n'ai pas plus
							 | 
						|
								            d'impact.<br /><br />
							 | 
						|
								
							 | 
						|
								            La valeur par défaut est false.<br /><br />
							 | 
						|
								
							 | 
						|
								            Note: `clampWhenFinished` n'a pas d'impact si l'action est interrompue (il n'a d'impact que si
							 | 
						|
								            la dernière boucle de l'action s'est réellement terminée).
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[property:Boolean enabled]</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Régler `enabled` sur `false` désactive cette action, afin qu'elle n'ai aucun impact. La valeur par défaut est `true`.<br /><br />
							 | 
						|
								
							 | 
						|
								            Quand l'action est réactivée, l'animation continue depuis son [page:.time time] actuel
							 | 
						|
								            (Régler `enabled` sur `false` ne relance pas l'action).<br /><br />
							 | 
						|
								
							 | 
						|
								            Note: Régler `enabled` sur `true` ne redémarre pas automatiquement l'action. Régler `enabled`
							 | 
						|
								            sur `true` ne redémarrera l'action immédiatement que si les conditions suivantes sont remplies:
							 | 
						|
								            [page:.paused paused] est à `false`, l'action n'a pas été désactivée (en
							 | 
						|
								            exécutant un [page:.stop stop] ou un [page:.reset reset]), et ni [page:.weight weight]
							 | 
						|
								            ni [page:.timeScale timeScale] ne sont à `0`.
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[property:Number loop]</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Le mode répeter (peut-être changé avec [page:.setLoop setLoop]). Sa valeur par défaut est
							 | 
						|
								            [page:Animation THREE.LoopRepeat] (avec un nombre infini de répétitions [page:.repetitions repetitions])<br /><br />
							 | 
						|
								
							 | 
						|
								            Doit être une de ces constantes:<br /><br />
							 | 
						|
								            [page:Animation THREE.LoopOnce] - joue le clip une fois,<br />
							 | 
						|
								            [page:Animation THREE.LoopRepeat] - joue le clip le nombre choisi de `répetitions`,
							 | 
						|
								            en sautant à chaque fois de la fin du clip à son début,<br />
							 | 
						|
								            [page:Animation THREE.LoopPingPong] - joue le clip le nombre choisi de `répetitions`,
							 | 
						|
								            alternant entre lecture du début vers la fin et lecture de la fin vers le début.
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[property:Boolean paused]</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Régler `paused` sur `true` met l'exécution de l'action en pause en mettant l'échelle temporelle effective
							 | 
						|
								            à `0`. La valeur par défaut est `false`.<br /><br />
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[property:Number repetitions]</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Le nombre de répétitions de l'[page:AnimationClip] actuel réalisées durant cette action.
							 | 
						|
								            Peut-être paramétré depuis [page:.setLoop setLoop]. La valeur par défaut est `Infinity`.<br /><br />
							 | 
						|
								            Changer ce nombre n'a aucun effet, si le [page:.loop loop mode] est réglé sur
							 | 
						|
								            [page:Animation THREE.LoopOnce].
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[property:Number time]</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Le temps local de cette action (en secondes, en commençant par `0`).<br /><br />
							 | 
						|
								
							 | 
						|
								            La valeur peut-être restreinte à `0...clip.duration` (selon l'état de la boucle). Il peut être
							 | 
						|
								            mis à l'échelle relativement à celui du mixer global en changeant [page:.timeScale timeScale] (en utilisant
							 | 
						|
								            [page:.setEffectiveTimeScale setEffectiveTimeScale] ou [page:.setDuration setDuration]).<br />
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[property:Number timeScale]</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Facteur de mise à l'échelle pour le [page:.time time]. Une valeur de `0` cause la mise en pause de l'animation. Une valeur
							 | 
						|
								            négative fera jouer l'animation à l'envers . La valeur par défaut est `1`.<br /><br />
							 | 
						|
								            Les propriétés/méthodes concernant `timeScale` (respectivement `time`) sont:
							 | 
						|
								            [page:.getEffectiveTimeScale getEffectiveTimeScale],
							 | 
						|
								            [page:.halt halt],
							 | 
						|
								            [page:.paused paused],
							 | 
						|
								            [page:.setDuration setDuration],
							 | 
						|
								            [page:.setEffectiveTimeScale setEffectiveTimeScale],
							 | 
						|
								            [page:.stopWarping stopWarping],
							 | 
						|
								            [page:.syncWith syncWith],
							 | 
						|
								            [page:.warp warp].
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[property:Number weight]</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Le degré d'importance d'une action (compris dans l'intervalle `[0, 1]`). Les valeurs entre `0` (aucun impact)
							 | 
						|
								            et 1 (impact total) peuvent être utilisées pour mélanger plusieurs actions. La valeur par défaut est `1`. <br /><br />
							 | 
						|
								            Les propriétés/méthodes concernant `weight` sont:
							 | 
						|
								            [page:.crossFadeFrom crossFadeFrom],
							 | 
						|
								            [page:.crossFadeTo crossFadeTo],
							 | 
						|
								            [page:.enabled enabled],
							 | 
						|
								            [page:.fadeIn fadeIn],
							 | 
						|
								            [page:.fadeOut fadeOut],
							 | 
						|
								            [page:.getEffectiveWeight getEffectiveWeight],
							 | 
						|
								            [page:.setEffectiveWeight setEffectiveWeight],
							 | 
						|
								            [page:.stopFading stopFading].
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[property:Boolean zeroSlopeAtEnd]</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Permet une interpolation fluide sans avoir de clips séparés pour le début, les répétitions et la fin. La valeur par défaut est `true`.
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[property:Boolean zeroSlopeAtStart]</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Permet une interpolation fluide sans avoir de clips séparés pour le début, les répétitions et la fin. La valeur par défaut est `true`.
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								        <h2>Méthodes</h2>
							 | 
						|
								
							 | 
						|
								
							 | 
						|
								        <h3>[method:this crossFadeFrom]( [param:AnimationAction fadeOutAction], [param:Number durationInSeconds], [param:Boolean warpBoolean] )</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Provoque l'[page:.fadeIn apparition] de cette action, en faisant disparaître une autre action simultanément, durant
							 | 
						|
								            l'intervalle de temps passée en paramètre. Cette méthode peut être chaînée.<br /><br />
							 | 
						|
								
							 | 
						|
								            Si warpBoolean est à true, un [page:.warp warping] additionnel (changement graduel de l'échelle temporelle)
							 | 
						|
								            sera appliqué.<br /><br />
							 | 
						|
								
							 | 
						|
								            Note: Comme avec `fadeIn`/`fadeOut`, le fading commence/termine avec un weight à 1.
							 | 
						|
								
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[method:this crossFadeTo]( [param:AnimationAction fadeInAction], [param:Number durationInSeconds], [param:Boolean warpBoolean] )</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Provoque la [page:.fadeIn disparition] de cette action, en faisant apparaître une autre action simultanément, durant
							 | 
						|
								            l'intervalle de temps passée en paramètre. Cette méthode peut être chaînée.<br /><br />
							 | 
						|
								            Si warpBoolean est à true, un [page:.warp warping] additionnel (changement graduel de l'échelle temporelle)
							 | 
						|
								            sera appliqué.<br /><br />
							 | 
						|
								
							 | 
						|
								            Note: Comme avec `fadeIn`/`fadeOut`, le fading commence/termine avec un weight à 1.
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[method:this fadeIn]( [param:Number durationInSeconds] )</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Augmente graduellement le [page:.weight weight] de cette action de `0` à `1`, durant
							 | 
						|
								            l'intervalle de temps passée en paramètre. Cette méthode peut être chaînée.
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
								        <h3>[method:this fadeOut]( [param:Number durationInSeconds] )</h3>
							 | 
						|
								        <p>
							 | 
						|
								            Diminue graduellement le [page:.weight weight] de cette de `1` à `0`, durant
							 | 
						|
								            l'intervalle de temps passée en paramètre. Cette méthode peut être chaînée.
							 | 
						|
								        </p>
							 | 
						|
								
							 | 
						|
										<h3>[method:Number getEffectiveTimeScale]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Renvoie l'échelle temporelle effective (en prenant en compte l'état actuel du warping et de
							 | 
						|
											[page:.paused paused]).
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:Number getEffectiveWeight]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Renvoie le weight effectif (en prenant en compte l'état actuel du fondu et de
							 | 
						|
											[page:.enabled enabled]).
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:AnimationClip getClip]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Renvoie le clip qui contient les données d'animation pour cette action.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:AnimationMixer getMixer]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Renvoie le mixer qui est responsable de jouer cette action.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:Object3D getRoot]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Renvoie l'objet racine sur lequel l'action est appliquée.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this halt]( [param:Number durationInSeconds] )</h3>
							 | 
						|
										<p>
							 | 
						|
											Diminue la vitesse de l'animation jusqu'à `0` en diminuant le [page:.timeScale timeScale] graduellement
							 | 
						|
											(en commençant depuis sa valeur actuelle), durant l'intervalle de temps passée en paramètre. Cette méthode peut être chaînée.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:Boolean isRunning]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Renvoie true si le [page:.time time] de l'action est en cours.<br /><br />
							 | 
						|
								
							 | 
						|
											En plus d'être activé dans le mixer (see [page:.isScheduled isScheduled]) les conditions suivantes doivent être remplies:
							 | 
						|
											[page:.paused paused] est à faux, [page:.enabled enabled] est à true,
							 | 
						|
											[page:.timeScale timeScale] est différent de `0`, et un départ différé n'est pas programmé
							 | 
						|
											([page:.startAt startAt]).<br /><br />
							 | 
						|
								
							 | 
						|
											Note: le fait que `isRunning` soit à true n'indique pas nécessairement que l'action est visible.
							 | 
						|
											C'est seulement le cas si le [page:.weight weight] est reglé sur une valeur non-nulle.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:Boolean isScheduled]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Renvoie true, si cette action est activée dans le mixer.<br /><br />
							 | 
						|
											Note: Cela n'indique pas nécessairement que l'action est en cours d'éxécution (voir les conditions additionnelles
							 | 
						|
											pour [page:.isRunning isRunning]).
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this play]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Indique au mixer d'activer cette action. Cette méthode peut être chaînée.<br /><br />
							 | 
						|
								
							 | 
						|
											Note: Activer cette action ne signifie pas nécessairement que l'animation démarrera directement:
							 | 
						|
											Si l'action s'était déjà terminée avant (en atteignant la fin de sa dernière boucle), ou si une durée
							 | 
						|
											pour un départ différé a été renseignée (via [page:.startAt startAt]), un [page:.reset reset] doit être
							 | 
						|
											éxécuté avant. Quelques autres paramètres ([page:.paused paused]=true, [page:.enabled enabled]=false,
							 | 
						|
											[page:.weight weight]=0, [page:.timeScale timeScale]=0) peuvent empêcher cette animation d'être jouée,
							 | 
						|
											également.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this reset]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Réinitialise l'action. Cette méthode peut être chaînée.<br /><br />
							 | 
						|
								
							 | 
						|
											Cette méthode passe [page:.paused paused] à false, [page:.enabled enabled] à true,
							 | 
						|
											[page:.time time] à `0`, annule tous les fondus et warping programmés, retire le compteur
							 | 
						|
											de boucles interne et les départs différés programmés.<br /><br />
							 | 
						|
								
							 | 
						|
											Note: .`reset` est toujours appelé par [page:.stop stop], mais .`reset` n'appelle pas .`stop` de lui-même.
							 | 
						|
											Cela signifie que: Si vous voulez à la fois, réinitialiser et stopper, n'appellez pas .`reset`; mais .`stop`.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this setDuration]( [param:Number durationInSeconds] )</h3>
							 | 
						|
										<p>
							 | 
						|
											Renseigne la durée pour une seule boucle de cette action (en modifiant [page:.timeScale timeScale]
							 | 
						|
											et en stoppant tous les warpings programmés). Cette méthode peut être chaînée.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this setEffectiveTimeScale]( [param:Number timeScale] )</h3>
							 | 
						|
										<p>
							 | 
						|
											Renseigne le [page:.timeScale timeScale] et stoppe tous les warpings programmés. Cette méthode peut être chaînée.<br /><br />
							 | 
						|
								
							 | 
						|
											Si [page:.paused paused] est à false, l'échelle temporelle effective (propriété interne) sera également 
							 | 
						|
											mise à cette valeur; par ailleurs l'échelle temporelle effective (affectant directement l'animation à
							 | 
						|
											cet instant) sera mis à `0`.<br /><br />
							 | 
						|
								
							 | 
						|
											Note: .`paused` ne sera pas automatiquement mis à `true`, si le .`timeScale` est mis à `0` par
							 | 
						|
											cette méthode.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this setEffectiveWeight]( [param:Number weight] )</h3>
							 | 
						|
										<p>
							 | 
						|
											Renseigne le [page:.weight weight] et stop tous les fondus programmés. Cette méthode peut être chaînée.<br /><br />
							 | 
						|
								
							 | 
						|
											Si [page:.enabled enabled] est à true, le weight effectif (propriété interne) sera également mis
							 | 
						|
											à cette valeur; Par ailleurs le weight effectif (affectant directement l'action à cet instant)
							 | 
						|
											sera mis à `0`.<br /><br />
							 | 
						|
								
							 | 
						|
											Note: .`enabled` ne sera pas automatiquement mis à `false`, si le .`weight` est mis à `0` par
							 | 
						|
											cette méthode.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this setLoop]( [param:Number loopMode], [param:Number repetitions] )</h3>
							 | 
						|
										<p>
							 | 
						|
											Renseigne le [page:.loop loop mode] et le nombre de [page:.repetitions répétitions]. Cette méthode
							 | 
						|
											peut être chaînée.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this startAt]( [param:Number startTimeInSeconds] )</h3>
							 | 
						|
										<p>
							 | 
						|
											Définis le temps pour un départ différé (généralement [page:AnimationMixer.time] +
							 | 
						|
											deltaTimeInSeconds). Cette méthode peut être chaînée.<br /><br />
							 | 
						|
								
							 | 
						|
											Note: Cette action ne commencera qu'à un temps donné, si .`startAt` est chaîné avec
							 | 
						|
											[page:.play play], ou si l'action a déjà été activée dans le mixer (par un appel précédent
							 | 
						|
											de .`play`, sans l'avoir stoppée ou réinitialisée entre temps).
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this stop]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Indique au mixer de désactiver cette action. Cette méthode peut être chaînée.<br /><br />
							 | 
						|
								
							 | 
						|
											L'action sera immédiatement stoppée et complètement [page:.reset reset].<br /><br />
							 | 
						|
								
							 | 
						|
											Note: Vous pouvez stopper simultanément toutes les actions actives d'un même mixer via
							 | 
						|
											[page:AnimationMixer.stopAllAction mixer.stopAllAction].
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this stopFading]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Stoppe tous les [page:.fadeIn fondus] programmés qui sont appliqués à cette action. Cette méthode peut être
							 | 
						|
											chaînée.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this stopWarping]()</h3>
							 | 
						|
										<p>
							 | 
						|
											Stoppe tous les [page:.warp warping] programmés qui sont appliqués à cette action. Cette méthode peut être
							 | 
						|
											chaînée.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this syncWith]( [param:AnimationAction otherAction] )</h3>
							 | 
						|
										<p>
							 | 
						|
											Synchronise cette action avec l'action passée en paramètre. Cette méthode peut être chaînée.<br /><br />
							 | 
						|
								
							 | 
						|
											La synchronisation est faite en dupliquant les valeurs du [page:.time time] et du [page:.timeScale timeScale] de l'autre action
							 | 
						|
											(stoppant tous les warpings programmés).<br /><br />
							 | 
						|
								
							 | 
						|
											Note: Les changements futurs du `time` et du `timeScale` de l'autre action ne seront pas détéctés.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
										<h3>[method:this warp]( [param:Number startTimeScale], [param:Number endTimeScale], [param:Number durationInSeconds] )</h3>
							 | 
						|
										<p>
							 | 
						|
											Change la vitesse de lecture, durant l'intervalle temporelle passée en paramètre, en modifiant le
							 | 
						|
											[page:.timeScale timeScale] graduellement depuis `startTimeScale` jusqu'à `endTimeScale`. Cette méthode
							 | 
						|
											peut être chaînée.
							 | 
						|
										</p>
							 | 
						|
								
							 | 
						|
								
							 | 
						|
										<h2>Évènements</h2>
							 | 
						|
								
							 | 
						|
								
							 | 
						|
										<p class="desc">
							 | 
						|
											Il y a deux évènements indiquant quand une boucle de l'animation ou l'animation elle-même s'est terminée. Vous pouvez y réagir avec:
							 | 
						|
										</p>
							 | 
						|
										<code>
							 | 
						|
										mixer.addEventListener( 'loop', function( e ) { …} ); // properties of e: type, action and loopDelta
							 | 
						|
										mixer.addEventListener( 'finished', function( e ) { …} ); // properties of e: type, action and direction
							 | 
						|
										</code>
							 | 
						|
								
							 | 
						|
										<h2>Source</h2>
							 | 
						|
								
							 | 
						|
										<p>
							 | 
						|
											[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
							 | 
						|
										</p>
							 | 
						|
									</body>
							 | 
						|
								</html>
							 | 
						|
								
							 |