![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtOsgParticleSystemModel.h,v $ $Revision: 1.17 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #ifndef DtOsgParticleSystemModel_H_ 00014 #define DtOsgParticleSystemModel_H_ 00015 00016 #include <vrvOsg/vrvOsg.h> 00017 #include <vrvCore/DtParticleSystemModel.h> 00018 #include <osg/Group> 00019 #include <matrix/vlVector.h> 00020 00021 namespace makVrv 00022 { 00023 class DtOsgSceneConnector; 00024 class DtParticleSystemModelInstance; 00025 00028 class DT_DLL_VRVOSG DtOsgParticleSystemModel : public DtParticleSystemModel 00029 { 00030 public: 00031 00033 DtOsgParticleSystemModel(DtDe& de, DtUniqueID id); 00034 00036 virtual ~DtOsgParticleSystemModel(); 00037 00039 virtual void setModelDefinition( const std::string& str ); 00040 00043 virtual std::string className() const; 00044 00046 virtual void setIntensity(float intensity); 00047 00049 virtual void setScale(float scale); 00050 00052 virtual void setDuration(double seconds); 00053 00054 virtual void setPosition(int vtx, const DtVector& position); 00055 00056 virtual void setOrientation(int vtx, const DtTaitBryan& orientation); 00057 00059 virtual void setWindDirection(const DtVector& direction); 00060 00062 virtual void stop(); 00063 00065 virtual void start(); 00066 00068 virtual void pause(); 00069 00070 virtual void resume(); 00071 00073 virtual void setVisible(bool isVisible); 00074 00076 virtual void setSolid(bool solid); 00077 00078 protected: 00079 00080 virtual void addToScene(const DtUniqueID& id, int modelSet, 00081 int visualizerType); 00082 00083 virtual void removeFromScene(); 00084 00085 protected: 00086 DtOsgSceneConnector* mySceneConnector; 00087 double myIntensity; 00088 bool myIntensitySet; 00089 double myScale; 00090 bool myScaleSet; 00091 double myDuration; 00092 bool myDurationSet; 00093 }; 00094 } 00095 00096 #endif 00097