本实例演示了同时使用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));
效果图如下:

本文链接:
http://xiandanboke.com.cn/?p=889转载请注明转自
咸蛋博客
这篇博客通过实例展示了如何在cocos2d-x中同时使用CCRotateTo, CCSkewBy和CCScaleTo创建动态视觉效果,详细讲解了相关代码实现。"
104152324,6860135,视觉问答:交互注意融合模型,"['计算机视觉', '自然语言处理', '深度学习', 'VQA模型', '注意力机制']
1935

被折叠的 条评论
为什么被折叠?



