This class performs refraction computations, following literature from atmospheric optics and astronomy.
More...
|
void | forward (Vec3d &altAzPos) const override |
| Apply refraction. More...
|
|
void | backward (Vec3d &altAzPos) const override |
| Remove refraction from position ("reduce"). More...
|
|
void | forward (Vec3f &altAzPos) const override |
| Apply refraction. More...
|
|
void | backward (Vec3f &altAzPos) const override |
| Remove refraction from position ("reduce"). More...
|
|
void | combine (const Mat4d &m) override |
|
Mat4d | getApproximateLinearTransfo () const override |
|
QByteArray | getForwardTransformShader () const override |
|
void | setForwardTransformUniforms (QOpenGLShaderProgram &program) const override |
|
QByteArray | getBackwardTransformShader () const override |
|
void | setBackwardTransformUniforms (QOpenGLShaderProgram &program) const override |
|
StelProjector::ModelViewTranformP | clone () const override |
|
void | setPressure (float p_mbar) |
| Set surface air pressure (mbars), influences refraction computation.
|
|
float | getPressure () const |
|
void | setTemperature (float t_C) |
| Set surface air temperature (degrees Celsius), influences refraction computation.
|
|
float | getTemperature () const |
|
void | setPreTransfoMat (const Mat4d &m) |
| Set the transformation matrices used to transform input vector to AltAz frame.
|
|
void | setPostTransfoMat (const Mat4d &m) |
|
This class performs refraction computations, following literature from atmospheric optics and astronomy.
Refraction solutions can only be approximate, given the turbulent, unpredictable real atmosphere. Typical horizons do not go down below -1, so strange effects (distortion) between -2 and -5 should be covered. Note that forward/backward are no absolute reverse operations! All the computations should be in effect (1) only if atmosphere effects are true (2) only for celestial objects, never for landscape images (3) only for terrestrial locations, not on Moon/Mars/Saturn etc