0
点赞
收藏
分享

微信扫一扫

一种效果


<pre name="code" class="html">package
{
import com.greensock.TimelineLite;
import com.greensock.TweenLite;
import com.greensock.easing.Back;

import flash.display.Scene;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;

import away3d.cameras.Camera3D;
import away3d.containers.View3D;
import away3d.entities.Mesh;
import away3d.materials.TextureMaterial;
import away3d.primitives.CubeGeometry;
import away3d.textures.BitmapTexture;

import crawlingtosea.algorithms.Counter;
import crawlingtosea.algorithms.bitmap.Slice;
import crawlingtosea.events.LoaderEvent;
import crawlingtosea.events.TickEvent;
import crawlingtosea.loaders.LoaderBitmap;
import crawlingtosea.methods.Tick;

[SWF(frameRate="60",width="512",height="512")]
public class awtest extends Sprite
{

private var view:View3D;
private var cube:Mesh;
private var loader:LoaderBitmap;
private var bmpArr:Array;

private var modeArr:Array;
private var arrAdd:Array=["asset/p512.jpg","asset/p2.jpg"];

private var b:Boolean;


public function awtest()
{

//trace(flash.display.LoaderInfo.);
view=new View3D();
stage.addChild(view);

var cam:Camera3D=new Camera3D();
cam.z=-512;
view.camera=cam;
view.backgroundColor=0xFFFFFF;

var tick:Tick=new Tick(Tick.TICK_SETINTERVAL,5000);
tick.addEventListener(TickEvent.TICK,onTick);

b=true;
}

protected function onTick(event:TickEvent):void
{
// TODO Auto-generated method stub

if(view.scene.numChildren!=0){

for(var h:int=0;h<modeArr.length;h++)
{
view.scene.removeChild(modeArr[h]);
trace(h);
}
}

loader=new LoaderBitmap(arrAdd[Counter.Loop(2)]);
loader.start();
loader.addEventListener(LoaderEvent.COMPLETED,onLoaderComplete);
//trace(Counter.Loop(2));

}

protected function onLoaderComplete(event:LoaderEvent):void
{

// TODO Auto-generated method stub
loader.removeEventListener(LoaderEvent.COMPLETED,onLoaderComplete);
var slice:Slice=new Slice(loader.bitmapData);
slice.startSlice(8);
bmpArr=slice.bitmapDataArray;
//trace(bmpArr.length);
modeArr=[];
for(var n:int=0;n<64;n++){
modeArr.push(new Mesh(new CubeGeometry(64,64,64,1,1,1,false),new TextureMaterial(new BitmapTexture(bmpArr[n]))));

}
//trace(modeArr.length);

var p:int=0;
var q:int=0;
for(var i:int=0;i<8;i++){
for(var j:int=0;j<8;j++){
p=63-(j+i*8);
q=j+i*8;
// trace(63-p);
modeArr[q].x=64*j-256+32;
modeArr[p].y=64*i-256+64;
view.scene.addChild(modeArr[p]);
}
}


stage.addEventListener(MouseEvent.CLICK,onClick);


for(var i:int=0;i<64;i++){
//modeArr[i].rotationY+=0.01;
TweenLite.to(modeArr[i],1,{z:1000,rotationX:360,ease:Back.easeIn,onComplete:onC});
}

function onC():void{
for(var i:int=0;i<64;i++){
//modeArr[i].rotationY+=0.01;
TweenLite.to(modeArr[i],1,{z:-512,rotationX:360,ease:Back.easeIn});

}

}

this.stage.addEventListener(Event.ENTER_FRAME,update);
}

protected function onClick(event:MouseEvent):void
{
// TODO Auto-generated method stub


}

protected function update(event:Event):void
{
// TODO Auto-generated method stub
view.render();






}
}
}



举报

相关推荐

0 条评论