VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtGridLinesDrawer.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2010 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 /*****************************************************************************
6  * $RCSfile: DtGridLinesDrawer.h,v $ $Revision: 1.17 $ $State: Exp $
7  *****************************************************************************/
8 
12 
13 #pragma once
14 
15 #include <vrvOsg/vrvOsg.h>
16 
19 
20 #include <vrvGraphics/DtFont.h>
22 
23 #include <osg/Matrix>
24 
25 namespace makVrv
26 {
27 
28  class DtDe;
29  class DtOsgChannel;
30  class DtOverlayRenderer;
31 
36  : public DtGridLinesParameters
37  {
38  public:
39 
41  DtGridLinesDrawer( DtDe& de );
42 
44  virtual ~DtGridLinesDrawer();
45 
47  virtual void setChannel( DtOsgChannel* channel );
48 
50  virtual void setChannelDimensions( int startChannelX, int startChannelY,
51  int endChannelX, int endChannelY );
52 
54  virtual void setupOverlay();
55 
57  virtual void setupFont();
58 
61  virtual double lookupClosestLatLonSpacing( double minimumSpacingRadians );
62 
65  virtual double lookupClosestCartesianSpacing( double minimumSpacing );
66 
69  void setPixelRatio(float pixelRatio);
70 
71  protected:
73  virtual void reloadTextFonts() = 0;
74 
76  static bool clip( double xMin, double xMax, double yMin, double yMax,
77  double x0src, double y0src, double x1src, double y1src,
78  double &x0clip, double &y0clip, double &x1clip, double &y1clip);
79 
80  private:
81 
83  DtGridLinesDrawer( const DtGridLinesDrawer& orig );
84 
86  DtGridLinesDrawer& operator = ( const DtGridLinesDrawer& rhs );
87 
88  protected:
89 
92  osg::Matrix myWorldToWindowMatrix;
93 
98 
102 
103  std::vector<double> myLatLonAllowableSpacings;
104  std::vector<double> myCartesianAllowableSpacings;
105 
106  };
107 
108 }
Contains the DtGridLinesParameters class declaration.
float myPixelRatio
Definition: DtGridLinesDrawer.h:101
DtOverlayRenderer * myOverlayRenderer
Definition: DtGridLinesDrawer.h:99
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
DtFontSP myFont
Definition: DtGridLinesDrawer.h:100
int myStartChannelX
Definition: DtGridLinesDrawer.h:94
int myStartChannelY
Definition: DtGridLinesDrawer.h:95
int myEndChannelY
Definition: DtGridLinesDrawer.h:97
This class provides the OSG-specific implementation of a DtChannel.
Definition: DtOsgChannel.h:75
Contains makVrv::DtFontManager class.
DtOsgChannel * myChannel
Definition: DtGridLinesDrawer.h:91
osg::Matrix myWorldToWindowMatrix
Definition: DtGridLinesDrawer.h:92
std::vector< double > myLatLonAllowableSpacings
Definition: DtGridLinesDrawer.h:103
std::vector< double > myCartesianAllowableSpacings
Definition: DtGridLinesDrawer.h:104
Contains the DtGridLinesSettingsRecord class declaration.
boost::shared_ptr< DtFont > DtFontSP
Definition: DtFontManager.h:20
int myEndChannelX
Definition: DtGridLinesDrawer.h:96
Contains makVrv::DtFont class.
Base class with common data / methods for drawing grid lines on projected and geocentric databases \i...
Definition: DtGridLinesDrawer.h:35
Contains DLL export macros.
Interface for DtGridLinesParameters, a container class for holding all the dialog and model definitio...
Definition: DtGridLinesParameters.h:25
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
DtDe & myDe
Definition: DtGridLinesDrawer.h:90
The DtOverlayRenderer implements the overlay concept.
Definition: DtOverlayRenderer.h:23

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)