Stellarium  0.22.2
Public Member Functions | Protected Member Functions | Protected Attributes
SpecialZoneArray Class Reference

#include <ZoneArray.hpp>

Public Member Functions

 SpecialZoneArray (QFile *file, bool byte_swap, bool use_mmap, int level, int mag_min, int mag_range, int mag_steps)
 Handles loading of the meaty part of star catalogs. More...

Protected Member Functions

SpecialZoneData< Star > * getZones (void) const
 Get an array of all SpecialZoneData objects in this catalog.
virtual void draw (StelPainter *sPainter, int index, bool isInsideViewport, const RCMag *rcmag_table, int limitMagIndex, StelCore *core, int maxMagStarName, float names_brightness, const QVector< SphericalCap > &boundingCaps, const bool withAberration, const Vec3f vel) const Q_DECL_OVERRIDE
 Draw stars and their names onto the viewport. More...
virtual void scaleAxis () Q_DECL_OVERRIDE
virtual void searchAround (const StelCore *core, int index, const Vec3d &v, double cosLimFov, QList< StelObjectP > &result) Q_DECL_OVERRIDE

Protected Attributes

Star * stars

Detailed Description

Implements all the virtual methods in ZoneArray. Is only separate from ZoneArray because ZoneArray decides on the template parameter.

Template Parameters
Stareither Star1, Star2 or Star3, depending on the brightness of stars in this catalog.

Constructor & Destructor Documentation

◆ SpecialZoneArray()

SpecialZoneArray::SpecialZoneArray ( QFile *  file,
bool  byte_swap,
bool  use_mmap,
int  level,
int  mag_min,
int  mag_range,
int  mag_steps 
filecatalog to load from
byte_swapwhether to switch endianness of catalog data
use_mmapwhether or not to mmap the star catalog
levellevel in StelGeodesicGrid
mag_minlower bound of magnitudes
mag_rangerange of magnitudes
mag_stepsnumber of steps used to describe values in range

Member Function Documentation

◆ draw()

virtual void SpecialZoneArray::draw ( StelPainter sPainter,
int  index,
bool  isInsideViewport,
const RCMag rcmag_table,
int  limitMagIndex,
StelCore core,
int  maxMagStarName,
float  names_brightness,
const QVector< SphericalCap > &  boundingCaps,
const bool  withAberration,
const Vec3f  vel 
) const
sPainterthe painter to use
indexzone index to draw
isInsideViewportwhether the zone is inside the current viewport. If false, we need to test more to skip stars.
rcmag_tabletable of magnitudes
limitMagIndexindex from rcmag_table at which stars are not visible anymore
corecore to use for drawing
maxMagStarNamemagnitude limit of stars that display labels
names_brightnessbrightness of labels
withAberrationtrue if aberration to be applied
velvelocity vector of observer planet