cocos2d-x实例学习(7)之同时使用rotate,skew,scale

来源:互联网 发布:组态软件下载 编辑:程序博客网 时间:2024/06/07 06:21

本实例演示了同时使用CCRotateTo,CCSkewTo,CCScaleTo来实现动态效果,代码如下

    CCSize boxSize = CCSizeMake(100.0f, 100.0f);    //在场景中添加一个背景为黄色的矩形    CCLayerColor *box = CCLayerColor::create(ccc4(255, 255, 0, 255));    box->setAnchorPoint(ccp(0, 0));    box->setPosition(ccp(190, 110));    box->setContentSize(boxSize);    //在上面的黄色矩形左上角添加一个矩形    static float markrside = 10.0f;    CCLayerColor *uL = CCLayerColor::create(ccc4(255, 0, 0, 255));    box->addChild(uL);    uL->setContentSize(CCSizeMake(markrside, markrside));    uL->setPosition(ccp(0.f, boxSize.height - markrside));    uL->setAnchorPoint(ccp(0, 0));    //在上面的黄色矩形右上角添加一个矩形    CCLayerColor *uR = CCLayerColor::create(ccc4(0, 0, 255, 255));    box->addChild(uR);    uR->setContentSize(CCSizeMake(markrside, markrside));    uR->setPosition(ccp(boxSize.width - markrside, boxSize.height - markrside));    uR->setAnchorPoint(ccp(0, 0));    addChild(box);    //使用CCRotateTo,CCSkewTo,CCScaleTo来实现动态效果    CCActionInterval *actionTo = CCSkewTo::create(2, 0.f, 2.f);    CCActionInterval *rotateTo = CCRotateTo::create(2, 61.0f);    CCActionInterval *actionScaleTo = CCScaleTo::create(2, -0.44f, 0.47f);    CCActionInterval *actionScaleToBack = CCScaleTo::create(2, 1.0f, 1.0f);    CCActionInterval *rotateToBack = CCRotateTo::create(2, 0);    CCActionInterval *actionToBack = CCSkewTo::create(2, 0, 0);    box->runAction(CCSequence::create(actionTo, actionToBack, NULL));    box->runAction(CCSequence::create(rotateTo, rotateToBack, NULL));    box->runAction(CCSequence::create(actionScaleTo, actionScaleToBack, NULL));

效果图如下:

本文标题:cocos2d-x实例学习(7)之同时使用rotate,skew,scale
本文链接:http://xiandanboke.com.cn/?p=889转载请注明转自咸蛋博客

原创粉丝点击