PuzzleSDK
Issue704类 参考

#include <ParticleTest.h>

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

Public 成员函数

 CREATE_FUNC (Issue704)
 
virtual void onEnter () override
 
virtual std::string title () const override
 
virtual std::string subtitle () const override
 
- Public 成员函数 继承自 ParticleDemo
 ~ParticleDemo ()
 
void toggleCallback (cocos2d::Ref *sender)
 
void onTouchesBegan (const std::vector< cocos2d::Touch * > &touches, cocos2d::Event *event)
 
void onTouchesMoved (const std::vector< cocos2d::Touch * > &touches, cocos2d::Event *event)
 
void onTouchesEnded (const std::vector< cocos2d::Touch * > &touches, cocos2d::Event *event)
 
virtual void update (float dt) override
 
void setEmitterPosition ()
 
- 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 属性 继承自 ParticleDemo
cocos2d::ParticleSystemQuad * _emitter
 
cocos2d::Sprite * _background
 
cocos2d::LayerColor * _color
 
- Protected 属性 继承自 TestCase
cocos2d::MenuItemImage * _priorTestItem
 
cocos2d::MenuItemImage * _restartTestItem
 
cocos2d::MenuItemImage * _nextTestItem
 
cocos2d::Label * _titleLabel
 
cocos2d::Label * _subtitleLabel
 

详细描述

在文件 ParticleTest.h230 行定义.

成员函数说明

◆ CREATE_FUNC()

Issue704::CREATE_FUNC ( Issue704  )

◆ onEnter()

void Issue704::onEnter ( )
overridevirtual

重载 ParticleDemo .

在文件 ParticleTest.cpp857 行定义.

858{
860
861 _color->setColor(Color3B::BLACK);
862 removeChild(_background, true);
863 _background = nullptr;
864
865 _emitter = ParticleSystemQuad::createWithTotalParticles(100);
866 _emitter->retain();
867 addChild(_emitter, 10);
868 _emitter->setTexture(Director::getInstance()->getTextureCache()->addImage("Images/fire.png"));
869
870 // duration
871 _emitter->setDuration(ParticleSystem::DURATION_INFINITY);
872
873 // radius mode
874 _emitter->setEmitterMode(ParticleSystem::Mode::RADIUS);
875
876 // radius mode: start and end radius in pixels
877 _emitter->setStartRadius(50);
878 _emitter->setStartRadiusVar(0);
879 _emitter->setEndRadius(ParticleSystem::START_RADIUS_EQUAL_TO_END_RADIUS);
880 _emitter->setEndRadiusVar(0);
881
882 // radius mode: degrees per second
883 _emitter->setRotatePerSecond(0);
884 _emitter->setRotatePerSecondVar(0);
885
886
887 // angle
888 _emitter->setAngle(90);
889 _emitter->setAngleVar(0);
890
891 // emitter position
892 auto size = Director::getInstance()->getWinSize();
893 _emitter->setPosition(Vec2(size.width/2, size.height/2));
894 _emitter->setPosVar(Vec2::ZERO);
895
896 // life of particles
897 _emitter->setLife(5);
898 _emitter->setLifeVar(0);
899
900 // spin of particles
901 _emitter->setStartSpin(0);
902 _emitter->setStartSpinVar(0);
903 _emitter->setEndSpin(0);
904 _emitter->setEndSpinVar(0);
905
906 // color of particles
907 Color4F startColor(0.5f, 0.5f, 0.5f, 1.0f);
908 _emitter->setStartColor(startColor);
909
910 Color4F startColorVar(0.5f, 0.5f, 0.5f, 1.0f);
911 _emitter->setStartColorVar(startColorVar);
912
913 Color4F endColor(0.1f, 0.1f, 0.1f, 0.2f);
914 _emitter->setEndColor(endColor);
915
916 Color4F endColorVar(0.1f, 0.1f, 0.1f, 0.2f);
917 _emitter->setEndColorVar(endColorVar);
918
919 // size, in pixels
920 _emitter->setStartSize(16);
921 _emitter->setStartSizeVar(0);
922 _emitter->setEndSize(ParticleSystem::START_SIZE_EQUAL_TO_END_SIZE);
923
924 // emits per second
925 _emitter->setEmissionRate(_emitter->getTotalParticles() / _emitter->getLife());
926
927 // additive
928 _emitter->setBlendAdditive(false);
929
930 auto rot = RotateBy::create(16, 360);
931 _emitter->runAction(RepeatForever::create(rot));
932}
cocos2d::Sprite * _background
Definition: ParticleTest.h:36
virtual void onEnter() override
cocos2d::ParticleSystemQuad * _emitter
Definition: ParticleTest.h:35
cocos2d::LayerColor * _color
Definition: ParticleTest.h:37

引用了 ParticleDemo::_background, ParticleDemo::_color, ParticleDemo::_emitter , 以及 ParticleDemo::onEnter().

+ 函数调用图:

◆ subtitle()

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

重载 ParticleDemo .

在文件 ParticleTest.cpp939 行定义.

940{
941 return "Emitted particles should not rotate";
942}

◆ title()

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

重载 ParticleDemo .

在文件 ParticleTest.cpp934 行定义.

935{
936 return "Issue 704. Free + Rot";
937}

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