PuzzleSDK
SpriteAccelerationEventTest类 参考

#include <NewEventDispatcherTest.h>

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

Public 成员函数

 CREATE_FUNC (SpriteAccelerationEventTest)
 
virtual void onEnter () override
 
virtual void onExit () override
 
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
 

额外继承的成员函数

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

详细描述

在文件 NewEventDispatcherTest.h97 行定义.

成员函数说明

◆ CREATE_FUNC()

SpriteAccelerationEventTest::CREATE_FUNC ( SpriteAccelerationEventTest  )

◆ onEnter()

void SpriteAccelerationEventTest::onEnter ( )
overridevirtual

重载 TestCase .

在文件 NewEventDispatcherTest.cpp502 行定义.

503{
504#define FIX_POS(_pos, _min, _max) \
505if (_pos < _min) \
506_pos = _min; \
507else if (_pos > _max) \
508_pos = _max; \
509
511
512 Vec2 origin = Director::getInstance()->getVisibleOrigin();
513 Size size = Director::getInstance()->getVisibleSize();
514
515 Device::setAccelerometerEnabled(true);
516
517 auto sprite = Sprite::create(s_Ball);
518 sprite->setPosition(origin + Vec2(size.width/2, size.height/2));
519 addChild(sprite);
520
521 auto listener = EventListenerAcceleration::create([=](Acceleration* acc, Event* event){
522 auto ballSize = sprite->getContentSize();
523
524 auto ptNow = sprite->getPosition();
525
526 log("acc: x = %lf, y = %lf", acc->x, acc->y);
527
528 ptNow.x += acc->x * 9.81f;
529 ptNow.y += acc->y * 9.81f;
530
531 FIX_POS(ptNow.x, (VisibleRect::left().x+ballSize.width / 2.0), (VisibleRect::right().x - ballSize.width / 2.0f));
532 FIX_POS(ptNow.y, (VisibleRect::bottom().y+ballSize.height / 2.0), (VisibleRect::top().y - ballSize.height / 2.0f));
533 sprite->setPosition(ptNow);
534 });
535
536 _eventDispatcher->addEventListenerWithSceneGraphPriority(listener, sprite);
537}
#define FIX_POS(_pos, _min, _max)
virtual void onEnter() override
Definition: BaseTest.cpp:430
static cocos2d::Vec2 top()
Definition: VisibleRect.cpp:57
static cocos2d::Vec2 bottom()
Definition: VisibleRect.cpp:63
static cocos2d::Vec2 left()
Definition: VisibleRect.cpp:45
static cocos2d::Vec2 right()
Definition: VisibleRect.cpp:51
static const char s_Ball[]
Definition: testResource.h:53

引用了 VisibleRect::bottom(), FIX_POS, VisibleRect::left(), TestCase::onEnter(), VisibleRect::right(), s_Ball , 以及 VisibleRect::top().

+ 函数调用图:

◆ onExit()

void SpriteAccelerationEventTest::onExit ( )
overridevirtual

在文件 NewEventDispatcherTest.cpp539 行定义.

540{
541 Device::setAccelerometerEnabled(false);
542 EventDispatcherTestDemo::onExit();
543}

◆ subtitle()

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

重载 TestCase .

在文件 NewEventDispatcherTest.cpp550 行定义.

551{
552 return "Please move your device\n(Only available on mobile)";
553}

◆ title()

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

重载 EventDispatcherTestDemo .

在文件 NewEventDispatcherTest.cpp545 行定义.

546{
547 return "Sprite Receives Acceleration Event";
548}

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