VR-Forces 4.2 Class Documentation
bhavePdgDrawerManager.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2011 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #pragma once
7 
9 #include <kyruntime.h>
10 #include "vrvCore/DtDe.h"
11 #include <map>
12 #include "vlutil/vlFilename.h"
13 #include <deque>
14 #include "osg/Group"
15 #include "kypathdata/math/vec2f.h"
16 #include "matrix/vlVector.h"
17 #include "kypathdata/visualsystem/visualcolor.h"
18 #include "osg/MatrixTransform"
19 #include "osg/Vec3d"
20 
21 namespace BHAVE
22 {
24  {
25  public:
26  DtBhavePdgDrawerManager(makVrv::DtDe& de);
27  virtual ~DtBhavePdgDrawerManager();
28 
30  virtual void init();
31 
36  virtual void loadTerrainDatabase(const DtFilename& terrainFile, std::deque<DtString>& loadedTypes);
37 
41  virtual bool draw(const DtString& pathType);
42 
50  virtual bool undraw(const DtString& pathType, bool clearCache = true);
51 
54  virtual void setNavVisibleDistance(float distance);
55 
58  virtual float navVisibleDistance() const;
59 
62  virtual void setGraphVisibleDistance(float distance);
63 
66  virtual float graphVisibleDistance() const;
67 
70  virtual Kaim::PathData* addPathData(const std::string&);
71 
74  virtual void removePathData(Kaim::PathData*);
75 
78  virtual void triggerNavDraw(Kaim::IVisualGeometry*);
79 
82  virtual bool triggerGraphDraw(std::deque<DtVector>&, std::deque<DtVector>&, std::deque<Kaim::VisualColor>&);
83 
86  virtual const DtVector* transformVec() const;
87 
90  virtual void setTransformVec(const osg::Vec3d& point);
91 
94  virtual void resetTransformVec();
95 
96  virtual void setUsePagedDrawing(bool use);
97 
98  virtual void setDialogEnabled(bool show);
99 
100  protected:
101 
103  virtual bool initDrawing();
104 
106  virtual bool initDatabase(int typeCount);
107 
109  virtual bool switchDatabaseType(const DtString& type);
110 
112  virtual bool createDrawable(const DtString& type);
113 
115  virtual DtVector calculateTerrainPosition(const Kaim::Vec2f&) const;
116 
118  virtual void createAndAddTile(const DtString& filePath, const DtVector& center);
119 
121  virtual Kaim::VisualColor& determineColor(Kaim::VisualColor& primary1, Kaim::VisualColor& secondary1,
122  Kaim::VisualColor& primary2, Kaim::VisualColor& secondary2) const;
123 
125  makVrv::DtDe& myDe;
128  std::map<DtString, DtString> myPathDataFiles;
129  Kaim::World* myWorld;
130  Kaim::Database* myDatabase;
131  osg::ref_ptr<osg::Group> myGroup;
137 
138  private:
139  static Kaim::Engine* theEngine;
140  };
141 }

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)