首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

让Away3D带你360°全景遨游

2013-10-08 
让Away3D带你360全景漫游1代码展示package{import away3d.containers.View3Dimport away3d.controllers.H

让Away3D带你360°全景漫游
1代码展示

package{import away3d.containers.View3D;import away3d.controllers.HoverController;import away3d.entities.Mesh;import away3d.materials.TextureMaterial;import away3d.primitives.SphereGeometry;import away3d.textures.BitmapTexture;import flash.display.Loader;import flash.display.Sprite;import flash.events.Event;import flash.events.KeyboardEvent;import flash.events.MouseEvent;[SWF(width='1024',height='512',frameRate='60')]public class Study05 extends Sprite{[Embed(source='/../embeds/pano_sphere.jpg')]private var _pano:Class;private var _startX:Number;private var _startY:Number;private var _mouseX:Number;private var _mouseY:Number;private var _view:View3D;private var _hover:HoverController;private var _mesh:Mesh;private var _sphere:SphereGeometry;private var _material:TextureMaterial;private var _bitmap:BitmapTexture;private var _delta:int;public function Study05(){_view = new View3D();addChild(_view);_view.camera.lens.far = 2000; // 设置照相机的渲染上限(不能低于球半径)_bitmap = new BitmapTexture(new _pano().bitmapData);_sphere = new SphereGeometry(1000,32,32);_material = new TextureMaterial(_bitmap);_material.bothSides = true;_mesh = new Mesh(_sphere,_material);_hover = new HoverController(_view.camera,null,90,0,300);_view.scene.addChild(_mesh);stage.addEventListener(MouseEvent.MOUSE_DOWN,mouseDownFunction);stage.addEventListener(MouseEvent.MOUSE_UP,onUpHandler);stage.addEventListener(MouseEvent.MOUSE_WHEEL,onWheelHandler);addEventListener(Event.ENTER_FRAME,onLoopHandler);}protected function onWheelHandler(event:MouseEvent):void{_delta+=event.delta;_hover.distance=_delta;//trace(del);}protected function onUpHandler(event:MouseEvent):void{stage.removeEventListener(MouseEvent.MOUSE_MOVE,mouseMoveFunction);}private function mouseDownFunction(event:MouseEvent):void{_startX = _hover.panAngle;_startY = _hover.tiltAngle;_mouseX = mouseX;_mouseY = mouseY;stage.addEventListener(MouseEvent.MOUSE_MOVE,mouseMoveFunction);//stage.addEventListener(MouseEvent.MOUSE_UP,mouseUpFunction);}private function mouseMoveFunction(event:MouseEvent):void{_view.camera.x=_delta;_hover.panAngle = (mouseX - _mouseX) * .3 + _startX;_hover.tiltAngle = (mouseY - _mouseY) * .3 + _startY;}protected function onLoopHandler(event:Event):void{_view.render();}}}
2效果预览

让Away3D带你360°全景遨游 

热点排行