forked from: [練習]

by Tamanegi_kenshi forked from [練習] (diff: 44)
♥0 | Line 65 | Modified 2010-09-07 14:55:47 | MIT License | (replaced)
play

ActionScript3 source code

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

// forked from Tamanegi_kenshi's [練習]
package {
    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.net.URLRequest;
    import flash.display.Loader;
    import flash.display.Bitmap;
    import flash.system.Security;
    import flash.display.AVM1Movie;
    import flash.media.Camera;
    import flash.text.TextField;
    import flash.display.MovieClip;
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.events.MouseEvent;
    import flash.display.DisplayObject;
    import org.papervision3d.cameras.Camera3D;
    import org.papervision3d.scenes.Scene3D;
    import org.papervision3d.view.Viewport3D;
    import org.papervision3d.render.BasicRenderEngine;
    import org.papervision3d.objects.primitives.*;
    import org.papervision3d.materials.ColorMaterial;
    import org.papervision3d.events.InteractiveScene3DEvent;
    import org.papervision3d.materials.BitmapFileMaterial;
    
    
    import caurina.transitions.Tweener;
    
    public class FlashTest extends Sprite {
        private var mc:MovieClip;
        private var camera:Camera3D;
        private var scene:Scene3D;
        private var viewport:Viewport3D;
        private var renderer:BasicRenderEngine;
        private var plane:Sphere;
        private var plane1:Plane;
        
        private var planeNum:int = 20;
        private var planeArr:Array = [];
        private var angleX:int = 0;
        
        //private var file:String = "http://assets.wonderfl.net/images/related_images/3/37/37f5/37f5f9a17dfa799dadba38e45e568d4da9b4ee23";
        
        
        public function FlashTest() {
            init();
            
        }//FlashTest
        private function init():void{
            Security.allowDomain("assets.wonderfl.net");
            Security.loadPolicyFile("http://assets.wonderfl.net/crossdomain.xml");
            
            var load:Loader = new Loader();
            var url:URLRequest = new URLRequest("http://assets.wonderfl.net/images/related_images/3/37/37f5/37f5f9a17dfa799dadba38e45e568d4da9b4ee23");
            load.load(url);
            
            var bd:BitmapData = new BitmapData(200, 200);
            bd.draw(load);
            var bt:Bitmap = new Bitmap(bd)
            addChild(bt);
          
            camera = new Camera3D();
            scene = new Scene3D();
            viewport = new Viewport3D(465, 465);
            renderer = new BasicRenderEngine();
            
            viewport.interactive = true;
            addChild(viewport);
            
           camera.z = -500;
           
           //var material:ColorMaterial = new ColorMaterial(0xcccccc);
         //  var material:BitmapFileMaterial = new BitmapFileMaterial(load);
         //  material.doubleSided = true;
           plane1 = new Plane(null, 200, 200);
           scene.addChild(plane1);
           
           
            
            addEventListener(Event.ENTER_FRAME, onEnter);            
        
        }
     //   private function onPlane(e:InteractiveScene3DEvent):void{
          //event.target.scaleX = 2;
     //   }


       
       
        private function onEnter(e:Event):void{
            
            /*
            angleX += (232 - mouseX) * 0.05;
            var radian:Number = angleX * Math.PI / 180;
            camera.x = Math.cos(radian) * 500;
            camera.z = Math.sin(radian) * 500;
            
            var dz:Number = 0 - camera.z;
            var dx:Number = 0 - camera.x;
            var angl:Number = Math.atan2(dx, dz);
            camera.rotationY = angl * 180 / Math.PI;
            */
            
            plane1.rotationY += -(232 - mouseX) * 0.05;
         //   plane1.rotationX += (232 - mouseY) * 0.05;
           
            
            renderer.renderScene(scene, camera, viewport);
        }




    }
}