|
virtual | ~StelProjector () |
| Destructor.
|
|
virtual QString | getNameI18 () const =0 |
| Get a human-readable name for this projection type.
|
|
virtual QString | getDescriptionI18 () const |
| Get a human-readable short description for this projection type.
|
|
QString | getHtmlSummary () const |
| Get a HTML version of the short description for this projection type.
|
|
virtual float | getMaxFov () const =0 |
| Get the maximum FOV aperture in degree.
|
|
virtual bool | forward (Vec3f &v) const =0 |
| Apply the transformation in the forward direction in place. More...
|
|
virtual bool | backward (Vec3d &v) const =0 |
| Apply the transformation in the backward projection in place.
|
|
virtual float | deltaZoom (float fov) const |
| Return the small zoom increment to use at the given FOV for nice movements.
|
|
virtual QByteArray | getForwardTransformShader () const =0 |
| Returns GLSL code that can be used in a shader to implement forward transformation.
|
|
virtual void | setForwardTransformUniforms (QOpenGLShaderProgram &program) const |
| Sets the necessary uniforms so that the shader returned by getForwardTransformShader can work.
|
|
virtual QByteArray | getBackwardTransformShader () const =0 |
| Returns GLSL code that can be used in a shader to implement backward transformation.
|
|
virtual void | setBackwardTransformUniforms (QOpenGLShaderProgram &program) const |
| Sets the necessary uniforms so that the shader returned by getBackwardTransformShader can work.
|
|
bool | intersectViewportDiscontinuity (const Vec3d &p1, const Vec3d &p2) const |
| Determine whether a great circle connection p1 and p2 intersects with a projection discontinuity. More...
|
|
bool | intersectViewportDiscontinuity (const SphericalCap &cap) const |
|
virtual float | fovToViewScalingFactor (float fov) const |
| Convert a Field Of View radius value in radians in ViewScalingFactor (used internally)
|
|
virtual float | viewScalingFactorToFov (float vsf) const |
| Convert a ViewScalingFactor value (used internally) in Field Of View radius in radians.
|
|
bool | getFlagGravityLabels () const |
| Get the current state of the flag which decides whether to arrage labels so that they are aligned with the bottom of a 2d screen, or a 3d dome.
|
|
const Vec4i & | getViewport () const |
| Get the lower left corner of the viewport and the width, height.
|
|
Vector2< qreal > | getViewportCenter () const |
| Get the center of the viewport relative to the lower left corner of the screen.
|
|
Vector2< qreal > | getViewportCenterOffset () const |
|
int | getViewportPosX () const |
| Get the horizontal viewport offset in pixels.
|
|
int | getViewportPosY () const |
| Get the vertical viewport offset in pixels.
|
|
int | getViewportWidth () const |
| Get the viewport width in pixels.
|
|
int | getViewportHeight () const |
| Get the viewport height in pixels.
|
|
qreal | getDevicePixelsPerPixel () const |
| Get the number of device pixels per "Device Independent Pixels" (value is usually 1, but 2 for mac retina screens).
|
|
SphericalRegionP | getViewportConvexPolygon (float marginX=0., float marginY=0.) const |
| Return a convex polygon on the sphere which includes the viewport in the current frame. More...
|
|
const SphericalCap & | getBoundingCap () const |
| Return a SphericalCap containing the whole viewport.
|
|
float | getPixelPerRadAtCenter () const |
| Get size of a radian in pixels at the center of the viewport disk.
|
|
float | getFov () const |
| Get the current FOV diameter in degrees.
|
|
bool | needGlFrontFaceCW () const |
| Get whether front faces need to be oriented in the clockwise direction.
|
|
bool | checkInViewport (const Vec3d &pos) const |
| Check to see if a 2d position is inside the viewport. More...
|
|
bool | checkInViewport (const Vec3f &pos) const |
| Check to see if a 2d position is inside the viewport. More...
|
|
Vec3d | viewPortIntersect (const Vec3d &p1, const Vec3d &p2) const |
| Return the position where the 2 2D point p1 and p2 cross the viewport edge P1 must be inside the viewport and P2 outside (check with checkInViewport() before calling this method)
|
|
bool | project (const Vec3d &v, Vec3d &win) const |
| Project the vector v from the current frame into the viewport. More...
|
|
bool | project (const Vec3f &v, Vec3f &win) const |
| Project the vector v from the current frame into the viewport. More...
|
|
bool | project (const Vec3d &v, Vec3f &win) const |
| Project the vector v from the current frame into the viewport. More...
|
|
virtual void | project (int n, const Vec3d *in, Vec3f *out) |
|
virtual void | project (int n, const Vec3f *in, Vec3f *out) |
|
bool | projectInPlace (Vec3d &vd) const |
| Project the vector v from the current frame into the viewport. More...
|
|
bool | projectInPlace (Vec3f &v) const |
| Project the vector v from the current frame into the viewport. More...
|
|
bool | projectCheck (const Vec3d &v, Vec3d &win) const |
| Project the vector v from the current frame into the viewport. More...
|
|
bool | projectCheck (const Vec3f &v, Vec3f &win) const |
| Project the vector v from the current frame into the viewport. More...
|
|
bool | unProject (const Vec3d &win, Vec3d &v) const |
| Project the vector v from the viewport frame into the current frame. More...
|
|
bool | unProject (double x, double y, Vec3d &v) const |
|
bool | projectLineCheck (const Vec3d &v1, Vec3d &win1, const Vec3d &v2, Vec3d &win2) const |
| Project the vectors v1 and v2 from the current frame into the viewport. More...
|
|
QByteArray | getProjectShader () const |
|
void | setProjectUniforms (QOpenGLShaderProgram &program) const |
|
QByteArray | getUnProjectShader () const |
|
void | setUnProjectUniforms (QOpenGLShaderProgram &program) const |
|
ModelViewTranformP | getModelViewTransform () const |
| Get the current model view matrix.
|
|
Mat4f | getProjectionMatrix () const |
| Get the current projection matrix.
|
|
StelProjectorMaskType | getMaskType (void) const |
| Get the current type of the mask if any.
|
|
bool | isSameProjection (const StelProjector &other) const |
| Check whether the projection represented by other is the same as this. More...
|
|
Provide the main interface to all operations of projecting coordinates from sky to screen. The StelProjector also defines the viewport size and position. All positions in pixels are in real device pixels, which is not the same as device independent pixels. On a mac with retina screen, there are 2 device pixels per pixels. All methods from this class are threadsafe. The usual usage is to create local instances of StelProjectorP using the getProjection() method from StelCore where needed. For performing drawing using a particular projection, refer to the StelPainter class.
- See also
- StelProjectorP