各个基本体的入门实例

package {
	import flash.events.Event;
	
	import org.papervision3d.materials.ColorMaterial;
	import org.papervision3d.materials.WireframeMaterial;
	import org.papervision3d.materials.utils.MaterialsList;
	import org.papervision3d.objects.primitives.Arrow;
	import org.papervision3d.objects.primitives.Cone;
	import org.papervision3d.objects.primitives.Cube;
	import org.papervision3d.objects.primitives.Cylinder;
	import org.papervision3d.objects.primitives.PaperPlane;
	import org.papervision3d.objects.primitives.Sphere;
	import org.papervision3d.view.BasicView;

	public class PV3D extends BasicView
	{
		/**
		 * 球体
		 * */
		private var sphere:Sphere;
		/**
		 * 圆柱体
		 * */
		private var cube:Cube;
		
		/**
		 * 纸飞机
		 * */
		private var paperPlane:PaperPlane;
		
		/**
		 * 圆柱体
		 * */
		private var cylinder:Cylinder;
		
		/**
		 * 箭头
		 * */
		private var arrow:Arrow;
		
		/**
		 * 圆锥体
		 * */
		private var cone:Cone;
		
		public function PV3D()
		{
			
			stage.frameRate = 40;
			/**
			 * 实例化球体
			 * */
			sphere = new Sphere(null,400,8,6,"sp");
			
			/**
			 * 材质数组
			 * */
			var materialsList:MaterialsList = new MaterialsList();
			
			
			/**
			 * 颜色材质
			 * */
			var red:ColorMaterial = new ColorMaterial(0xFF0000);
			var blue:ColorMaterial = new ColorMaterial(0x0000FF);
			var green:ColorMaterial = new ColorMaterial(0x00FF00);
			
			
			materialsList.addMaterial(red,'front');
			materialsList.addMaterial(red,'back');
			materialsList.addMaterial(blue,"left");
			materialsList.addMaterial(blue,'right');
			materialsList.addMaterial(green,'top');
			materialsList.addMaterial(green,'bottom');
			
			/**
			 * 实例化立方体
			 * */
			cube = new Cube(materialsList,500,500,500);
			
			/**
			 * 实例化纸飞机
			 * */
			var paperPlane:PaperPlane = new PaperPlane(null,8);
			
			/**
			 * 实例化圆柱体
			 * */
			 cylinder= new Cylinder(null,80,400,8,2,-1,false,true);
			 
			 /**
			 * 实例化箭头
			 * */
			arrow = new Arrow();
			
			/**
			 * 线框材质
			 * */
			var material:WireframeMaterial = new WireframeMaterial(0x000000,0.5,2);
			
			/**
			 * 圆锥体
			 * */
			cone = new Cone(material,200,600,8,4);
			
						
			scene.addChild(sphere);
			scene.addChild(cube);
			scene.addChild(paperPlane);
			scene.addChild(cylinder);
			scene.addChild(arrow);
			scene.addChild(cone);
			
			startRendering();
		}
		
		/**
		 * 重写渲染功能
		 * */
		override protected function onRenderTick(event:Event=null):void
		{
			sphere.localRotationY--;
			cube.x = 700;
			cube.localRotationX--;
			cube.localRotationZ--;
			cylinder.localRotationY--;
			
			super.onRenderTick();
		}
	}
}
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值