LARS
LARS (Light Augmented Reality System) is an open-source framework for light-based interaction and real-time tracking in multi-robot experiments. Inspired by ARK, LARS extends the augmented reality paradigm to robotic collectives by projecting dynamic visual cues and environments onto the arena, enabling new experimental possibilities for collective robotics research, education, and outreach. LARS features integrated tracking, light projection, and modular experiment control with a user-friendly Qt GUI.
Loading...
Searching...
No Matches
QCPGrid Class Reference

Responsible for drawing the grid of a QCPAxis. More...

Inheritance diagram for QCPGrid:
QCPLayerable

Public Member Functions

 QCPGrid (QCPAxis *parentAxis)
bool subGridVisible () const
bool antialiasedSubGrid () const
bool antialiasedZeroLine () const
QPen pen () const
QPen subGridPen () const
QPen zeroLinePen () const
void setSubGridVisible (bool visible)
void setAntialiasedSubGrid (bool enabled)
void setAntialiasedZeroLine (bool enabled)
void setPen (const QPen &pen)
void setSubGridPen (const QPen &pen)
void setZeroLinePen (const QPen &pen)
Public Member Functions inherited from QCPLayerable
 QCPLayerable (QCustomPlot *plot, QString targetLayer=QString(), QCPLayerable *parentLayerable=nullptr)
bool visible () const
QCustomPlotparentPlot () const
QCPLayerableparentLayerable () const
QCPLayerlayer () const
bool antialiased () const
void setVisible (bool on)
Q_SLOT bool setLayer (QCPLayer *layer)
bool setLayer (const QString &layerName)
void setAntialiased (bool enabled)
virtual double selectTest (const QPointF &pos, bool onlySelectable, QVariant *details=nullptr) const
bool realVisibility () const

Protected Member Functions

virtual void applyDefaultAntialiasingHint (QCPPainter *painter) const Q_DECL_OVERRIDE
virtual void draw (QCPPainter *painter) Q_DECL_OVERRIDE
void drawGridLines (QCPPainter *painter) const
void drawSubGridLines (QCPPainter *painter) const
Protected Member Functions inherited from QCPLayerable
virtual void parentPlotInitialized (QCustomPlot *parentPlot)
virtual QCP::Interaction selectionCategory () const
virtual QRect clipRect () const
virtual void selectEvent (QMouseEvent *event, bool additive, const QVariant &details, bool *selectionStateChanged)
virtual void deselectEvent (bool *selectionStateChanged)
virtual void mousePressEvent (QMouseEvent *event, const QVariant &details)
virtual void mouseMoveEvent (QMouseEvent *event, const QPointF &startPos)
virtual void mouseReleaseEvent (QMouseEvent *event, const QPointF &startPos)
virtual void mouseDoubleClickEvent (QMouseEvent *event, const QVariant &details)
virtual void wheelEvent (QWheelEvent *event)
void initializeParentPlot (QCustomPlot *parentPlot)
void setParentLayerable (QCPLayerable *parentLayerable)
bool moveToLayer (QCPLayer *layer, bool prepend)
void applyAntialiasingHint (QCPPainter *painter, bool localAntialiased, QCP::AntialiasedElement overrideElement) const

Protected Attributes

bool mSubGridVisible
bool mAntialiasedSubGrid
bool mAntialiasedZeroLine
QPen mPen
QPen mSubGridPen
QPen mZeroLinePen
QCPAxismParentAxis
Protected Attributes inherited from QCPLayerable
bool mVisible
QCustomPlotmParentPlot
QPointer< QCPLayerablemParentLayerable
QCPLayermLayer
bool mAntialiased

Friends

class QCPAxis

Additional Inherited Members

Signals inherited from QCPLayerable
void layerChanged (QCPLayer *newLayer)

Detailed Description

Responsible for drawing the grid of a QCPAxis.

This class is tightly bound to QCPAxis. Every axis owns a grid instance and uses it to draw the grid lines, sub grid lines and zero-line. You can interact with the grid of an axis via QCPAxis::grid. Normally, you don't need to create an instance of QCPGrid yourself.

The axis and grid drawing was split into two classes to allow them to be placed on different layers (both QCPAxis and QCPGrid inherit from QCPLayerable). Thus it is possible to have the grid in the background and the axes in the foreground, and any plottables/items in between. This described situation is the default setup, see the QCPLayer documentation.

Constructor & Destructor Documentation

◆ QCPGrid()

QCPGrid::QCPGrid ( QCPAxis * parentAxis)
explicit

Creates a QCPGrid instance and sets default values.

You shouldn't instantiate grids on their own, since every QCPAxis brings its own QCPGrid.

Member Function Documentation

◆ applyDefaultAntialiasingHint()

void QCPGrid::applyDefaultAntialiasingHint ( QCPPainter * painter) const
protectedvirtual

Implements QCPLayerable.

◆ draw()

void QCPGrid::draw ( QCPPainter * painter)
protectedvirtual

Implements QCPLayerable.

◆ setAntialiasedSubGrid()

void QCPGrid::setAntialiasedSubGrid ( bool enabled)

Sets whether sub grid lines are drawn antialiased.

◆ setAntialiasedZeroLine()

void QCPGrid::setAntialiasedZeroLine ( bool enabled)

Sets whether zero lines are drawn antialiased.

◆ setPen()

void QCPGrid::setPen ( const QPen & pen)

Sets the pen with which (major) grid lines are drawn.

◆ setSubGridPen()

void QCPGrid::setSubGridPen ( const QPen & pen)

Sets the pen with which sub grid lines are drawn.

◆ setSubGridVisible()

void QCPGrid::setSubGridVisible ( bool visible)

Sets whether grid lines at sub tick marks are drawn.

See also
setSubGridPen

◆ setZeroLinePen()

void QCPGrid::setZeroLinePen ( const QPen & pen)

Sets the pen with which zero lines are drawn.

Zero lines are lines at value coordinate 0 which may be drawn with a different pen than other grid lines. To disable zero lines and just draw normal grid lines at zero, set pen to Qt::NoPen.


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