VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOsgEarthProfileLogic.h
Go to the documentation of this file.
1 /*****************************************************************************
2 * Copyright (c) 2016 MAK Technologies, Inc.
3 * All rights reserved.
4 *****************************************************************************/
5 
9 #pragma once
10 
12 
15 
16 // Class Forward Declarations
17 namespace osgEarth
18 {
19  class MapNode;
20  class Layer;
21  class Extension;
22  namespace Splat
23  {
24  class GroundCover;
25  class GroundCoverLayer;
26  }
27 }
28 
29 namespace makVrv
30 {
31  // Class Forward Declarations
32  class DtOsgEarthProfileInterface;
33 
37  {
38  public:
40 
42  virtual ~DtOsgEarthProfileLogic();
43 
45  boost::signal<void()> singal_afterPopulateAllLayers;
46 
47  private:
48 
53 
54  protected:
55 
59 
61  virtual void connectSignals();
62 
64  virtual void disconnectSignals();
65 
66 
68  {
70  TerrainLayerOffset =0,
71  BuildingLayerOffset =100,
72  GroundCoverLayerOffset = 200,
73  GroundCoverOffset = 300
74  };
75 
77  //| Methods connected to Qt Widget signals
78  virtual void slot_selectOsgEarthChanged(const std::string& file);
79  virtual void slot_selectLayerTreeChanged(int parentID,int layerType, int layerID);
80  virtual void slot_layerVisibilityCheckBoxValueChanged(int layerType, int layerID, int checked);
81  virtual void slot_layerOpacitySpinBoxValueChanged(int layerType, int layerID, double value);
82  virtual void slot_lightingEnabledCheckBox_valueChanged(int layerType, int layerID, int checked);
83  virtual void slot_groundCoverVisibilityChanged(int parentID,int layerID, int checked);
84  virtual void slot_groundCoverDensityChanged(int parentID, int layerID, double value);
85  virtual void slot_groundCoverFillChanged(int parentID, int layerID, double value);
86  virtual void slot_groundCoverWindChanged(int parentID, int layerID, double value);
87  virtual void slot_groundCoverBrightnessChanged(int parentID, int layerID, double value);
88  virtual void slot_groundCoverContrastChanged(int parentID, int layerID, double value);
90 
92  virtual void populateLayers();
93 
97  virtual void setBuildingExtensionVisible(osgEarth::Extension* extension,bool visible);
98 
101  virtual bool isBuildingExtensionVisible(osgEarth::Extension* extension);
102 
104  virtual void populateGroundCovers(osgEarth::Splat::GroundCoverLayer* groundCoverLayer , int parentID);
105 
109  virtual void changeGroundCoverVisibility(osgEarth::Splat::GroundCover* groundCover,
110  float maxDistance, bool visible);
111 
114  virtual void changeGroundCoverDensity(osgEarth::Splat::GroundCover* groundCover, double density);
115 
118  virtual void changeGroundCoverFill(osgEarth::Splat::GroundCover* groundCover, double fill);
119 
122  virtual void changeGroundCoverWind(osgEarth::Splat::GroundCover* groundCover, double wind);
123 
126  virtual void changeGroundCoverBrightness(osgEarth::Splat::GroundCover* groundCover, double brightness);
127 
130  virtual void changeGroundCoverContrast(osgEarth::Splat::GroundCover* groundCover, double contrast);
131 
132  protected:
133  typedef std::vector<osgEarth::Splat::GroundCoverLayer*> GroundCoverLayersVector;
134  typedef std::vector<osgEarth::Splat::GroundCover*> GroundCoversVector;
137  osgEarth::MapNode* myMapNode;
140  std::vector<osgEarth::Extension*> myOsgEarthExtensions;
143  };
144 
148  : public DtVirtualBaseClass
149  {
150  public:
151 
152  // Get the creator instance for this DE object. Creates instance if none found
153  static DtOsgEarthProfileLogicCreator& instance(DtDe& de);
154 
155  static void registerInstance(DtDe& de, DtOsgEarthProfileLogicCreator* creator);
156 
157  //Create the widget's logic.
158  static DtOsgEarthProfileLogic* create(DtDe& de, DtOsgEarthProfileInterface* iface);
159  };
160 }

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)