ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
QCPAxisTickerPi Class Reference

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

#include <qcustomplot.h>

Inheritance diagram for QCPAxisTickerPi:
Collaboration diagram for QCPAxisTickerPi:

Public Types

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

Public Member Functions

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

Protected Member Functions

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

Protected Attributes

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

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:

axistickerpi-creation

Definition at line 2103 of file qcustomplot.h.

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.

Definition at line 2111 of file qcustomplot.h.

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.

Definition at line 6897 of file qcustomplot.cpp.

References QCPAxisTicker::setTickCount().

Member Function Documentation

◆ fractionStyle()

FractionStyle QCPAxisTickerPi::fractionStyle ( ) const
inline

Definition at line 2130 of file qcustomplot.h.

◆ fractionToString()

QString QCPAxisTickerPi::fractionToString ( int  numerator,
int  denominator 
) const
protected

◆ getSubTickCount()

int QCPAxisTickerPi::getSubTickCount ( double  tickStep)
protectedvirtual

Reimplemented from QCPAxisTicker.

Definition at line 6970 of file qcustomplot.cpp.

References QCPAxisTicker::getSubTickCount(), and mPiValue.

◆ getTickLabel()

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

◆ getTickStep()

double QCPAxisTickerPi::getTickStep ( const QCPRange range)
protectedvirtual

◆ periodicity()

bool QCPAxisTickerPi::periodicity ( ) const
inline

Definition at line 2129 of file qcustomplot.h.

◆ piSymbol()

QString QCPAxisTickerPi::piSymbol ( ) const
inline

Definition at line 2127 of file qcustomplot.h.

◆ piValue()

double QCPAxisTickerPi::piValue ( ) const
inline

Definition at line 2128 of file qcustomplot.h.

◆ 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.

Definition at line 6940 of file qcustomplot.cpp.

References mFractionStyle.

◆ 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.

Definition at line 6932 of file qcustomplot.cpp.

References mPeriodicity.

◆ 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.

Definition at line 6913 of file qcustomplot.cpp.

References mPiSymbol.

◆ 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.

Definition at line 6921 of file qcustomplot.cpp.

References mPiValue.

◆ simplifyFraction()

void QCPAxisTickerPi::simplifyFraction ( int &  numerator,
int &  denominator 
) const
protected

Definition at line 7023 of file qcustomplot.cpp.

Referenced by getTickLabel().

◆ unicodeFraction()

QString QCPAxisTickerPi::unicodeFraction ( int  numerator,
int  denominator 
) const
protected

Definition at line 7109 of file qcustomplot.cpp.

References unicodeSubscript(), and unicodeSuperscript().

Referenced by fractionToString().

◆ unicodeSubscript()

QString QCPAxisTickerPi::unicodeSubscript ( int  number) const
protected

Definition at line 7153 of file qcustomplot.cpp.

References result.

Referenced by unicodeFraction().

◆ unicodeSuperscript()

QString QCPAxisTickerPi::unicodeSuperscript ( int  number) const
protected

Definition at line 7119 of file qcustomplot.cpp.

References result.

Referenced by unicodeFraction().

Member Data Documentation

◆ mFractionStyle

FractionStyle QCPAxisTickerPi::mFractionStyle
protected

Definition at line 2143 of file qcustomplot.h.

Referenced by fractionToString(), getTickLabel(), and setFractionStyle().

◆ mPeriodicity

int QCPAxisTickerPi::mPeriodicity
protected

Definition at line 2142 of file qcustomplot.h.

Referenced by getTickLabel(), and setPeriodicity().

◆ mPiSymbol

QString QCPAxisTickerPi::mPiSymbol
protected

Definition at line 2140 of file qcustomplot.h.

Referenced by getTickLabel(), and setPiSymbol().

◆ mPiTickStep

double QCPAxisTickerPi::mPiTickStep
protected

Definition at line 2146 of file qcustomplot.h.

Referenced by getTickLabel(), and getTickStep().

◆ mPiValue

double QCPAxisTickerPi::mPiValue
protected

Definition at line 2141 of file qcustomplot.h.

Referenced by getSubTickCount(), getTickLabel(), getTickStep(), and setPiValue().


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