forked from: forked from: PV3Dその6 Flexコンポーネントを無理矢理張り付ける

by test_flash forked from forked from: PV3Dその6 Flexコンポーネントを無理矢理張り付ける (diff: 9)
♥0 | Line 59 | Modified 2010-01-13 10:45:52 | MIT License
play

ActionScript3 source code

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

<?xml version="1.0" encoding="utf-8"?>
<!-- forked from test_flash's forked from: PV3Dその6 Flexコンポーネントを無理矢理張り付ける -->
<!-- forked from sake's PV3Dその6 Flexコンポーネントを無理矢理張り付ける -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()" backgroundGradientAlphas="[1.0, 1.0]" backgroundGradientColors="[#000000, #000000]">
	<mx:Script>
		<![CDATA[
			import org.papervision3d.events.InteractiveScene3DEvent;
			import org.papervision3d.objects.primitives.Cylinder;
			import org.papervision3d.materials.MovieMaterial;
			import org.papervision3d.materials.utils.MaterialsList;
			import org.papervision3d.materials.ColorMaterial;
			import org.papervision3d.objects.primitives.Cube;
			import org.papervision3d.objects.DisplayObject3D;
			import org.papervision3d.render.BasicRenderEngine;
			import org.papervision3d.cameras.Camera3D;
			import org.papervision3d.scenes.Scene3D;
			import org.papervision3d.view.Viewport3D;

			private var container:Sprite;
			private var viewport:Viewport3D;
			private var scene:Scene3D;
			private var camera:Camera3D;
			private var renderer:BasicRenderEngine;
			private var rootNode:DisplayObject3D;
			private var cube:Cube;

			public function init():void
			{
				container=new Sprite();
				rawChildren.addChild(container);
				viewport=new Viewport3D(0, 0, true, true);
				container.addChild(viewport);
				scene=new Scene3D();
				camera=new Camera3D();
				renderer=new BasicRenderEngine();
				camera.zoom=40;
				camera.focus = 20;
				camera.target = DisplayObject3D.ZERO;
				rootNode=scene.addChild(new DisplayObject3D("rootNode"));

				var mat:MovieMaterial = new MovieMaterial(cal, true, true, true);
				mat.interactive=true;
				var matlist:MaterialsList = new MaterialsList({all:mat});
				cube=new Cube(matlist, 300, 300, 300);
				rootNode.addChild(cube, "cube");

				addEventListener(Event.ENTER_FRAME, onFrame);
			}

			public function onFrame(e:Event):void
			{
				cube.rotationY += 1.5;
				cube.rotationX += 1.5;
				renderer.renderScene(scene, camera, viewport);
			}
		]]>
	</mx:Script>
<!--	<mx:Canvas width="250" height="250" id="myCanvas" backgroundColor="#FFFFFF">
		<mx:Button x="10" y="10" label="ボタン1"/>
		<mx:Button x="184" y="10" label="ボタン2"/> -->
		<mx:DateChooser x="0" y="0" id="cal"/>
<!--	</mx:Canvas>-->
	<mx:Canvas x="0" y="0" width="450" height="450" backgroundColor="#000000"/>
</mx:Application>