QCPPolarAxisRadial

Search for usage in LXR

Inheritance diagram for QCPPolarAxisRadial:

Public Types

enum  AngleReference { arAbsolute, arAngularAxis }
 
enum  LabelMode { lmUpright, lmRotated }
 
enum  ScaleType { stLinear, stLogarithmic }
 
enum  SelectablePart { spNone = 0, spAxis = 0x001, spTickLabels = 0x002, spAxisLabel = 0x004 }
 
typedef QFlags< SelectablePartSelectableParts
 

Signals

void rangeChanged (const QCPRange &newRange)
 
void rangeChanged (const QCPRange &newRange, const QCPRange &oldRange)
 
void scaleTypeChanged (QCPPolarAxisRadial::ScaleType scaleType)
 
void selectableChanged (const QCPPolarAxisRadial::SelectableParts &parts)
 
void selectionChanged (const QCPPolarAxisRadial::SelectableParts &parts)
 
- Signals inherited from QCPLayerable
void layerChanged (QCPLayer *newLayer)
 

Public Member Functions

 QCPPolarAxisRadial (QCPPolarAxisAngular *parent)
 
double angle () const
 
AngleReference angleReference () const
 
QCPPolarAxisAngularangularAxis () const
 
QPen basePen () const
 
QPointF coordToPixel (double angleCoord, double radiusCoord) const
 
double coordToRadius (double coord) const
 
SelectablePart getPartAt (const QPointF &pos) const
 
QString label () const
 
QColor labelColor () const
 
QFont labelFont () const
 
int labelPadding () const
 
void moveRange (double diff)
 
QString numberFormat () const
 
int numberPrecision () const
 
void pixelToCoord (QPointF pixelPos, double &angleCoord, double &radiusCoord) const
 
double radiusToCoord (double radius) const
 
const QCPRange range () const
 
bool rangeDrag () const
 
bool rangeReversed () const
 
bool rangeZoom () const
 
double rangeZoomFactor () const
 
void rescale (bool onlyVisiblePlottables=false)
 
void scaleRange (double factor)
 
void scaleRange (double factor, double center)
 
ScaleType scaleType () const
 
SelectableParts selectableParts () const
 
QPen selectedBasePen () const
 
QColor selectedLabelColor () const
 
QFont selectedLabelFont () const
 
SelectableParts selectedParts () const
 
QPen selectedSubTickPen () const
 
QColor selectedTickLabelColor () const
 
QFont selectedTickLabelFont () const
 
QPen selectedTickPen () const
 
virtual double selectTest (const QPointF &pos, bool onlySelectable, QVariant *details=0) const override
 
void setAngle (double degrees)
 
void setAngleReference (AngleReference reference)
 
void setBasePen (const QPen &pen)
 
void setLabel (const QString &str)
 
void setLabelColor (const QColor &color)
 
void setLabelFont (const QFont &font)
 
void setLabelPadding (int padding)
 
void setNumberFormat (const QString &formatCode)
 
void setNumberPrecision (int precision)
 
Q_SLOT void setRange (const QCPRange &range)
 
void setRange (double lower, double upper)
 
void setRange (double position, double size, Qt::AlignmentFlag alignment)
 
void setRangeDrag (bool enabled)
 
void setRangeLower (double lower)
 
void setRangeReversed (bool reversed)
 
void setRangeUpper (double upper)
 
void setRangeZoom (bool enabled)
 
void setRangeZoomFactor (double factor)
 
Q_SLOT void setScaleType (QCPPolarAxisRadial::ScaleType type)
 
Q_SLOT void setSelectableParts (const QCPPolarAxisRadial::SelectableParts &selectableParts)
 
void setSelectedBasePen (const QPen &pen)
 
void setSelectedLabelColor (const QColor &color)
 
void setSelectedLabelFont (const QFont &font)
 
Q_SLOT void setSelectedParts (const QCPPolarAxisRadial::SelectableParts &selectedParts)
 
void setSelectedSubTickPen (const QPen &pen)
 
void setSelectedTickLabelColor (const QColor &color)
 
void setSelectedTickLabelFont (const QFont &font)
 
void setSelectedTickPen (const QPen &pen)
 
void setSubTickLength (int inside, int outside=0)
 
void setSubTickLengthIn (int inside)
 
void setSubTickLengthOut (int outside)
 
void setSubTickPen (const QPen &pen)
 
void setSubTicks (bool show)
 
void setTicker (QSharedPointer< QCPAxisTicker > ticker)
 
void setTickLabelColor (const QColor &color)
 
void setTickLabelFont (const QFont &font)
 
void setTickLabelMode (LabelMode mode)
 
void setTickLabelPadding (int padding)
 
void setTickLabelRotation (double degrees)
 
void setTickLabels (bool show)
 
void setTickLength (int inside, int outside=0)
 
void setTickLengthIn (int inside)
 
void setTickLengthOut (int outside)
 
void setTickPen (const QPen &pen)
 
void setTicks (bool show)
 
int subTickLengthIn () const
 
int subTickLengthOut () const
 
QPen subTickPen () const
 
bool subTicks () const
 
QVector< double > subTickVector () const
 
QSharedPointer< QCPAxisTickerticker () const
 
QColor tickLabelColor () const
 
QFont tickLabelFont () const
 
LabelMode tickLabelMode () const
 
int tickLabelPadding () const
 
double tickLabelRotation () const
 
bool tickLabels () const
 
int tickLengthIn () const
 
int tickLengthOut () const
 
QPen tickPen () const
 
bool ticks () const
 
QVector< double > tickVector () const
 
QVector< QStringtickVectorLabels () const
 
- Public Member Functions inherited from QCPLayerable
 QCPLayerable (QCustomPlot *plot, QString targetLayer=QString(), QCPLayerable *parentLayerable=nullptr)
 
bool antialiased () const
 
QCPLayerlayer () const
 
QCPLayerableparentLayerable () const
 
QCustomPlotparentPlot () const
 
bool realVisibility () const
 
void setAntialiased (bool enabled)
 
bool setLayer (const QString &layerName)
 
Q_SLOT bool setLayer (QCPLayer *layer)
 
void setVisible (bool on)
 
bool visible () const
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
bool blockSignals (bool block)
 
const QObjectListchildren () const const
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectInfo ()
 
void dumpObjectInfo () const const
 
void dumpObjectTree ()
 
void dumpObjectTree () const const
 
QList< QByteArraydynamicPropertyNames () const const
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegExp &regExp, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
bool inherits (const char *className) const const
 
void installEventFilter (QObject *filterObj)
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
void killTimer (int id)
 
virtual const QMetaObjectmetaObject () const const
 
void moveToThread (QThread *targetThread)
 
QString objectName () const const
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
QVariant property (const char *name) const const
 
 Q_CLASSINFO (Name, Value)
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_EMIT Q_EMIT
 
 Q_ENUM (...)
 
 Q_ENUM_NS (...)
 
 Q_ENUMS (...)
 
 Q_FLAG (...)
 
 Q_FLAG_NS (...)
 
 Q_FLAGS (...)
 
 Q_GADGET Q_GADGET
 
 Q_INTERFACES (...)
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_OBJECT Q_OBJECT
 
 Q_PROPERTY (...)
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SLOT Q_SLOT
 
 Q_SLOTS Q_SLOTS
 
qFindChild (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QRegExp &regExp)
 
QList< T > qFindChildren (const QObject *obj, const QString &name)
 
qobject_cast (const QObject *object)
 
qobject_cast (QObject *object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 
void removeEventFilter (QObject *obj)
 
void setObjectName (const QString &name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool signalsBlocked () const const
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds time, Qt::TimerType timerType)
 
QThreadthread () const const
 

Protected Member Functions

virtual void applyDefaultAntialiasingHint (QCPPainter *painter) const override
 
virtual void deselectEvent (bool *selectionStateChanged) override
 
virtual void draw (QCPPainter *painter) override
 
QPen getBasePen () const
 
QColor getLabelColor () const
 
QFont getLabelFont () const
 
QPen getSubTickPen () const
 
QColor getTickLabelColor () const
 
QFont getTickLabelFont () const
 
QPen getTickPen () const
 
virtual void mouseMoveEvent (QMouseEvent *event, const QPointF &startPos) override
 
virtual void mousePressEvent (QMouseEvent *event, const QVariant &details) override
 
virtual void mouseReleaseEvent (QMouseEvent *event, const QPointF &startPos) override
 
virtual void selectEvent (QMouseEvent *event, bool additive, const QVariant &details, bool *selectionStateChanged) override
 
virtual QCP::Interaction selectionCategory () const override
 
void setupTickVectors ()
 
void updateGeometry (const QPointF &center, double radius)
 
virtual void wheelEvent (QWheelEvent *event) override
 
- Protected Member Functions inherited from QCPLayerable
void applyAntialiasingHint (QCPPainter *painter, bool localAntialiased, QCP::AntialiasedElement overrideElement) const
 
virtual QRect clipRect () const
 
void initializeParentPlot (QCustomPlot *parentPlot)
 
virtual void mouseDoubleClickEvent (QMouseEvent *event, const QVariant &details)
 
bool moveToLayer (QCPLayer *layer, bool prepend)
 
virtual void parentPlotInitialized (QCustomPlot *parentPlot)
 
void setParentLayerable (QCPLayerable *parentLayerable)
 
- Protected Member Functions inherited from QObject
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
int receivers (const char *signal) const const
 
QObjectsender () const const
 
int senderSignalIndex () const const
 
virtual void timerEvent (QTimerEvent *event)
 

Protected Attributes

QCP::AntialiasedElements mAADragBackup
 
double mAngle
 
AngleReference mAngleReference
 
QCPPolarAxisAngularmAngularAxis
 
QPen mBasePen
 
QPointF mCenter
 
bool mDragging
 
QCPRange mDragStartRange
 
QString mLabel
 
QColor mLabelColor
 
QFont mLabelFont
 
int mLabelPadding
 
QCPLabelPainterPrivate mLabelPainter
 
QCP::AntialiasedElements mNotAADragBackup
 
bool mNumberBeautifulPowers
 
QLatin1Char mNumberFormatChar
 
bool mNumberMultiplyCross
 
int mNumberPrecision
 
double mRadius
 
QCPRange mRange
 
bool mRangeDrag
 
bool mRangeReversed
 
bool mRangeZoom
 
double mRangeZoomFactor
 
ScaleType mScaleType
 
SelectableParts mSelectableParts
 
QPen mSelectedBasePen
 
QColor mSelectedLabelColor
 
QFont mSelectedLabelFont
 
SelectableParts mSelectedParts
 
QPen mSelectedSubTickPen
 
QColor mSelectedTickLabelColor
 
QFont mSelectedTickLabelFont
 
QPen mSelectedTickPen
 
int mSubTickLengthIn
 
int mSubTickLengthOut
 
QPen mSubTickPen
 
bool mSubTicks
 
QVector< double > mSubTickVector
 
QSharedPointer< QCPAxisTickermTicker
 
QColor mTickLabelColor
 
QFont mTickLabelFont
 
bool mTickLabels
 
int mTickLengthIn
 
int mTickLengthOut
 
QPen mTickPen
 
bool mTicks
 
QVector< double > mTickVector
 
QVector< QStringmTickVectorLabels
 
- Protected Attributes inherited from QCPLayerable
bool mAntialiased
 
QCPLayermLayer
 
QPointer< QCPLayerablemParentLayerable
 
QCustomPlotmParentPlot
 
bool mVisible
 

Additional Inherited Members

- Properties inherited from QObject
 objectName
 
- Static Public Member Functions inherited from QObject
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
- Public Attributes inherited from QObject
typedef QObjectList
 

Detailed Description

The radial axis inside a radial plot.

Warning
In this QCustomPlot version, polar plots are a tech preview. Expect documentation and functionality to be incomplete, as well as changing public interfaces in the future.

Each axis holds an instance of QCPAxisTicker which is used to generate the tick coordinates and tick labels. You can access the currently installed ticker or set a new one (possibly one of the specialized subclasses, or your own subclass) via setTicker. For details, see the documentation of QCPAxisTicker.

Definition at line 6953 of file qcustomplot.h.

Member Enumeration Documentation

◆ AngleReference

Defines the reference of the angle at which a radial axis is tilted (setAngle).

Enumerator
arAbsolute 

The axis tilt is given in absolute degrees. The zero is to the right and positive angles are measured counter-clockwise.

arAngularAxis 

The axis tilt is measured in the angular coordinate system given by the parent angular axis.

Definition at line 6963 of file qcustomplot.h.

◆ ScaleType

Defines the scale of an axis.

See also
setScaleType
Enumerator
stLinear 

Linear scaling.

stLogarithmic 

Logarithmic scaling with correspondingly transformed axis coordinates (possibly also setTicker to a QCPAxisTickerLog instance).

Definition at line 6971 of file qcustomplot.h.

◆ SelectablePart

Defines the selectable parts of an axis.

See also
setSelectableParts, setSelectedParts
Enumerator
spNone 

None of the selectable parts.

spAxis 

The axis backbone and tick marks.

spTickLabels 

Tick labels (numbers) of this axis (as a whole, not individually)

spAxisLabel 

The axis label.

Definition at line 6979 of file qcustomplot.h.

Constructor & Destructor Documentation

◆ QCPPolarAxisRadial()

QCPPolarAxisRadial::QCPPolarAxisRadial ( QCPPolarAxisAngular parent)
explicit

Constructs an Axis instance of Type type for the axis rect parent.

Usually it isn't necessary to instantiate axes directly, because you can let QCustomPlot create them for you with QCPAxisRect::addAxis. If you want to use own QCPAxis-subclasses however, create them manually and then inject them also via QCPAxisRect::addAxis.

Definition at line 31079 of file qcustomplot.cpp.

Member Function Documentation

◆ applyDefaultAntialiasingHint()

void QCPPolarAxisRadial::applyDefaultAntialiasingHint ( QCPPainter painter) const
overrideprotectedvirtual

A convenience function to easily set the QPainter::Antialiased hint on the provided painter before drawing axis lines.

This is the antialiasing state the painter passed to the draw method is in by default.

This function takes into account the local setting of the antialiasing flag as well as the overrides set with QCustomPlot::setAntialiasedElements and QCustomPlot::setNotAntialiasedElements.

\seebaseclassmethod

See also
setAntialiased

Implements QCPLayerable.

Definition at line 32300 of file qcustomplot.cpp.

◆ coordToPixel()

QPointF QCPPolarAxisRadial::coordToPixel ( double  angleCoord,
double  radiusCoord 
) const

Transforms value, in coordinates of the axis, to pixel coordinates of the QCustomPlot widget.

Definition at line 32034 of file qcustomplot.cpp.

◆ deselectEvent()

void QCPPolarAxisRadial::deselectEvent ( bool *  selectionStateChanged)
overrideprotectedvirtual

This event is called when the layerable shall be deselected, either as consequence of a user interaction or a call to QCustomPlot::deselectAll. Subclasses should react to it by unsetting their selection appropriately.

just as in selectEvent, the output parameter selectionStateChanged (if non-null), must return true or false when the selection state of this layerable has changed or not changed, respectively.

See also
selectTest, selectEvent

Reimplemented from QCPLayerable.

Definition at line 32138 of file qcustomplot.cpp.

◆ draw()

void QCPPolarAxisRadial::draw ( QCPPainter painter)
overrideprotectedvirtual

Draws the axis with the specified painter, using the internal QCPAxisPainterPrivate instance.

\seebaseclassmethod

Implements QCPLayerable.

Definition at line 32311 of file qcustomplot.cpp.

◆ getBasePen()

QPen QCPPolarAxisRadial::getBasePen ( ) const
protected

Returns the pen that is used to draw the axis base line. Depending on the selection state, this is either mSelectedBasePen or mBasePen.

Definition at line 32377 of file qcustomplot.cpp.

◆ getLabelColor()

QColor QCPPolarAxisRadial::getLabelColor ( ) const
protected

Returns the color that is used to draw the axis label. Depending on the selection state, this is either mSelectedLabelColor or mLabelColor.

Definition at line 32437 of file qcustomplot.cpp.

◆ getLabelFont()

QFont QCPPolarAxisRadial::getLabelFont ( ) const
protected

Returns the font that is used to draw the axis label. Depending on the selection state, this is either mSelectedLabelFont or mLabelFont.

Definition at line 32417 of file qcustomplot.cpp.

◆ getPartAt()

QCPPolarAxisRadial::SelectablePart QCPPolarAxisRadial::getPartAt ( const QPointF pos) const

Returns the part of the axis that is hit by pos (in pixels). The return value of this function is independent of the user-selectable parts defined with setSelectableParts. Further, this function does not change the current selection state of the axis.

If the axis is not visible (setVisible), this function always returns spNone.

See also
setSelectedParts, setSelectableParts, QCustomPlot::setInteractions

Definition at line 32092 of file qcustomplot.cpp.

◆ getSubTickPen()

QPen QCPPolarAxisRadial::getSubTickPen ( ) const
protected

Returns the pen that is used to draw the subticks. Depending on the selection state, this is either mSelectedSubTickPen or mSubTickPen.

Definition at line 32397 of file qcustomplot.cpp.

◆ getTickLabelColor()

QColor QCPPolarAxisRadial::getTickLabelColor ( ) const
protected

Returns the color that is used to draw the tick labels. Depending on the selection state, this is either mSelectedTickLabelColor or mTickLabelColor.

Definition at line 32427 of file qcustomplot.cpp.

◆ getTickLabelFont()

QFont QCPPolarAxisRadial::getTickLabelFont ( ) const
protected

Returns the font that is used to draw the tick labels. Depending on the selection state, this is either mSelectedTickLabelFont or mTickLabelFont.

Definition at line 32407 of file qcustomplot.cpp.

◆ getTickPen()

QPen QCPPolarAxisRadial::getTickPen ( ) const
protected

Returns the pen that is used to draw the (major) ticks. Depending on the selection state, this is either mSelectedTickPen or mTickPen.

Definition at line 32387 of file qcustomplot.cpp.

◆ mouseMoveEvent()

void QCPPolarAxisRadial::mouseMoveEvent ( QMouseEvent event,
const QPointF startPos 
)
overrideprotectedvirtual

This mouse event reimplementation provides the functionality to let the user drag individual axes exclusively, by startig the drag on top of the axis.

\seebaseclassmethod

Note
The dragging of possibly multiple axes at once by starting the drag anywhere in the axis rect is handled by the axis rect's mouse event, e.g. QCPAxisRect::mousePressEvent.
See also
QCPAxis::mousePressEvent

Reimplemented from QCPLayerable.

Definition at line 32197 of file qcustomplot.cpp.

◆ mousePressEvent()

void QCPPolarAxisRadial::mousePressEvent ( QMouseEvent event,
const QVariant details 
)
overrideprotectedvirtual

This mouse event reimplementation provides the functionality to let the user drag individual axes exclusively, by startig the drag on top of the axis.

For the axis to accept this event and perform the single axis drag, the parent QCPAxisRect must be configured accordingly, i.e. it must allow range dragging in the orientation of this axis (QCPAxisRect::setRangeDrag) and this axis must be a draggable axis (QCPAxisRect::setRangeDragAxes)

\seebaseclassmethod

Note
The dragging of possibly multiple axes at once by starting the drag anywhere in the axis rect is handled by the axis rect's mouse event, e.g. QCPAxisRect::mousePressEvent.

Reimplemented from QCPLayerable.

Definition at line 32161 of file qcustomplot.cpp.

◆ mouseReleaseEvent()

void QCPPolarAxisRadial::mouseReleaseEvent ( QMouseEvent event,
const QPointF startPos 
)
overrideprotectedvirtual

This mouse event reimplementation provides the functionality to let the user drag individual axes exclusively, by startig the drag on top of the axis.

\seebaseclassmethod

Note
The dragging of possibly multiple axes at once by starting the drag anywhere in the axis rect is handled by the axis rect's mouse event, e.g. QCPAxisRect::mousePressEvent.
See also
QCPAxis::mousePressEvent

Reimplemented from QCPLayerable.

Definition at line 32235 of file qcustomplot.cpp.

◆ moveRange()

void QCPPolarAxisRadial::moveRange ( double  diff)

If the scale type (setScaleType) is stLinear, diff is added to the lower and upper bounds of the range. The range is simply moved by diff.

If the scale type is stLogarithmic, the range bounds are multiplied by diff. This corresponds to an apparent "linear" move in logarithmic scaling by a distance of log(diff).

Definition at line 31901 of file qcustomplot.cpp.

◆ pixelToCoord()

void QCPPolarAxisRadial::pixelToCoord ( QPointF  pixelPos,
double &  angleCoord,
double &  radiusCoord 
) const

Transforms value, in pixel coordinates of the QCustomPlot widget, to axis coordinates.

Definition at line 32024 of file qcustomplot.cpp.

◆ rangeChanged [1/2]

void QCPPolarAxisRadial::rangeChanged ( const QCPRange newRange)
signal

This signal is emitted when the range of this axis has changed. You can connect it to the setRange slot of another axis to communicate the new range to the other axis, in order for it to be synchronized.

You may also manipulate/correct the range with setRange in a slot connected to this signal. This is useful if for example a maximum range span shall not be exceeded, or if the lower/upper range shouldn't go beyond certain values (see QCPRange::bounded). For example, the following slot would limit the x axis to ranges between 0 and 10:

customPlot->xAxis->setRange(newRange.bounded(0, 10))

◆ rangeChanged [2/2]

void QCPPolarAxisRadial::rangeChanged ( const QCPRange newRange,
const QCPRange oldRange 
)
signal

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Additionally to the new range, this signal also provides the previous range held by the axis as oldRange.

◆ rescale()

void QCPPolarAxisRadial::rescale ( bool  onlyVisiblePlottables = false)

Changes the axis range such that all plottables associated with this axis are fully visible in that dimension.

See also
QCPAbstractPlottable::rescaleAxes, QCustomPlot::rescaleAxes

Definition at line 31972 of file qcustomplot.cpp.

◆ scaleRange() [1/2]

void QCPPolarAxisRadial::scaleRange ( double  factor)

Scales the range of this axis by factor around the center of the current axis range. For example, if factor is 2.0, then the axis range will double its size, and the point at the axis range center won't have changed its position in the QCustomPlot widget (i.e. coordinates around the center will have moved symmetrically closer).

If you wish to scale around a different coordinate than the current axis range center, use the overload scaleRange(double factor, double center).

Definition at line 31926 of file qcustomplot.cpp.

◆ scaleRange() [2/2]

void QCPPolarAxisRadial::scaleRange ( double  factor,
double  center 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Scales the range of this axis by factor around the coordinate center. For example, if factor is 2.0, center is 1.0, then the axis range will double its size, and the point at coordinate 1.0 won't have changed its position in the QCustomPlot widget (i.e. coordinates around 1.0 will have moved symmetrically closer to 1.0).

See also
scaleRange(double factor)

Definition at line 31940 of file qcustomplot.cpp.

◆ scaleTypeChanged

void QCPPolarAxisRadial::scaleTypeChanged ( QCPPolarAxisRadial::ScaleType  scaleType)
signal

This signal is emitted when the scale type changes, by calls to setScaleType

◆ selectableChanged

void QCPPolarAxisRadial::selectableChanged ( const QCPPolarAxisRadial::SelectableParts parts)
signal

This signal is emitted when the selectability changes, by calls to setSelectableParts

◆ selectEvent()

void QCPPolarAxisRadial::selectEvent ( QMouseEvent event,
bool  additive,
const QVariant details,
bool *  selectionStateChanged 
)
overrideprotectedvirtual

This event is called when the layerable shall be selected, as a consequence of a click by the user. Subclasses should react to it by setting their selection state appropriately. The default implementation does nothing.

event is the mouse event that caused the selection. additive indicates, whether the user was holding the multi-select-modifier while performing the selection (see QCustomPlot::setMultiSelectModifier). if additive is true, the selection state must be toggled (i.e. become selected when unselected and unselected when selected).

Every selectEvent is preceded by a call to selectTest, which has returned positively (i.e. returned a value greater than 0 and less than the selection tolerance of the parent QCustomPlot). The details data you output from selectTest is fed back via details here. You may use it to transport any kind of information from the selectTest to the possibly subsequent selectEvent. Usually details is used to transfer which part was clicked, if it is a layerable that has multiple individually selectable parts (like QCPAxis). This way selectEvent doesn't need to do the calculation again to find out which part was actually clicked.

selectionStateChanged is an output parameter. If the pointer is non-null, this function must set the value either to true or false, depending on whether the selection state of this layerable was actually changed. For layerables that only are selectable as a whole and not in parts, this is simple: if additive is true, selectionStateChanged must also be set to true, because the selection toggles. If additive is false, selectionStateChanged is only set to true, if the layerable was previously unselected and now is switched to the selected state.

See also
selectTest, deselectEvent

Reimplemented from QCPLayerable.

Definition at line 32124 of file qcustomplot.cpp.

◆ selectionCategory()

QCP::Interaction QCPPolarAxisRadial::selectionCategory ( ) const
overrideprotectedvirtual

Returns the selection category this layerable shall belong to. The selection category is used in conjunction with QCustomPlot::setInteractions to control which objects are selectable and which aren't.

Subclasses that don't fit any of the normal QCP::Interaction values can use QCP::iSelectOther. This is what the default implementation returns.

See also
QCustomPlot::setInteractions

Reimplemented from QCPLayerable.

Definition at line 32444 of file qcustomplot.cpp.

◆ selectionChanged

void QCPPolarAxisRadial::selectionChanged ( const QCPPolarAxisRadial::SelectableParts parts)
signal

This signal is emitted when the selection state of this axis has changed, either by user interaction or by a direct call to setSelectedParts.

◆ selectTest()

double QCPPolarAxisRadial::selectTest ( const QPointF pos,
bool  onlySelectable,
QVariant details = 0 
) const
overridevirtual

This function is used to decide whether a click hits a layerable object or not.

pos is a point in pixel coordinates on the QCustomPlot surface. This function returns the shortest pixel distance of this point to the object. If the object is either invisible or the distance couldn't be determined, -1.0 is returned. Further, if onlySelectable is true and the object is not selectable, -1.0 is returned, too.

If the object is represented not by single lines but by an area like a QCPItemText or the bars of a QCPBars plottable, a click inside the area should also be considered a hit. In these cases this function thus returns a constant value greater zero but still below the parent plot's selection tolerance. (typically the selectionTolerance multiplied by 0.99).

Providing a constant value for area objects allows selecting line objects even when they are obscured by such area objects, by clicking close to the lines (i.e. closer than 0.99*selectionTolerance).

The actual setting of the selection state is not done by this function. This is handled by the parent QCustomPlot when the mouseReleaseEvent occurs, and the finally selected object is notified via the selectEvent/ deselectEvent methods.

details is an optional output parameter. Every layerable subclass may place any information in details. This information will be passed to selectEvent when the parent QCustomPlot decides on the basis of this selectTest call, that the object was successfully selected. The subsequent call to selectEvent will carry the details. This is useful for multi-part objects (like QCPAxis). This way, a possibly complex calculation to decide which part was clicked is only done once in selectTest. The result (i.e. the actually clicked part) can then be placed in details. So in the subsequent selectEvent, the decision which part was selected doesn't have to be done a second time for a single selection operation.

In the case of 1D Plottables (QCPAbstractPlottable1D, like QCPGraph or QCPBars) details will be set to a QCPDataSelection, describing the closest data point to pos.

You may pass nullptr as details to indicate that you are not interested in those selection details.

See also
selectEvent, deselectEvent, mousePressEvent, wheelEvent, QCustomPlot::setInteractions, QCPAbstractPlottable1D::selectTestRect

Reimplemented from QCPLayerable.

Definition at line 32111 of file qcustomplot.cpp.

◆ setBasePen()

void QCPPolarAxisRadial::setBasePen ( const QPen pen)

Sets the pen, the axis base line is drawn with.

See also
setTickPen, setSubTickPen

Definition at line 31740 of file qcustomplot.cpp.

◆ setLabel()

void QCPPolarAxisRadial::setLabel ( const QString str)

Sets the text of the axis label that will be shown below/above or next to the axis, depending on its orientation. To disable axis labels, pass an empty string as str.

Definition at line 31793 of file qcustomplot.cpp.

◆ setLabelColor()

void QCPPolarAxisRadial::setLabelColor ( const QColor color)

Sets the color of the axis label.

See also
setLabelFont

Definition at line 31784 of file qcustomplot.cpp.

◆ setLabelFont()

void QCPPolarAxisRadial::setLabelFont ( const QFont font)

Sets the font of the axis label.

See also
setLabelColor

Definition at line 31770 of file qcustomplot.cpp.

◆ setLabelPadding()

void QCPPolarAxisRadial::setLabelPadding ( int  padding)

Sets the distance between the tick labels and the axis label.

See also
setTickLabelPadding, setPadding

Definition at line 31807 of file qcustomplot.cpp.

◆ setNumberFormat()

void QCPPolarAxisRadial::setNumberFormat ( const QString formatCode)

Sets the number format for the numbers in tick labels. This formatCode is an extended version of the format code used e.g. by QString::number() and QLocale::toString(). For reference about that, see the "Argument Formats" section in the detailed description of the QString class.

formatCode is a string of one, two or three characters. The first character is identical to the normal format code used by Qt. In short, this means: 'e'/'E' scientific format, 'f' fixed format, 'g'/'G' scientific or fixed, whichever is shorter.

The second and third characters are optional and specific to QCustomPlot:
If the first char was 'e' or 'g', numbers are/might be displayed in the scientific format, e.g. "5.5e9", which is ugly in a plot. So when the second char of formatCode is set to 'b' (for "beautiful"), those exponential numbers are formatted in a more natural way, i.e. "5.5 [multiplication sign] 10 [superscript] 9". By default, the multiplication sign is a centered dot. If instead a cross should be shown (as is usual in the USA), the third char of formatCode can be set to 'c'. The inserted multiplication signs are the UTF-8 characters 215 (0xD7) for the cross and 183 (0xB7) for the dot.

Examples for formatCode:

  • g normal format code behaviour. If number is small, fixed format is used, if number is large, normal scientific format is used
  • gb If number is small, fixed format is used, if number is large, scientific format is used with beautifully typeset decimal powers and a dot as multiplication sign
  • ebc All numbers are in scientific format with beautifully typeset decimal power and a cross as multiplication sign
  • fb illegal format code, since fixed format doesn't support (or need) beautifully typeset decimal powers. Format code will be reduced to 'f'.
  • hello illegal format code, since first char is not 'e', 'E', 'f', 'g' or 'G'. Current format code will not be changed.

Definition at line 31567 of file qcustomplot.cpp.

◆ setNumberPrecision()

void QCPPolarAxisRadial::setNumberPrecision ( int  precision)

Sets the precision of the tick label numbers. See QLocale::toString(double i, char f, int prec) for details. The effect of precisions are most notably for number Formats starting with 'e', see setNumberFormat

Definition at line 31622 of file qcustomplot.cpp.

◆ setRange() [1/3]

void QCPPolarAxisRadial::setRange ( const QCPRange range)

Sets the range of the axis.

This slot may be connected with the rangeChanged signal of another axis so this axis is always synchronized with the other axis range, when it changes.

To invert the direction of an axis, use setRangeReversed.

Definition at line 31249 of file qcustomplot.cpp.

◆ setRange() [2/3]

void QCPPolarAxisRadial::setRange ( double  lower,
double  upper 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Sets the lower and upper bound of the axis range.

To invert the direction of an axis, use setRangeReversed.

There is also a slot to set a range, see setRange(const QCPRange &range).

Definition at line 31319 of file qcustomplot.cpp.

◆ setRange() [3/3]

void QCPPolarAxisRadial::setRange ( double  position,
double  size,
Qt::AlignmentFlag  alignment 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Sets the range of the axis.

The position coordinate indicates together with the alignment parameter, where the new range will be positioned. size defines the size of the new axis range. alignment may be Qt::AlignLeft, Qt::AlignRight or Qt::AlignCenter. This will cause the left border, right border, or center of the range to be aligned with position. Any other values of alignment will default to Qt::AlignCenter.

Definition at line 31350 of file qcustomplot.cpp.

◆ setRangeLower()

void QCPPolarAxisRadial::setRangeLower ( double  lower)

Sets the lower bound of the axis range. The upper bound is not changed.

See also
setRange

Definition at line 31364 of file qcustomplot.cpp.

◆ setRangeReversed()

void QCPPolarAxisRadial::setRangeReversed ( bool  reversed)

Sets whether the axis range (direction) is displayed reversed. Normally, the values on horizontal axes increase left to right, on vertical axes bottom to top. When reversed is set to true, the direction of increasing values is inverted.

Note that the range and data interface stays the same for reversed axes, e.g. the lower part of the setRange interface will still reference the mathematically smaller number than the upper part.

Definition at line 31413 of file qcustomplot.cpp.

◆ setRangeUpper()

void QCPPolarAxisRadial::setRangeUpper ( double  upper)

Sets the upper bound of the axis range. The lower bound is not changed.

See also
setRange

Definition at line 31386 of file qcustomplot.cpp.

◆ setScaleType()

void QCPPolarAxisRadial::setScaleType ( QCPPolarAxisRadial::ScaleType  type)

Sets whether the axis uses a linear scale or a logarithmic scale.

Note that this method controls the coordinate transformation. For logarithmic scales, you will likely also want to use a logarithmic tick spacing and labeling, which can be achieved by setting the axis ticker to an instance of QCPAxisTickerLog :

See the documentation of QCPAxisTickerLog about the details of logarithmic axis tick creation.

setNumberPrecision

Definition at line 31229 of file qcustomplot.cpp.

◆ setSelectableParts()

void QCPPolarAxisRadial::setSelectableParts ( const QCPPolarAxisRadial::SelectableParts selectableParts)

Sets whether the user can (de-)select the parts in selectable by clicking on the QCustomPlot surface. (When QCustomPlot::setInteractions contains iSelectAxes.)

However, even when selectable is set to a value not allowing the selection of a specific part, it is still possible to set the selection of this part manually, by calling setSelectedParts directly.

See also
SelectablePart, setSelectedParts

Definition at line 31277 of file qcustomplot.cpp.

◆ setSelectedBasePen()

void QCPPolarAxisRadial::setSelectedBasePen ( const QPen pen)

Sets the pen that is used to draw the axis base line when selected.

See also
setBasePen, setSelectableParts, setSelectedParts, QCustomPlot::setInteractions

Definition at line 31869 of file qcustomplot.cpp.

◆ setSelectedLabelColor()

void QCPPolarAxisRadial::setSelectedLabelColor ( const QColor color)

Sets the color that is used for the axis label when it is selected.

See also
setLabelColor, setSelectableParts, setSelectedParts, QCustomPlot::setInteractions

Definition at line 31859 of file qcustomplot.cpp.

◆ setSelectedLabelFont()

void QCPPolarAxisRadial::setSelectedLabelFont ( const QFont font)

Sets the font that is used for the axis label when it is selected.

See also
setLabelFont, setSelectableParts, setSelectedParts, QCustomPlot::setInteractions

Definition at line 31835 of file qcustomplot.cpp.

◆ setSelectedParts()

void QCPPolarAxisRadial::setSelectedParts ( const QCPPolarAxisRadial::SelectableParts selectedParts)

Sets the selected state of the respective axis parts described by SelectablePart. When a part is selected, it uses a different pen/font.

The entire selection mechanism for axes is handled automatically when QCustomPlot::setInteractions contains iSelectAxes. You only need to call this function when you wish to change the selection state manually.

This function can change the selection state of a part, independent of the setSelectableParts setting.

emits the selectionChanged signal when selected is different from the previous selection state.

See also
SelectablePart, setSelectableParts, selectTest, setSelectedBasePen, setSelectedTickPen, setSelectedSubTickPen, setSelectedTickLabelFont, setSelectedLabelFont, setSelectedTickLabelColor, setSelectedLabelColor

Definition at line 31301 of file qcustomplot.cpp.

◆ setSelectedSubTickPen()

void QCPPolarAxisRadial::setSelectedSubTickPen ( const QPen pen)

Sets the pen that is used to draw the subticks when selected.

See also
setSubTickPen, setSelectableParts, setSelectedParts, QCustomPlot::setInteractions

Definition at line 31889 of file qcustomplot.cpp.

◆ setSelectedTickLabelColor()

void QCPPolarAxisRadial::setSelectedTickLabelColor ( const QColor color)

Sets the color that is used for tick labels when they are selected.

See also
setTickLabelColor, setSelectableParts, setSelectedParts, QCustomPlot::setInteractions

Definition at line 31846 of file qcustomplot.cpp.

◆ setSelectedTickLabelFont()

void QCPPolarAxisRadial::setSelectedTickLabelFont ( const QFont font)

Sets the font that is used for tick labels when they are selected.

See also
setTickLabelFont, setSelectableParts, setSelectedParts, QCustomPlot::setInteractions

Definition at line 31821 of file qcustomplot.cpp.

◆ setSelectedTickPen()

void QCPPolarAxisRadial::setSelectedTickPen ( const QPen pen)

Sets the pen that is used to draw the (major) ticks when selected.

See also
setTickPen, setSelectableParts, setSelectedParts, QCustomPlot::setInteractions

Definition at line 31879 of file qcustomplot.cpp.

◆ setSubTickLength()

void QCPPolarAxisRadial::setSubTickLength ( int  inside,
int  outside = 0 
)

Sets the length of the subticks in pixels. inside is the length the subticks will reach inside the plot and outside is the length they will reach outside the plot. If outside is greater than zero, the tick labels and axis label will increase their distance to the axis accordingly, so they won't collide with the ticks.

See also
setTickLength, setSubTickLengthIn, setSubTickLengthOut

Definition at line 31699 of file qcustomplot.cpp.

◆ setSubTickLengthIn()

void QCPPolarAxisRadial::setSubTickLengthIn ( int  inside)

Sets the length of the inward subticks in pixels. inside is the length the subticks will reach inside the plot.

See also
setSubTickLengthOut, setSubTickLength, setTickLength

Definition at line 31711 of file qcustomplot.cpp.

◆ setSubTickLengthOut()

void QCPPolarAxisRadial::setSubTickLengthOut ( int  outside)

Sets the length of the outward subticks in pixels. outside is the length the subticks will reach outside the plot. If outside is greater than zero, the tick labels will increase their distance to the axis accordingly, so they won't collide with the ticks.

See also
setSubTickLengthIn, setSubTickLength, setTickLength

Definition at line 31726 of file qcustomplot.cpp.

◆ setSubTickPen()

void QCPPolarAxisRadial::setSubTickPen ( const QPen pen)

Sets the pen, subtick marks will be drawn with.

See also
setSubTickCount, setSubTickLength, setBasePen

Definition at line 31760 of file qcustomplot.cpp.

◆ setSubTicks()

void QCPPolarAxisRadial::setSubTicks ( bool  show)

Sets whether sub tick marks are displayed.

Sub ticks are only potentially visible if (major) ticks are also visible (see setTicks)

See also
setTicks

Definition at line 31682 of file qcustomplot.cpp.

◆ setTicker()

void QCPPolarAxisRadial::setTicker ( QSharedPointer< QCPAxisTicker ticker)

The axis ticker is responsible for generating the tick positions and tick labels. See the documentation of QCPAxisTicker for details on how to work with axis tickers.

You can change the tick positioning/labeling behaviour of this axis by setting a different QCPAxisTicker subclass using this method. If you only wish to modify the currently installed axis ticker, access it via ticker.

Since the ticker is stored in the axis as a shared pointer, multiple axes may share the same axis ticker simply by passing the same shared pointer to multiple axes.

See also
ticker

Definition at line 31441 of file qcustomplot.cpp.

◆ setTickLabelColor()

void QCPPolarAxisRadial::setTickLabelColor ( const QColor color)

Sets the color of the tick labels.

See also
setTickLabels, setTickLabelFont

Definition at line 31509 of file qcustomplot.cpp.

◆ setTickLabelFont()

void QCPPolarAxisRadial::setTickLabelFont ( const QFont font)

Sets the font of the tick labels.

See also
setTickLabels, setTickLabelColor

Definition at line 31495 of file qcustomplot.cpp.

◆ setTickLabelPadding()

void QCPPolarAxisRadial::setTickLabelPadding ( int  padding)

Sets the distance between the axis base line (including any outward ticks) and the tick labels.

See also
setLabelPadding, setPadding

Definition at line 31485 of file qcustomplot.cpp.

◆ setTickLabelRotation()

void QCPPolarAxisRadial::setTickLabelRotation ( double  degrees)

Sets the rotation of the tick labels. If degrees is zero, the labels are drawn normally. Else, the tick labels are drawn rotated by degrees clockwise. The specified angle is bound to values from -90 to 90 degrees.

If degrees is exactly -90, 0 or 90, the tick labels are centered on the tick coordinate. For other angles, the label is drawn with an offset such that it seems to point toward or away from the tick mark.

Definition at line 31523 of file qcustomplot.cpp.

◆ setTickLabels()

void QCPPolarAxisRadial::setTickLabels ( bool  show)

Sets whether tick labels are displayed. Tick labels are the numbers drawn next to tick marks.

Definition at line 31470 of file qcustomplot.cpp.

◆ setTickLength()

void QCPPolarAxisRadial::setTickLength ( int  inside,
int  outside = 0 
)

Sets the length of the ticks in pixels. inside is the length the ticks will reach inside the plot and outside is the length they will reach outside the plot. If outside is greater than zero, the tick labels and axis label will increase their distance to the axis accordingly, so they won't collide with the ticks.

See also
setSubTickLength, setTickLengthIn, setTickLengthOut

Definition at line 31639 of file qcustomplot.cpp.

◆ setTickLengthIn()

void QCPPolarAxisRadial::setTickLengthIn ( int  inside)

Sets the length of the inward ticks in pixels. inside is the length the ticks will reach inside the plot.

See also
setTickLengthOut, setTickLength, setSubTickLength

Definition at line 31651 of file qcustomplot.cpp.

◆ setTickLengthOut()

void QCPPolarAxisRadial::setTickLengthOut ( int  outside)

Sets the length of the outward ticks in pixels. outside is the length the ticks will reach outside the plot. If outside is greater than zero, the tick labels and axis label will increase their distance to the axis accordingly, so they won't collide with the ticks.

See also
setTickLengthIn, setTickLength, setSubTickLength

Definition at line 31666 of file qcustomplot.cpp.

◆ setTickPen()

void QCPPolarAxisRadial::setTickPen ( const QPen pen)

Sets the pen, tick marks will be drawn with.

See also
setTickLength, setBasePen

Definition at line 31750 of file qcustomplot.cpp.

◆ setTicks()

void QCPPolarAxisRadial::setTicks ( bool  show)

Sets whether tick marks are displayed.

Note that setting show to false does not imply that tick labels are invisible, too. To achieve that, see setTickLabels.

See also
setSubTicks

Definition at line 31458 of file qcustomplot.cpp.

◆ setupTickVectors()

void QCPPolarAxisRadial::setupTickVectors ( )
protected

Prepares the internal tick vector, sub tick vector and tick label vector. This is done by calling QCPAxisTicker::generate on the currently installed ticker.

If a change in the label text/count is detected, the cached axis margin is invalidated to make sure the next margin calculation recalculates the label sizes and returns an up-to-date value.

Definition at line 32364 of file qcustomplot.cpp.

◆ ticker()

QSharedPointer< QCPAxisTicker > QCPPolarAxisRadial::ticker ( ) const
inline

Returns a modifiable shared pointer to the currently installed axis ticker. The axis ticker is responsible for generating the tick positions and tick labels of this axis. You can access the QCPAxisTicker with this method and modify basic properties such as the approximate tick count (QCPAxisTicker::setTickCount).

You can gain more control over the axis ticks by setting a different QCPAxisTicker subclass, see the documentation there. A new axis ticker can be set with setTicker.

Since the ticker is stored in the axis as a shared pointer, multiple axes may share the same axis ticker simply by passing the same shared pointer to multiple axes.

See also
setTicker

Definition at line 7007 of file qcustomplot.h.

◆ wheelEvent()

void QCPPolarAxisRadial::wheelEvent ( QWheelEvent event)
overrideprotectedvirtual

This mouse event reimplementation provides the functionality to let the user zoom individual axes exclusively, by performing the wheel event on top of the axis.

For the axis to accept this event and perform the single axis zoom, the parent QCPAxisRect must be configured accordingly, i.e. it must allow range zooming in the orientation of this axis (QCPAxisRect::setRangeZoom) and this axis must be a zoomable axis (QCPAxisRect::setRangeZoomAxes)

\seebaseclassmethod

Note
The zooming of possibly multiple axes at once by performing the wheel event anywhere in the axis rect is handled by the axis rect's mouse event, e.g. QCPAxisRect::wheelEvent.

Reimplemented from QCPLayerable.

Definition at line 32262 of file qcustomplot.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Thu Aug 18 2022 03:56:48 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.