VR-Forces 4.1 Class Documentation
tmViewportExtents.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2000 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: tmViewportExtents.h,v $ $Revision: 1.34 $ $State: Exp $
7 *******************************************************************************/
8 
11 
12 #ifndef TMVIEWPORTEXTENTS_H
13 #define TMVIEWPORTEXTENTS_H
14 
17 
18 //This class contains a DtViewportExtents and a wrapper for all its useful functions.
19 //The reason for this to be this way is so that TMViewportExtents can be a QObject
20 //and thus have signals and slots
21 #include "tmqt/tmqtDefines.h"
23 {
24  Q_OBJECT
25 
26 public:
27 
29 
31 
32  virtual ~DtTMViewportExtents();
33 
34  DtTMViewportExtents& operator=(const DtTMViewportExtents& rhs);
35 
37  virtual void zoom(const DtPoint& center, const double& mag, bool redraw = true);
38  virtual void resize(const DtExtent& e, bool redraw = true);
39 
41  virtual void recenter(const DtPoint& center, bool redraw = true, bool clipToGlobal = true);
42 
44  virtual const DtExtent& globalExtent() const;
45  virtual void setGlobalExtent(const DtExtent& e);
46  virtual const double& globalAspectRatio() const;
47 
48  virtual const DtExtent& localExtent() const;
49  virtual void setLocalExtent(const DtExtent& e, bool redraw = true);
50  virtual const double& localAspectRatio() const;
51 
52  virtual const DtDisplaySize windowSize() const;
53  virtual void setWindowSize(const DtDisplaySize& s, bool redraw = true);
54  virtual const double& windowAspectRatio() const;
55 
58  virtual void changeWindowSize(const DtDisplaySize& s, bool redraw = true, bool resetExtents = true);
59 
64  virtual void resizeToGlobalView(const DtDisplaySize& s, bool redraw = true);
65 
67  virtual void windowFromDatabase(
68  DtDisplayPoint& xp,
69  const DtPoint& gd,
70  bool smartRound = false) const;
71 
73  virtual void databaseFromWindow(
74  DtPoint& gd,
75  const DtDisplayPoint& xp) const;
76 
78  virtual void databaseFromWindow(
79  DtPoint& gd,
80  const double& x,
81  const double& y) const;
82 
85  virtual double getDisplayExtentsRatioX() const;
88  virtual double getDisplayExtentsRatioY() const;
89 
91 
92  virtual const double& panStep() const;
93  virtual const double& minPanStep() const;
94  virtual const double& maxPanStep() const;
95  virtual const double& zoomStep() const;
96  virtual const double& minZoomStep() const;
97 
98  virtual const double& maxZoomStep() const;
99 
104  virtual const double& uMin() const;
105  virtual void setUMin(const double& min);
106 
107  virtual const double& uMax() const;
108  virtual void setUMax(const double& max);
109 
110  virtual const double& vMin() const;
111  virtual void setVMin(const double& min);
112 
113  virtual const double& vMax() const;
114  virtual void setVMax(const double& max);
115 
116  virtual double minimumViewWidth() const;
117  virtual double minimumViewHeight() const;
118 
119  virtual const DtViewportExtents& viewportExtents() const
120  {return myViewportExtents;}
121 
124  virtual void clearExtents(bool signal = false);
125 
126  virtual void setKeepAspectRatios(bool b);
127 
130  virtual void read(QTextStream& s);
131 
134  virtual void zoomLevel(double& magX, double& magY) const;
135 
139  virtual void zoomFromGlobal(const DtPoint& center, const double& magX,
140  const double& magY, bool redraw = true);
141 
144  virtual void setFromCorners(const DtPoint& nw, const DtPoint& se,
145  bool redraw = true);
146 
148  virtual bool isValidWindowDisplayPointFromDatabase(DtPoint gd) const;
149 
151  virtual DtPoint center() const;
152 
153 public:
154 
156  static DtTMViewportExtents* create();
157 
158 signals:
159  void viewportExtentsChanged(const DtTMViewportExtents* v);
160 
161 public slots:
162 
163  virtual void resetToGlobalView(bool redraw = true);
164  virtual void zoomIn(bool redraw = true);
165  virtual void zoomOut(bool redraw = true);
166  virtual void panNorthwest(bool redraw = true);
167  virtual void panNorth(bool redraw = true);
168  virtual void panNortheast(bool redraw = true);
169  virtual void panEast(bool redraw = true);
170  virtual void panSoutheast(bool redraw = true);
171  virtual void panSouth(bool redraw = true);
172  virtual void panSouthwest(bool redraw = true);
173  virtual void panWest(bool redraw = true);
174  virtual void setPanStep(const double& step);
175  virtual void setMinPanStep(const double& step);
176  virtual void setMaxPanStep(const double& step);
177  virtual void setZoomStep(const double& step);
178  virtual void setMinZoomStep(const double& step);
179  virtual void setMaxZoomStep(const double& step);
180 
181 protected:
183 
185  double myZoomStep;
186  double myPanStep;
187 };
188 
189 #endif //TMVIEWPORTEXTENTS_H

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)