VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtParticleSystemModelInstance.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2018 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #pragma once
11 #include <vrvOsg/vrvOsg.h>
14 #include <vrvOsg/DtOsgRibbon.h>
15 
16 #include <matrix/vlVector.h>
17 
18 #include <osg/ref_ptr>
19 #include <osg/BoundingBox>
20 #include <osg/MatrixTransform>
21 
22 namespace osg
23 {
24  class Geode;
25  class Group;
26 }
27 
28 namespace makVrv
29 {
30  class DtParticleEffect;
31 
35  {
36  public:
37 
39 
42 
44  virtual void setIntensity(float intensity);
45 
47  virtual void setScale(float scale);
48 
52  virtual void setIgnoreModelScaling(bool ignoreModelScaling);
53 
55  virtual void setDuration(double seconds);
56 
58  virtual void setWind(const DtVector& windVector, const DtVector& up);
59 
61  virtual void setMaxParticlesToEmit(int max);
62 
65  virtual bool realize(DtModelDefinition& definition);
66 
67  virtual osg::Node* buildEffectNode( DtModelDefinition &definition );
68 
70  virtual void addToConnector( DtOsgSceneConnector* connector );
71 
73  virtual bool removeFromConnector( DtOsgSceneConnector* connector );
74 
76  virtual void stop();
77 
79  virtual void start();
80 
82  virtual void pause();
83 
84  virtual void resume();
85 
87  virtual void setVisible(bool isVisible) {}
88 
89  protected:
90 
93 
94  osg::BoundingBox calculateParentExtents(osg::Node* parent);
95 
97  osg::Node* findFromCache(DtModelDefinition& definition);
98 
100  osg::Node* loadNode(const std::string& filenameParam, const std::string& resourcePathList );
101 
102  protected:
103  osg::ref_ptr<DtParticleEffect> myEffect;
104  };
105 
109  {
110  public:
111 
113  static void registerCreator(DtDe& de);
114 
117 
119  virtual DtModelInstance* create(DtDe& de);
120 
121  protected:
123  };
124 }

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)