Cute Chess 0.1
QCPAxisTickerPi Class Reference

Specialized axis ticker to display ticks in units of an arbitrary constant, for example pi. More...

Inheritance diagram for QCPAxisTickerPi:
QCPAxisTicker

Public Types

enum  FractionStyle { fsFloatingPoint , fsAsciiFractions , fsUnicodeFractions }
Public Types inherited from QCPAxisTicker
enum  TickStepStrategy { tssReadability , tssMeetTickCount }

Public Member Functions

FractionStyle fractionStyle () const
bool periodicity () const
QString piSymbol () const
double piValue () const
 QCPAxisTickerPi ()
void setFractionStyle (FractionStyle style)
void setPeriodicity (int multiplesOfPi)
void setPiSymbol (QString symbol)
void setPiValue (double pi)
Public Member Functions inherited from QCPAxisTicker
virtual void generate (const QCPRange &range, const QLocale &locale, QChar formatChar, int precision, QVector< double > &ticks, QVector< double > *subTicks, QVector< QString > *tickLabels)
 QCPAxisTicker ()
void setTickCount (int count)
void setTickOrigin (double origin)
void setTickStepStrategy (TickStepStrategy strategy)
int tickCount () const
double tickOrigin () const
TickStepStrategy tickStepStrategy () const

Protected Member Functions

QString fractionToString (int numerator, int denominator) const
virtual int getSubTickCount (double tickStep) Q_DECL_OVERRIDE
virtual QString getTickLabel (double tick, const QLocale &locale, QChar formatChar, int precision) Q_DECL_OVERRIDE
virtual double getTickStep (const QCPRange &range) Q_DECL_OVERRIDE
void simplifyFraction (int &numerator, int &denominator) const
QString unicodeFraction (int numerator, int denominator) const
QString unicodeSubscript (int number) const
QString unicodeSuperscript (int number) const
Protected Member Functions inherited from QCPAxisTicker
double cleanMantissa (double input) const
virtual QVector< QStringcreateLabelVector (const QVector< double > &ticks, const QLocale &locale, QChar formatChar, int precision)
virtual QVector< double > createSubTickVector (int subTickCount, const QVector< double > &ticks)
virtual QVector< double > createTickVector (double tickStep, const QCPRange &range)
double getMantissa (double input, double *magnitude=0) const
double pickClosest (double target, const QVector< double > &candidates) const
void trimTicks (const QCPRange &range, QVector< double > &ticks, bool keepOneOutlier) const

Protected Attributes

FractionStyle mFractionStyle
int mPeriodicity
QString mPiSymbol
double mPiTickStep
double mPiValue
Protected Attributes inherited from QCPAxisTicker
int mTickCount
double mTickOrigin
TickStepStrategy mTickStepStrategy

Detailed Description

Specialized axis ticker to display ticks in units of an arbitrary constant, for example pi.

This QCPAxisTicker subclass generates ticks that are expressed with respect to a given symbolic constant with a numerical value specified with setPiValue and an appearance in the tick labels specified with setPiSymbol.

Ticks may be generated at fractions of the symbolic constant. How these fractions appear in the tick label can be configured with setFractionStyle.

The ticker can be created and assigned to an axis like this:

Member Enumeration Documentation

◆ FractionStyle

Defines how fractions should be displayed in tick labels.

See also
setFractionStyle
Enumerator
fsFloatingPoint 

Fractions are displayed as regular decimal floating point numbers, e.g. "0.25" or "0.125".

fsAsciiFractions 

Fractions are written as rationals using ASCII characters only, e.g. "1/4" or "1/8".

fsUnicodeFractions 

Fractions are written using sub- and superscript UTF-8 digits and the fraction symbol.

Constructor & Destructor Documentation

◆ QCPAxisTickerPi()

QCPAxisTickerPi::QCPAxisTickerPi ( )

Constructs the ticker and sets reasonable default values. Axis tickers are commonly created managed by a QSharedPointer, which then can be passed to QCPAxis::setTicker.

Member Function Documentation

◆ getSubTickCount()

int QCPAxisTickerPi::getSubTickCount ( double tickStep)
protectedvirtual

Reimplemented from QCPAxisTicker.

◆ getTickLabel()

QString QCPAxisTickerPi::getTickLabel ( double tick,
const QLocale & locale,
QChar formatChar,
int precision )
protectedvirtual

Reimplemented from QCPAxisTicker.

◆ getTickStep()

double QCPAxisTickerPi::getTickStep ( const QCPRange & range)
protectedvirtual

Reimplemented from QCPAxisTicker.

◆ setFractionStyle()

void QCPAxisTickerPi::setFractionStyle ( QCPAxisTickerPi::FractionStyle style)

Sets how the numerical/fractional part preceding the symbolic constant is displayed in tick labels. See FractionStyle for the various options.

◆ setPeriodicity()

void QCPAxisTickerPi::setPeriodicity ( int multiplesOfPi)

Sets whether the axis labels shall appear periodicly and if so, at which multiplicity of the symbolic constant.

To disable periodicity, set multiplesOfPi to zero.

For example, an axis that identifies 0 with 2pi would set multiplesOfPi to two.

◆ setPiSymbol()

void QCPAxisTickerPi::setPiSymbol ( QString symbol)

Sets how the symbol part (which is always a suffix to the number) shall appear in the axis tick label.

If a space shall appear between the number and the symbol, make sure the space is contained in symbol.

◆ setPiValue()

void QCPAxisTickerPi::setPiValue ( double pi)

Sets the numerical value that the symbolic constant has.

This will be used to place the appropriate fractions of the symbol at the respective axis coordinates.


The documentation for this class was generated from the following files: