Stellarium 0.12.1
List of all members | Public Member Functions | Public Attributes
SphericalRegion::DrawParams Struct Reference

Parameters specifying how to draw a SphericalRegion. More...

#include <StelSphereGeometry.hpp>

Public Member Functions

 DrawParams (class StelProjector *projector)
 Construct DrawParams with default parameters and specified projector. More...
 
bool operator!= (const DrawParams &rhs) const
 Only used to determine whether to update cached vertex buffers. More...
 
DrawParamsclippingCap (const SphericalCap *clippingCap)
 If not NULL, used to clip the part of the region outside the cap. More...
 
DrawParamsdoNotSubdivide ()
 Do not subdivide the region to follow projection distortions. More...
 
DrawParamsmaxSqDistortion (const double maxSqDistortion)
 Specify maximum distortion - we try to subdivide to be withil this limit. More...
 

Public Attributes

class StelProjectorprojector_
 Projector to use when drawing. More...
 
const SphericalCapclippingCap_
 If specified, clips the part of the region outside of cap. More...
 
bool subdivide_
 Subdivide triangles? More...
 
double maxSqDistortion_
 Maximum distortion. More...
 

Detailed Description

Parameters specifying how to draw a SphericalRegion.

Passed to e.g. drawFill().

Also used to remember previously used draw parameters, which enables vertex buffer caching.

This is a builder-style struct. Parameters can be specified like this:

// Default parameters. Projector is mandatory, so it is specified in the constructor.
SphericalRegion::DrawParams a(someProjectorPointer);
// Do not subdivide the region into smaller triangles.
// Do not subdivide and clip the part of the region outside of specified cap.
.clippingCap(someSphericalCapPointer);

Definition at line 169 of file StelSphereGeometry.hpp.

Constructor & Destructor Documentation

SphericalRegion::DrawParams::DrawParams ( class StelProjector projector)
inline

Construct DrawParams with default parameters and specified projector.

Parameters
projectorProjector to use for drawing.

The default parameters are: no clipping cap, subdivide the region to follow projection distortions, max distortion 5.0.

Definition at line 177 of file StelSphereGeometry.hpp.

Member Function Documentation

DrawParams& SphericalRegion::DrawParams::clippingCap ( const SphericalCap clippingCap)
inline

If not NULL, used to clip the part of the region outside the cap.

Definition at line 211 of file StelSphereGeometry.hpp.

DrawParams& SphericalRegion::DrawParams::doNotSubdivide ( )
inline

Do not subdivide the region to follow projection distortions.

Improves drawing speed.

You can use this if you think that the region is fully contained in the viewport.

Definition at line 222 of file StelSphereGeometry.hpp.

DrawParams& SphericalRegion::DrawParams::maxSqDistortion ( const double  maxSqDistortion)
inline

Specify maximum distortion - we try to subdivide to be withil this limit.

Definition at line 229 of file StelSphereGeometry.hpp.

bool SphericalRegion::DrawParams::operator!= ( const DrawParams rhs) const
inline

Only used to determine whether to update cached vertex buffers.

Compares parameters given in a previous drawXXX() call with parameters given in the current call.

Projector is ignored - outside code needs to figure out if projector affects vertex buffer generation. Clipping cap is only assumed to be the same if both previos and current is NULL (which is usually the case).

Definition at line 192 of file StelSphereGeometry.hpp.

Member Data Documentation

const SphericalCap* SphericalRegion::DrawParams::clippingCap_

If specified, clips the part of the region outside of cap.

Definition at line 239 of file StelSphereGeometry.hpp.

double SphericalRegion::DrawParams::maxSqDistortion_

Maximum distortion.

Definition at line 245 of file StelSphereGeometry.hpp.

class StelProjector* SphericalRegion::DrawParams::projector_

Projector to use when drawing.

Definition at line 236 of file StelSphereGeometry.hpp.

bool SphericalRegion::DrawParams::subdivide_

Subdivide triangles?

Definition at line 242 of file StelSphereGeometry.hpp.


The documentation for this struct was generated from the following file: