VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
mapScaleInstance.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2019 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
6 #pragma once
7 
10 
11 #include <matrix/vlVector.h>
12 
13 #include <osg/Quat>
14 
15 namespace makVrv
16 {
17 
18  class DtDe;
19  class DtLineSegment;
20  class DtTextProxy;
21 }
22 
23 namespace makVrf
24 {
27  {
28  public:
29 
32 
34  virtual ~DtMapScaleInstance();
35 
37  virtual void getSize(int& width, int& height);
38 
39  protected:
40 
41  virtual void channelUpdated();
42 
43  virtual void destroyVisuals();
44  virtual void createVisuals();
45 
46  virtual void reloadTextFonts();
47 
49  virtual double findDistanceFromResolution(double viewResolution, makVrv::DtUnicode& label) const;
50 
54  virtual void slot_onUnitChanged(int attribute, int from, int old);
55 
57  virtual double roundToMeter(double metersDistance, makVrv::DtUnicode& label, bool changeToKm = true) const;
58 
61  virtual double roundToFeet(double metersDistance, makVrv::DtUnicode& label) const;
62 
65  virtual double roundToNauticalMiles(double metersDistance, makVrv::DtUnicode& label) const;
66 
68  virtual void setGroup(float);
69 
70  private:
71 
74 
76  DtMapScaleInstance&operator=( const DtMapScaleInstance& rhs );
77 
78  protected:
79 
82 
87 
89  };
90 
92  {
93  public:
95  virtual ~DtMapScaleInstanceCreator();
96 
98  static DtMapScaleInstanceCreator& instance(makVrv::DtDe& de);
99  static void registerInstance(makVrv::DtDe&, DtMapScaleInstanceCreator*);
100 
101  virtual DtMapInformationOverlayInstance* create();
102  };
103 }
DT_DLL_readerWriter int getSize(const DtString &val)
The number of bytes required to encode the value.
A unicode string.
Definition: DtUnicode.h:33
Definition: mapInformationOverlayInstance.h:131
A class for controlling text owned by the TextRenderer.
Definition: DtTextRenderer.h:90
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
Definition: mapScaleInstance.h:91
int myLabelTextWidth
Definition: mapScaleInstance.h:88
Will show a map scale given the overserver position and screen DPI.
Definition: mapScaleInstance.h:26
A class which represents a single line segment.
Definition: DtLineSegment.h:21
double myPreviousViewResolution
Definition: mapScaleInstance.h:81
makVrv::DtLineSegment * myRightEdge
Definition: mapScaleInstance.h:85
makVrv::DtLineSegment * myLeftEdge
Definition: mapScaleInstance.h:84
makVrv::DtTextProxy * myScaleText
Definition: mapScaleInstance.h:86
Will show a map scale given the overserver position and screen DPI.
Definition: mapInformationOverlayInstance.h:32
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
makVrv::DtLineSegment * myHorizontalLine
Definition: mapScaleInstance.h:83
bool myFirstFrame
Definition: mapScaleInstance.h:80

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)