Stellarium 0.11.4
Home · All Namespaces · All Classes · Functions · Coding Style · Scripting · Plugins · File Structure

StelProjectorOrthographic Class Reference

List of all members.

Public Member Functions

 StelProjectorOrthographic (ModelViewTranformP func)
virtual QString getNameI18 () const
 Get a human-readable name for this projection type.
virtual QString getDescriptionI18 () const
 Get a human-readable short description for this projection type.
virtual float getMaxFov () const
 Get the maximum FOV apperture in degree.
bool forward (Vec3f &win) const
 Apply the transformation in the forward direction in place.
bool backward (Vec3d &v) const
 Apply the transformation in the backward projection in place.
float fovToViewScalingFactor (float fov) const
 Convert a Field Of View radius value in radians in ViewScalingFactor (used internally).
float viewScalingFactorToFov (float vsf) const
 Convert a ViewScalingFactor value (used internally) in Field Of View radius in radians.
float deltaZoom (float fov) const
 Return the small zoom increment to use at the given FOV for nice movements.

Protected Member Functions

virtual bool hasDiscontinuity () const
 Return whether the projection presents discontinuities. Used for optimization.
virtual bool intersectViewportDiscontinuityInternal (const Vec3d &, const Vec3d &) const
 Determine whether a great circle connection p1 and p2 intersects with a projection discontinuity.
virtual bool intersectViewportDiscontinuityInternal (const Vec3d &, double) const
 Determine whether a cap intersects with a projection discontinuity.

Member Function Documentation

bool StelProjectorOrthographic::backward ( Vec3d v  )  const [virtual]

Apply the transformation in the backward projection in place.

Implements StelProjector.

float StelProjectorOrthographic::deltaZoom ( float  fov  )  const [virtual]

Return the small zoom increment to use at the given FOV for nice movements.

Implements StelProjector.

bool StelProjectorOrthographic::forward ( Vec3f v  )  const [virtual]

Apply the transformation in the forward direction in place.

After transformation v[2] will always contain the length of the original v: sqrt(v[0]*v[0]+v[1]*v[1]+v[2]*v[2]) regardless of the projection type. This makes it possible to implement depth buffer testing in a way independent of the projection type. I would like to return the squared length instead of the length because of performance reasons. But then far away objects are not textured any more, perhaps because of a depth buffer overflow although the depth test is disabled?

Implements StelProjector.

float StelProjectorOrthographic::fovToViewScalingFactor ( float  fov  )  const [virtual]

Convert a Field Of View radius value in radians in ViewScalingFactor (used internally).

Implements StelProjector.

virtual QString StelProjectorOrthographic::getDescriptionI18 (  )  const [virtual]

Get a human-readable short description for this projection type.

Reimplemented from StelProjector.

virtual float StelProjectorOrthographic::getMaxFov (  )  const [inline, virtual]

Get the maximum FOV apperture in degree.

Implements StelProjector.

virtual QString StelProjectorOrthographic::getNameI18 (  )  const [virtual]

Get a human-readable name for this projection type.

Implements StelProjector.

virtual bool StelProjectorOrthographic::hasDiscontinuity (  )  const [inline, protected, virtual]

Return whether the projection presents discontinuities. Used for optimization.

Implements StelProjector.

virtual bool StelProjectorOrthographic::intersectViewportDiscontinuityInternal ( const Vec3d capN,
double  capD 
) const [inline, protected, virtual]

Determine whether a cap intersects with a projection discontinuity.

Implements StelProjector.

virtual bool StelProjectorOrthographic::intersectViewportDiscontinuityInternal ( const Vec3d p1,
const Vec3d p2 
) const [inline, protected, virtual]

Determine whether a great circle connection p1 and p2 intersects with a projection discontinuity.

For many projections without discontinuity, this should return always false, but for other like cylindrical projection it will return true if the line cuts the wrap-around line (i.e. at lon=180 if the observer look at lon=0).

Implements StelProjector.

float StelProjectorOrthographic::viewScalingFactorToFov ( float  vsf  )  const [virtual]

Convert a ViewScalingFactor value (used internally) in Field Of View radius in radians.

Implements StelProjector.

Generated on Sat Aug 25 22:13:33 2012 for Stellarium by  doxygen 1.6.3