亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? distortbaseinstance.as

?? Flex三維特效 examples - see DistortionExamples.mxml bin - Use the included SWC component for productio
?? AS
字號:
package com.adobe.ac.mxeffects.effectClasses
{
	import com.adobe.ac.mxeffects.Distortion;
	import com.adobe.ac.mxeffects.DistortionConstants;
	
	import flash.display.DisplayObject;
	import flash.display.DisplayObjectContainer;
	import flash.events.Event;
	import flash.filters.BlurFilter;
	import flash.geom.Point;
	import flash.geom.Rectangle;
	import flash.utils.Dictionary;
	
	import mx.core.Container;
	import mx.core.ContainerCreationPolicy;
	import mx.core.IFlexDisplayObject;
	import mx.core.UIComponent;
	import mx.core.mx_internal;
	import mx.effects.Tween;
	import mx.effects.effectClasses.TweenEffectInstance;
	import mx.events.TweenEvent;
	
	use namespace mx_internal;
	
	public class DistortBaseInstance extends TweenEffectInstance
	{
		public var direction : String;
		public var buildMode : String;
		public var smooth : Boolean;
		public var distortion : Number;
		public var blur : BlurFilter;
		public var offsetRect : Rectangle;
		public var quality : String;
		public var liveUpdate : Boolean = false;
		public var liveUpdateInterval : int = 0;
		protected var siblingDuration : Number;
		protected var currentSibling : int;
		protected var currentTarget : UIComponent;
		protected var container : DisplayObjectContainer;		
		private var originalContainerCreationPolicy : String;
		private var distortDeletionPending : Distortion;
		private var concatenatedMatrices : Dictionary;
		private var _siblings : Array;
		private var _containerChild : DisplayObject;
		
		public function DistortBaseInstance( target : Object )
		{
			super( target );
		}
		
		public function get siblings() : Array
		{
			return _siblings;
		}
		
		public function set siblings( value : Array ) : void
		{
			var index : int = value.indexOf( null );
			if( index > -1 )
			{
				throw new Error( "siblings: [" + value + "] contains a null value at position " + index );
			}			
			_siblings = value;
		}
						
		override public function play() : void
		{
			super.play();
			initializeProperties();
		}
		
		protected function applyBlur( target : DisplayObject ) : void
		{
			if( blur != null )
			{
				var filters : Array = target.filters;
				filters.push( blur );
				target.filters = filters;
			}
		}
		
		protected function applyDistortionMode( distortion : Distortion ) : void
		{
			if( buildMode != null ) distortion.buildMode = buildMode;
			distortion.smooth = smooth;
			distortion.liveUpdate = liveUpdate;
			findContainer();
			distortion.targetContainer = container;
			distortion.concatenatedMatrix = concatenatedMatrices[ distortion.target ];			
		}
		
		protected function applyCoordSpaceChange( distortion : Distortion, coordSpaceChild : DisplayObject ) : void
		{
			var correctBuildMode : Boolean = ( buildMode == DistortionConstants.POPUP );
			var coordsSpaceChange : Boolean = ( correctBuildMode && currentTarget.parent == null );
			if( coordsSpaceChange )
			{
				distortion.positionedTarget = DisplayObject( coordSpaceChild );	
			}
		}
				
		protected function animate( startPoints : Object, endPoints : Object, 
											siblingDuration : Number, 
											updateHandler : Function, endHandler : Function ) : void
		{
			var tweenListener : Object = new Object();
			var tween : Tween = createTween( tweenListener, startPoints, endPoints, siblingDuration );
			if( endHandler == null ) endHandler = onEnd;
			tween.setTweenHandlers( updateHandler, endHandler );
		}
		
		protected function initializeNextTarget() : void
		{
			currentSibling++;
			currentTarget = siblings[ currentSibling ];
			initializeBounds( currentTarget );
		}
		
		protected function initializePreviousTarget() : void
		{
			currentSibling--;
			currentTarget = siblings[ currentSibling ];
			initializeBounds( currentTarget );
		}
		
		protected function initializeProperties() : void
		{
			if( isNaN( distortion ) ) distortion = 20;
			
			siblingDuration = duration / siblings.length;
			currentSibling = -1;
			siblings.unshift( target );
			findContainer();
			initializeChildrenForCapture();
		}
		
		protected function initializeBounds( newChild : UIComponent ) : void
		{
			var firstChild : DisplayObject = DisplayObject( target );
			
			if( container is Container )
			{
				var mxContainer : Container = Container( container );
				originalContainerCreationPolicy = mxContainer.creationPolicy;
				mxContainer.creationPolicy = ContainerCreationPolicy.ALL;
				mxContainer.validateNow();
			}
			newChild.setActualSize( firstChild.width, firstChild.height );
			newChild.validateNow();
		}
		
		override public function onTweenEnd( value : Object ) : void 
		{
			if( originalContainerCreationPolicy != null )
			{
				var mxContainer : Container = Container( container );
				mxContainer.creationPolicy = originalContainerCreationPolicy;
			}
			reset();
			super.onTweenEnd( value );
		}
		
		protected function getContainerChild( child : DisplayObject ) : DisplayObject
		{
			var coordsChild : DisplayObject;
			if( child.parent == null ) 
				coordsChild = containerChild;
			else
				coordsChild = child;
			return coordsChild;
		}		
		
		protected function get containerChild() : DisplayObject
		{
			if( _containerChild == null )
			{
				_containerChild = findContainerChild();
			}
			else if( _containerChild.parent == null )
			{
				_containerChild = findContainerChild();			
			}
			return _containerChild;
		}
		
		protected function set containerChild( value : DisplayObject ) : void
		{
			_containerChild = value;
		}
		
		private function findContainerChild() : DisplayObject
		{
			var containerChild : DisplayObject;
			var len : Number = siblings.length;
			for( var i : int; i < len; i++ )
			{
				var child : DisplayObject = siblings[ i ];
				if( child.parent != null )
				{
					containerChild = child;
					break;
				}
			}
			return containerChild;
		}
		
		private function findContainer() : void
		{
			if( this.container == null )
			{
				var container : DisplayObjectContainer;
				if( target.parent != null )
				{
					container = target.parent;
				}
				else
				{
					var len : Number = siblings.length;
					for( var i : int; i < len; i++ )
					{
						var child : DisplayObject = siblings[ i ];
						if( child.parent != null )
						{
							container = DisplayObjectContainer( child.parent );
							containerChild = child;
							break;
						}
					}
				}
				this.container = container;			
			}
		}
		
		private function initializeChildrenForCapture() : void
		{
			concatenatedMatrices = new Dictionary();
			var len : Number = siblings.length;
			if( container is Container )
			{
   			var mxContainer : Container = Container( container );
   			for( var i : int; i < len; i++ )
   			{
   				var child : DisplayObject = siblings[ i ];
   				if( child.parent == null )
   				{
   					mxContainer.addChild( child );
   					mxContainer.validateNow();
   					concatenatedMatrices[ child ] = child.transform.concatenatedMatrix;
   					mxContainer.removeChild( child );
   				}
   				else
   				{
   					concatenatedMatrices[ child ] = child.transform.concatenatedMatrix;
   				}
   			}
			}
			else
			{
   			for( var j : int; j < len; j++ )
   			{
   				var child2 : DisplayObject = siblings[ j ];
   				concatenatedMatrices[ child2 ] = child2.transform.concatenatedMatrix;
   			}  
			}
		}
		
		private function reset() : void
		{
			siblings.shift();
			siblingDuration = 0;
			currentSibling = 0;			
			currentTarget = null;
			container = null;
			originalContainerCreationPolicy = null;
		}
		
		protected function delayDeletion( distortComing : Distortion ) : void
		{
			distortDeletionPending = distortComing;
			addEventListener( TweenEvent.TWEEN_START, performDistortDeletion );
		}
		
		private function performDistortDeletion( event : TweenEvent ) : void
		{
			if( distortDeletionPending != null )
			{
				distortDeletionPending.destroy();
				distortDeletionPending = null;
				removeEventListener( TweenEvent.TWEEN_START, performDistortDeletion );
			}
		}		
		
		private function onEnd( value : Object ) : void
		{
			//dummy handler
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品一区二区果冻传媒| 色综合av在线| 欧美mv和日韩mv国产网站| 秋霞影院一区二区| 精品成人佐山爱一区二区| 亚洲444eee在线观看| 欧美浪妇xxxx高跟鞋交| 国产精品无码永久免费888| 亚洲gay无套男同| 欧美日韩成人在线一区| 日韩av中文字幕一区二区| 91老师片黄在线观看| 精品对白一区国产伦| 国产做a爰片久久毛片| 久久日一线二线三线suv| 午夜国产精品影院在线观看| 在线区一区二视频| 亚洲福利一区二区三区| 4438x成人网最大色成网站| 免费日本视频一区| 久久综合九色综合97婷婷| 国产成人自拍网| 国产精品久久精品日日| 91色porny蝌蚪| 亚洲高清免费在线| 91丨porny丨户外露出| 国产亚洲1区2区3区| 热久久国产精品| 日韩欧美国产麻豆| 青青草国产精品97视觉盛宴| 日韩欧美www| 国产精品66部| 亚洲欧洲韩国日本视频| 欧美日韩国产在线观看| 久久99久久99精品免视看婷婷| 制服丝袜av成人在线看| 久久国产精品99久久人人澡| 国产欧美精品区一区二区三区| 日韩av一区二区三区四区| 日韩久久精品一区| 暴力调教一区二区三区| 亚洲一区二区美女| 日本高清不卡在线观看| 日韩电影在线观看网站| 久久久噜噜噜久噜久久综合| 99re视频这里只有精品| 一区二区三区在线不卡| 欧美福利视频导航| 粉嫩av一区二区三区在线播放| 久久久www免费人成精品| av在线免费不卡| 五月开心婷婷久久| 久久综合久久久久88| 色综合一个色综合| 久久精品国产第一区二区三区| 91精品国产高清一区二区三区蜜臀 | 久久这里只有精品6| 9i看片成人免费高清| 午夜精品一区二区三区免费视频 | 国产丝袜美腿一区二区三区| 99视频一区二区三区| 午夜精品一区二区三区免费视频| 欧美日韩一区二区三区免费看| 亚洲电影视频在线| 国产亚洲精品精华液| 欧美羞羞免费网站| 国产精品123区| 亚洲18色成人| 中文字幕中文乱码欧美一区二区| 不卡在线视频中文字幕| 日本伊人精品一区二区三区观看方式 | av综合在线播放| 日本最新不卡在线| 亚洲天堂av老司机| 精品乱码亚洲一区二区不卡| 国产一区二区精品久久99| 欧美高清一级片在线观看| 欧美视频一区二区三区四区| 国产精品一卡二卡在线观看| 水野朝阳av一区二区三区| 中文字幕在线视频一区| 欧美大片在线观看一区| 欧美性极品少妇| 成人高清视频在线观看| 激情亚洲综合在线| 亚洲成av人片观看| 亚洲伦理在线精品| 91精品中文字幕一区二区三区| 狠狠色丁香婷婷综合| 香蕉久久一区二区不卡无毒影院| 欧美va亚洲va| 成人永久看片免费视频天堂| 日本特黄久久久高潮 | 91视视频在线观看入口直接观看www | 伊人一区二区三区| 欧美一级日韩一级| 欧洲另类一二三四区| 国产99久久久国产精品免费看| 亚洲男同性视频| 日本一区二区三区在线不卡| 欧美亚洲愉拍一区二区| 懂色av中文字幕一区二区三区| 一区二区三区鲁丝不卡| 中文无字幕一区二区三区| 精品国产自在久精品国产| 欧美美女黄视频| 欧美日韩综合在线免费观看| 色屁屁一区二区| 麻豆精品视频在线观看| 午夜久久久久久久久| 亚洲精品写真福利| 国产精品久久久一区麻豆最新章节| 欧美视频完全免费看| 一本大道久久a久久综合| 久久精品理论片| 五月婷婷激情综合| 亚洲va欧美va人人爽| 亚洲一区二区四区蜜桃| 亚洲免费观看高清完整版在线观看熊| 欧美电影免费观看高清完整版在线| av综合在线播放| 成人精品电影在线观看| 成人精品亚洲人成在线| 成人看片黄a免费看在线| 成人在线视频首页| eeuss影院一区二区三区| 欧美a级理论片| 免费高清视频精品| 亚洲一区二区免费视频| 亚洲国产美女搞黄色| 亚洲影院在线观看| 亚洲午夜免费电影| 亚洲电影你懂得| 日本网站在线观看一区二区三区| 亚洲乱码中文字幕综合| 亚洲欧美另类图片小说| 亚洲男同性恋视频| 亚洲国产综合人成综合网站| 亚洲国产视频一区| 日日摸夜夜添夜夜添亚洲女人| 18欧美亚洲精品| 一区二区三区四区不卡视频| 亚洲国产欧美一区二区三区丁香婷| 国产精品女主播在线观看| 国产精品久久久久久久蜜臀| 亚洲男人的天堂一区二区| 亚洲精品va在线观看| 亚洲成在线观看| 日本91福利区| 国产在线播放一区| 青娱乐精品视频| 亚洲一区二区三区美女| 日韩专区一卡二卡| 久久av老司机精品网站导航| 国产揄拍国内精品对白| 不卡av免费在线观看| 丁香桃色午夜亚洲一区二区三区| 美女视频黄 久久| 懂色av中文字幕一区二区三区 | 午夜久久久久久久久久一区二区| 亚洲人成精品久久久久久| 亚洲一区二区三区国产| 麻豆视频一区二区| 高清免费成人av| 欧美亚洲一区二区在线| 色综合久久久久久久久久久| 制服.丝袜.亚洲.另类.中文| 久久精品网站免费观看| 亚洲男人的天堂av| 美国av一区二区| 99精品久久只有精品| 欧美精品18+| 国产欧美精品一区aⅴ影院 | 国产欧美精品国产国产专区 | 国产精品国产三级国产aⅴ原创| 国产亚洲一区二区三区| 亚洲视频香蕉人妖| 男女激情视频一区| 成人国产电影网| 6080日韩午夜伦伦午夜伦| 在线播放中文一区| 国产精品日产欧美久久久久| 亚洲福利国产精品| 国产成人精品亚洲日本在线桃色| 粉嫩欧美一区二区三区高清影视 | 老汉av免费一区二区三区| 毛片av中文字幕一区二区| 成人av影视在线观看| 欧美乱熟臀69xxxxxx| 日韩欧美中文字幕一区| 国产精品传媒入口麻豆| 青青草一区二区三区| 99国产精品一区| 欧美不卡一区二区三区| 亚洲精品国产a| 五月激情丁香一区二区三区| 成人激情图片网| 欧美成人女星排行榜| 一区二区三区丝袜| 免费高清不卡av|