0%

CVP认证学习笔记--(何小成)009--节点的旋转和缩放

API

本节课内容讲的是节点的旋转和缩放,在cocos中的API是以下两句代码:

1
2
3
4
5
6
7
// 1.缩放
// node为要缩放的节点,scale为要缩放的倍数
node.setScale(scale);

// 2.旋转
// node为要旋转的节点,rotation为要旋转的角度
node.setRotation(rotation);

作业

从api来看,实现旋转和缩放并不复杂,在课后作用中,要实现点击按钮来旋转或缩放一个图片,作业实现代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
    // 添加放大、缩小、旋转按钮
    var big = new cc.MenuItemLabel(new cc.LabelTTF("放大","",50),this.bigger,this);
    big.setPosition(size.width/6,size.height/2);
    var small = new cc.MenuItemLabel(new cc.LabelTTF("缩小","",50),this.small,this);
    small.setPosition(size.width/2,size.height/2);
    var rotate = new cc.MenuItemLabel(new cc.LabelTTF("旋转","",50),this.rotate,this);
    rotate.setPosition(size.width*5/6,size.height/2);
    var menu = new cc.Menu(big,small,rotate);
    menu.setPosition(0,0);
    menu.setAnchorPoint(0,0);
    this.addChild(menu);

    // 放大按钮回调
    bigger:function(){
        var logo = this.getChildByTag(1);
        logo.setScale(logo.getScale()*1.1);
    },
    // 缩小按钮回调
    small:function(){
        var logo = this.getChildByTag(1);
        logo.setScale(logo.getScale()*0.9);
    },
    // 旋转按钮回调
    rotate:function(){
        var logo = this.getChildByTag(1);
        logo.setRotation(logo.getRotation()+15);
    }

最终运行效果

http://www.cocoscvp.com/usercode/2016_04_18/0d97ec16bdeb715442b306f7d8559911631fbabe/

大爷赏点儿呗.

欢迎关注我的其它发布渠道