Isis 3 Developer Reference
Hillshade.h
Go to the documentation of this file.
1 #ifndef Hillshade_H
2 #define Hillshade_H
3 
4 class QDebug;
5 class QString;
6 
7 namespace Isis {
8  class Angle;
9  class Buffer;
10 
31  class Hillshade {
32  public:
33  Hillshade();
35  Hillshade(const Hillshade &other);
36  ~Hillshade();
37 
38  void setAzimuth(Angle azimuth);
39  void setZenith(Angle zenith);
40  void setResolution(double resolution);
41 
42  Angle azimuth() const;
43  Angle zenith() const;
44  double resolution() const;
45 
46  double shadedValue(Buffer &input) const;
47 
48  void swap(Hillshade &other);
49  Hillshade &operator=(const Hillshade &rhs);
50 
51  QString toString() const;
52 
53  private:
55  Angle *m_azimuth;
57  Angle *m_zenith;
59  double m_pixelResolution;
60  };
61 
62  QDebug operator<<(QDebug, const Hillshade &hillshade);
63 }
64 
65 #endif
Buffer for reading and writing cube data.
Definition: Buffer.h:69
double shadedValue(Buffer &input) const
Calculate the shaded value from a 3x3x1 window.
Definition: Hillshade.cpp:157
void setAzimuth(Angle azimuth)
The azimuth is the direction of the light.
Definition: Hillshade.cpp:76
Hillshade & operator=(const Hillshade &rhs)
Assignment operator.
Definition: Hillshade.cpp:298
Angle azimuth() const
Get the current azimuth angle.
Definition: Hillshade.cpp:119
~Hillshade()
Definition: Hillshade.cpp:59
void setZenith(Angle zenith)
The zenith is the altitude/solar elevation of the light.
Definition: Hillshade.cpp:93
Hillshade()
Create a default-constructed Hillshade.
Definition: Hillshade.cpp:18
Calculate light intensity reflected off a local slope of DEM.
Definition: Hillshade.h:31
void setResolution(double resolution)
The resolution is the meters per pixel of the input to shadedValue().
Definition: Hillshade.cpp:109
QString toString() const
Defines an angle and provides unit conversions.
Definition: Angle.h:62
void swap(Hillshade &other)
Swap class data with other; this cannot throw an exception.
Definition: Hillshade.cpp:288
double resolution() const
Get the current resolution (meters per pixel).
Definition: Hillshade.cpp:149
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
QDebug operator<<(QDebug debug, const Hillshade &hillshade)
Print this class out to a QDebug object.
Definition: Hillshade.cpp:308
Angle zenith() const
Get the current zenith angle.
Definition: Hillshade.cpp:134