In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

forked from: papervision3d オブジェクト縦回転(カメラ縦回転と比較)

Get Adobe Flash player
by norichika2 07 Feb 2010
    Embed
/**
 * Copyright norichika2 ( http://wonderfl.net/user/norichika2 )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/sq3f
 */

package 
{
	import flash.events.Event;
	import flash.system.Security;
	import org.papervision3d.materials.special.*;
	import org.papervision3d.objects.primitives.*;
	import org.papervision3d.view.*;
	import org.papervision3d.objects.*;
	import org.papervision3d.materials.*;

	public class Main4_2 extends BasicView
	{
		
		//plane作成
		private var plane1:Plane;
		private var plane2:Plane;
		
		//円周
		private var rotY:Number = 0;
		public function Main4_2() 
		{
			
			// クロスドメイン対策
			Security.loadPolicyFile("http://assets.wonderfl.net/crossdomain.xml");
			
			//URL
			const url:String = "http://assets.wonderfl.net/images/related_images/0/03/03b2/03b2dd998e1a6cfc8e5b88a8f4c4b4ec21dfeaba";
			
			//ビットマップマテリアル作成( ゆがみ補正)
			var material:BitmapFileMaterial = new BitmapFileMaterial(url, true);
			
			//マテリアル両面表示
			material.doubleSided = true;
			
			//プレーン作成
			plane1 = new Plane(material, 400, 266, 20);
			scene.addChild(plane1);
			
			
			
			startRendering();
			
			addEventListener(Event.ENTER_FRAME, loop);
		}
		
		private function loop(e:Event):void 
		{
			//マウスの座標位置
			var targetRotY:Number = (mouseY / stage.stageHeight) * 360;
			
			if (targetRotY <= 180) {
				rotY += 0.05 * (targetRotY - 180);
			} else {
				rotY -= -0.05 * (targetRotY - 180);
			}
			
			plane1.rotationX = rotY;
		}
		
	}

}