PuzzleSDK
SpriteBatchNodeOffsetAnchorRotationalSkewScale类 参考

#include <SpriteTest.h>

+ 类 SpriteBatchNodeOffsetAnchorRotationalSkewScale 继承关系图:
+ SpriteBatchNodeOffsetAnchorRotationalSkewScale 的协作图:

Public 成员函数

 CREATE_FUNC (SpriteBatchNodeOffsetAnchorRotationalSkewScale)
 
 SpriteBatchNodeOffsetAnchorRotationalSkewScale ()
 
virtual ~SpriteBatchNodeOffsetAnchorRotationalSkewScale ()
 
virtual std::string title () const override
 
virtual std::string subtitle () const override
 
- Public 成员函数 继承自 TestCase
 TestCase ()
 
 ~TestCase ()
 
virtual Type getTestType () const
 
virtual float getDuration () const
 
virtual std::string getExpectedOutput () const
 
virtual std::string getActualOutput () const
 
virtual void restartTestCallback (cocos2d::Ref *sender)
 
virtual void nextTestCallback (cocos2d::Ref *sender)
 
virtual void priorTestCallback (cocos2d::Ref *sender)
 
virtual void onBackCallback (cocos2d::Ref *sender)
 
void setTestSuite (TestSuite *testSuite)
 
TestSuitegetTestSuite () const
 
float getRunTime () const
 
void setTestCaseName (const std::string &name)
 
std::string getTestCaseName () const
 
const cocos2d::Label * getSubtitleLable () const
 
const cocos2d::MenuItemImage * getRestartTestItem () const
 
virtual void onEnter () override
 

额外继承的成员函数

- Public 类型 继承自 TestCase
enum class  Type { ROBUSTNESS , UNIT , GRAPHICAL_STATIC , MANUAL }
 
- Public 属性 继承自 TestCase
CC_CONSTRUCTOR_ACCESS __pad0__: virtual bool init() override
 
- Protected 属性 继承自 SpriteTestDemo
std::string _title
 
- Protected 属性 继承自 TestCase
cocos2d::MenuItemImage * _priorTestItem
 
cocos2d::MenuItemImage * _restartTestItem
 
cocos2d::MenuItemImage * _nextTestItem
 
cocos2d::Label * _titleLabel
 
cocos2d::Label * _subtitleLabel
 

详细描述

在文件 SpriteTest.h488 行定义.

构造及析构函数说明

◆ SpriteBatchNodeOffsetAnchorRotationalSkewScale()

SpriteBatchNodeOffsetAnchorRotationalSkewScale::SpriteBatchNodeOffsetAnchorRotationalSkewScale ( )

在文件 SpriteTest.cpp4735 行定义.

4736{
4737 auto s = Director::getInstance()->getWinSize();
4738
4739 auto cache = SpriteFrameCache::getInstance();
4740 cache->addSpriteFramesWithFile("animations/grossini.plist");
4741 cache->addSpriteFramesWithFile("animations/grossini_gray.plist", "animations/grossini_gray.png");
4742
4743 auto spritebatch = SpriteBatchNode::create("animations/grossini.png");
4744 addChild(spritebatch);
4745
4746 for(int i=0;i<3;i++)
4747 {
4748 //
4749 // Animation using Sprite batch
4750 //
4751 auto sprite = Sprite::createWithSpriteFrameName("grossini_dance_01.png");
4752 sprite->setPosition(Vec2(s.width/4*(i+1), s.height/2));
4753
4754 auto point = Sprite::create("Images/r1.png");
4755
4756 point->setScale(0.25f);
4757 point->setPosition(sprite->getPosition());
4758 addChild(point, 1);
4759
4760 switch(i)
4761 {
4762 case 0:
4763 sprite->setAnchorPoint(Vec2::ANCHOR_BOTTOM_LEFT);
4764 break;
4765 case 1:
4766 sprite->setAnchorPoint(Vec2::ANCHOR_MIDDLE);
4767 break;
4768 case 2:
4769 sprite->setAnchorPoint(Vec2::ANCHOR_TOP_RIGHT);
4770 break;
4771 }
4772
4773 point->setPosition(sprite->getPosition());
4774
4775 Vector<SpriteFrame*> animFrames(14);
4776 for(int j = 0; j < 14; j++)
4777 {
4778 char pngName[30];
4779 snprintf(pngName, 30, "grossini_dance_%02d.png", (j+1));
4780 auto frame = cache->getSpriteFrameByName(pngName);
4781 animFrames.pushBack(frame);
4782 }
4783 auto animation = Animation::createWithSpriteFrames(animFrames, 0.3f);
4784 sprite->runAction(RepeatForever::create(Animate::create(animation)));
4785
4786 // Skew
4787 auto skewX = RotateBy::create(2, 45, 0);
4788 auto skewX_back = skewX->reverse();
4789 auto skewY = RotateBy::create(2, 0, 45);
4790 auto skewY_back = skewY->reverse();
4791
4792 auto seq_skew = Sequence::create(skewX, skewX_back, skewY, skewY_back, nullptr);
4793 sprite->runAction(RepeatForever::create(seq_skew));
4794
4795 // Scale
4796 auto scale = ScaleBy::create(2, 2);
4797 auto scale_back = scale->reverse();
4798 auto seq_scale = Sequence::create(scale, scale_back, nullptr);
4799 sprite->runAction(RepeatForever::create(seq_scale));
4800
4801 spritebatch->addChild(sprite, 0);
4802 }
4803}

◆ ~SpriteBatchNodeOffsetAnchorRotationalSkewScale()

SpriteBatchNodeOffsetAnchorRotationalSkewScale::~SpriteBatchNodeOffsetAnchorRotationalSkewScale ( )
virtual

在文件 SpriteTest.cpp4805 行定义.

4806{
4807 auto cache = SpriteFrameCache::getInstance();
4808 cache->removeSpriteFramesFromFile("animations/grossini.plist");
4809 cache->removeSpriteFramesFromFile("animations/grossini_gray.plist");
4810}

成员函数说明

◆ CREATE_FUNC()

SpriteBatchNodeOffsetAnchorRotationalSkewScale::CREATE_FUNC ( SpriteBatchNodeOffsetAnchorRotationalSkewScale  )

◆ subtitle()

std::string SpriteBatchNodeOffsetAnchorRotationalSkewScale::subtitle ( ) const
overridevirtual

重载 TestCase .

在文件 SpriteTest.cpp4817 行定义.

4818{
4819 return "anchor + rot skew + scale";
4820}

◆ title()

std::string SpriteBatchNodeOffsetAnchorRotationalSkewScale::title ( ) const
overridevirtual

重载 TestCase .

在文件 SpriteTest.cpp4812 行定义.

4813{
4814 return "Testing SpriteBatchNode";
4815}

该类的文档由以下文件生成: