00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef __BILLBOARDCOMPONENT_H__
00017 #define __BILLBOARDCOMPONENT_H__
00018
00019
00020 #include "../../dependencies.h"
00021 #include "SceneComponent.h"
00022
00023
00024
00033 class BillboardComponent : public SceneComponent
00034 {
00035 public:
00036
00037
00043 BillboardComponent(Entity *parent, const dimension2df &size = dimension2df(10.0f, 10.0f),
00044 const SColor &colorTop = SColor(255, 255, 255, 255),
00045 const SColor &colorBottom = SColor(255, 255, 255, 255));
00047 ~BillboardComponent();
00048
00049
00052 IBillboardSceneNode* getBillboardSceneNode();
00053
00057 void getColor(SColor &topColor, SColor &bottomColor) const;
00059 const dimension2df& getSize() const;
00060
00069 void setColor(const SColor &overallColor);
00079 void setColor(const SColor &topColor, const SColor &bottomColor);
00088 void setSize(const dimension2df &size);
00089
00092 static bool parseXML(IXMLReader *file, Entity *entity);
00093
00094
00097 static bool parseBaseXML(IXMLReader *file, BillboardComponent *component);
00098
00099 protected:
00100
00101
00103 BillboardComponent(Entity *parent, bool isDerived);
00104
00105
00106 IBillboardSceneNode *mBillboardSN;
00107 };
00108
00109 #endif