BetweenAS3お試し3-Tweenの結合と3DモデルのTween

by alterna_in
pv3dのモデルをtween。モデルのところはclockmakerさんの
http://wonderfl.net/code/fd2999a95f4cffbd95b6b607d1e50c61313f2734
を利用させてもらってます。
♥0 | Line 38 | Modified 2009-08-14 22:34:07 | MIT License
play

ActionScript3 source code

/**
 * Copyright alterna_in ( http://wonderfl.net/user/alterna_in )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/ehUh
 */

//pv3dのモデルをtween。モデルのところはclockmakerさんの
//http://wonderfl.net/code/fd2999a95f4cffbd95b6b607d1e50c61313f2734
//を利用させてもらってます。
package 
{
	import flash.display.Sprite;
	import flash.events.Event;
	import org.libspark.betweenas3.tweens.ITween;
	
        import org.papervision3d.lights.PointLight3D;
	import org.papervision3d.materials.shadematerials.FlatShadeMaterial;
	import org.papervision3d.objects.primitives.Sphere;
	import org.papervision3d.view.BasicView;
	
	import org.libspark.betweenas3.BetweenAS3;
	import org.libspark.betweenas3.easing.*;
	import org.libspark.betweenas3.tweens.IObjectTween;
	import org.libspark.betweenas3.events.TweenEvent;
	/**
	 * ...
	 * @author izm_design
         */
	
        public class Main extends BasicView
	{
		
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
		
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			
			var light:PointLight3D = new PointLight3D();
            
			// 球面のポリゴンに貼り付けるテクスチャ(フラットポリゴンを使用)を作成します
			// 引数はライト、明るい部分の色、暗い部分の色です。
			var material:FlatShadeMaterial = new FlatShadeMaterial(light, 0xFFFFFF, 0x000000);
			
			// 球面を作成(引数はテクスチャ、半径、横方向のポリゴン分割数、縦方向のポリゴン分割数)
			var sphere:Sphere = new Sphere(material, 100, 12, 12);
			
			// 3Dシーンに表示(PV3DではsceneにaddChildします)
                        scene.addChild(sphere);
            
			// レンダリング開始
                        startRendering();
			
			var objTween:IObjectTween = BetweenAS3.tween(sphere, {y:100}, null, 1.0, Quint.easeOut);
			var myTween:ITween = BetweenAS3.serial(
									objTween,
									BetweenAS3.reverse(objTween)
								 );
			myTween.stopOnComplete = false;
			myTween.play();
		}
	}
}