PuzzleSDK
SpriteSlice9Test6类 参考

#include <SpriteTest.h>

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

Public 成员函数

 CREATE_FUNC (SpriteSlice9Test6)
 
 SpriteSlice9Test6 ()
 
virtual std::string title () const override
 
virtual std::string subtitle () const override
 
virtual void update (float dt) 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
 

Private 属性

cocos2d::Sprite * _sprites [3]
 
float _elapsed
 

额外继承的成员函数

- 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.h857 行定义.

构造及析构函数说明

◆ SpriteSlice9Test6()

SpriteSlice9Test6::SpriteSlice9Test6 ( )

在文件 SpriteTest.cpp5446 行定义.

5447{
5448 Size s = Director::getInstance()->getVisibleSize();
5449
5450 SpriteFrameCache::getInstance()->addSpriteFramesWithFile("animations/grossini_family.plist");
5451 SpriteFrameCache::getInstance()->addSpriteFramesWithFile("animations/grossini.plist");
5452
5453
5454 //Create reference sprite that's rotating based on there anchor point
5455 auto s1 = Sprite::create("Images/grossinis_heads.png");
5456 addChild(s1);
5457 s1->getTexture()->setAliasTexParameters();
5458 s1->setTextureRect(CC_RECT_PIXELS_TO_POINTS(Rect(0,0,64,128)));
5459 s1->setPosition(s.width/2-s.width/3, s.height/2);
5460 s1->setAnchorPoint(Vec2::ANCHOR_MIDDLE);
5461 s1->setContentSize(Size(s.width/3, s.height));
5462 s1->setCenterRectNormalized(Rect(0,0,1,1));
5463 _sprites[0] = s1;
5464
5465 //Create reference sprite that's rotating based on there anchor point
5466 auto s2 = Sprite::create("Images/grossinis_heads.png");
5467 addChild(s2);
5468 s2->setTextureRect(CC_RECT_PIXELS_TO_POINTS(Rect(64,0,64,128)));
5469 s2->setPosition(s.width*2/4, s.height/2);
5470 s2->setAnchorPoint(Vec2::ANCHOR_MIDDLE);
5471 s2->setContentSize(Size(s.width/3, s.height));
5472 s2->setCenterRectNormalized(Rect(0,0,1,1));
5473 _sprites[1] = s2;
5474
5475 //Create reference sprite that's rotating based on there anchor point
5476 auto s3 = Sprite::create("Images/grossinis_heads.png");
5477 addChild(s3);
5478 s3->setTextureRect(CC_RECT_PIXELS_TO_POINTS(Rect(128,0,64,128)));
5479 s3->setPosition(s.width/2+s.width/3, s.height/2);
5480 s3->setAnchorPoint(Vec2::ANCHOR_MIDDLE);
5481 s3->setContentSize(Size(s.width/3, s.height));
5482 s3->setCenterRectNormalized(Rect(0,0,1,1));
5483 _sprites[2] = s3;
5484
5485 scheduleUpdate();
5486
5487 _elapsed = 0;
5488}
cocos2d::Sprite * _sprites[3]
Definition: SpriteTest.h:868

引用了 _elapsed , 以及 _sprites.

成员函数说明

◆ CREATE_FUNC()

SpriteSlice9Test6::CREATE_FUNC ( SpriteSlice9Test6  )

◆ subtitle()

virtual std::string SpriteSlice9Test6::subtitle ( ) const
inlineoverridevirtual

重载 TestCase .

在文件 SpriteTest.h863 行定义.

863{ return "Changing setCenterRect in runtime #2"; }

◆ title()

virtual std::string SpriteSlice9Test6::title ( ) const
inlineoverridevirtual

重载 TestCase .

在文件 SpriteTest.h862 行定义.

862{ return "Slice 9 Test #6"; };

◆ update()

void SpriteSlice9Test6::update ( float  dt)
overridevirtual

在文件 SpriteTest.cpp5490 行定义.

5491{
5492 _elapsed += dt;
5493
5494 float angle = _elapsed;
5495
5496 // cap the value between 0 and 1
5497 float x = ((cos(angle*2) - sin(angle/2)) + 2) / 4;
5498 float y1 = (sin(angle) + 1) / 2;
5499 float y2 = (sin(angle+M_PI_2) + 1) / 2;
5500 float y = y1;
5501 for (int i=0; i<3; ++i) {
5502 if (i==1) {
5503 x = 1 - x;
5504 y = y2;
5505 } else if (i==2) {
5506 y = 1 - y;
5507 }
5508
5509 Rect rect((1-x)/2, (1-y)/2, x, y);
5510 _sprites[i]->setCenterRectNormalized(rect);
5511 }
5512}

引用了 _elapsed , 以及 _sprites.

类成员变量说明

◆ _elapsed

float SpriteSlice9Test6::_elapsed
private

在文件 SpriteTest.h869 行定义.

被这些函数引用 SpriteSlice9Test6() , 以及 update().

◆ _sprites

cocos2d::Sprite* SpriteSlice9Test6::_sprites[3]
private

在文件 SpriteTest.h868 行定义.

被这些函数引用 SpriteSlice9Test6() , 以及 update().


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