签到

05月19日
尚未签到

共有回帖数 2

    荷塘月色

    等级:
    本教程用BitmapSphereBasic类,创建改变旋转方向和移动贴图的实例。1、新建AS3.0 flv文档,文档属性,500*500像素,帧频60fps ,存盘。如图1:





    4、返回场景1,图层1拖入背景图片。5、添加as层输入代码:

    楼主 2016-11-21 13:22 回复

    荷塘月色

    等级:
    //导入BitmapSphereBasic类
    import com.flashandmath.cs4.BitmapSphereBasic;
    //创建一个行星
    var board:Sprite = new Sprite();
    //添加到显示列表
    this.addChild(board);
    //生成 datatype BitmapSphereBasic 的一个函数。
    // 设定函数初始值。
    var ball:BitmapSphereBasic;
    //旋转的一个布尔值的函数。
    var autoOn:Boolean = true;
    //两个函数为鼠标旋转。
    var prevX:Number;
    var prevY:Number;
    //行星的位置.
    var ballX:Number = 250;
    var ballY:Number = 250;
    //贴图
    var imageData:BitmapData = new Earth(800,548);
    ball = new BitmapSphereBasic(imageData);
    board.addChild(ball);
    ball.x = ballX;
    ball.y = ballY;
    //滤镜
    ball.filters = [new GlowFilter(0xB4B5FE,0.6,32.0,32.0,1)];
    this.addEventListener(Event.ENTER_FRAME,autoRotate);
    board.addEventListener(MouseEvent.ROLL_OUT,boardOut);
    board.addEventListener(MouseEvent.MOUSE_MOVE,boardMove);
    board.addEventListener(MouseEvent.MOUSE_DOWN,boardDown);
    board.addEventListener(MouseEvent.MOUSE_UP,boardUp);
    function autoRotate(e:Event):void {
    if (autoOn) {
    ball.autoSpin(-1);
    }
    }
    //三个侦听为旋转和鼠标。
    function boardOut(e:MouseEvent):void {
    autoOn = true;
    }
    function boardDown(e:MouseEvent):void {
    prevX = board.mouseX;
    prevY = board.mouseY;
    autoOn = false;
    }
    function boardUp(e:MouseEvent):void {
    autoOn = true;
    }
    function boardMove(e:MouseEvent):void {
    var locX:Number = prevX;
    var locY:Number = prevY;
    //取反
    if (! autoOn) {
    prevX = board.mouseX;
    prevY = board.mouseY;
    ball.rotateSphere(prevY - locY, - (prevX - locX),0);
    e.updateAfterEvent();
    }
    }

    1楼 2016-11-21 13:22 回复

共有回帖数 2
  • 回 帖
  • 表情 图片 视频
  • 发表

登录直线网账号

Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号 意见反馈 | 关于直线 | 版权声明 | 会员须知