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
QCPPaintBufferPixmap Class Reference

A paint buffer based on QPixmap, using software raster rendering. More...

Inheritance diagram for QCPPaintBufferPixmap:
QCPAbstractPaintBuffer

Public Member Functions

 QCPPaintBufferPixmap (const QSize &size, double devicePixelRatio)
virtual QCPPainterstartPainting () Q_DECL_OVERRIDE
virtual void draw (QCPPainter *painter) const Q_DECL_OVERRIDE
void clear (const QColor &color) Q_DECL_OVERRIDE
Public Member Functions inherited from QCPAbstractPaintBuffer
 QCPAbstractPaintBuffer (const QSize &size, double devicePixelRatio)
QSize size () const
bool invalidated () const
double devicePixelRatio () const
void setSize (const QSize &size)
void setInvalidated (bool invalidated=true)
void setDevicePixelRatio (double ratio)
virtual void donePainting ()

Protected Member Functions

virtual void reallocateBuffer () Q_DECL_OVERRIDE

Protected Attributes

QPixmap mBuffer
Protected Attributes inherited from QCPAbstractPaintBuffer
QSize mSize
double mDevicePixelRatio
bool mInvalidated

Detailed Description

A paint buffer based on QPixmap, using software raster rendering.

This paint buffer is the default and fall-back paint buffer which uses software rendering and QPixmap as internal buffer. It is used if QCustomPlot::setOpenGl is false.

Constructor & Destructor Documentation

◆ QCPPaintBufferPixmap()

QCPPaintBufferPixmap::QCPPaintBufferPixmap ( const QSize & size,
double devicePixelRatio )
explicit

Creates a pixmap paint buffer instancen with the specified size and devicePixelRatio, if applicable.

Member Function Documentation

◆ clear()

void QCPPaintBufferPixmap::clear ( const QColor & color)
virtual

Fills the entire buffer with the provided color. To have an empty transparent buffer, use the named color Qt::transparent.

This method must not be called if there is currently a painter (acquired with startPainting) active.

Implements QCPAbstractPaintBuffer.

◆ draw()

void QCPPaintBufferPixmap::draw ( QCPPainter * painter) const
virtual

Draws the contents of this buffer with the provided painter. This is the method that is used to finally join all paint buffers and draw them onto the screen.

Implements QCPAbstractPaintBuffer.

◆ reallocateBuffer()

void QCPPaintBufferPixmap::reallocateBuffer ( )
protectedvirtual

Reallocates the internal buffer with the currently configured size (setSize) and device pixel ratio, if applicable (setDevicePixelRatio). It is called as soon as any of those properties are changed on this paint buffer.

Note
Subclasses of QCPAbstractPaintBuffer must call their reimplementation of this method in their constructor, to perform the first allocation (this can not be done by the base class because calling pure virtual methods in base class constructors is not possible).

Implements QCPAbstractPaintBuffer.

◆ startPainting()

QCPPainter * QCPPaintBufferPixmap::startPainting ( )
virtual

Returns a QCPPainter which is ready to draw to this buffer. The ownership and thus the responsibility to delete the painter after the painting operations are complete is given to the caller of this method.

Once you are done using the painter, delete the painter and call donePainting.

While a painter generated with this method is active, you must not call setSize, setDevicePixelRatio or clear.

This method may return 0, if a painter couldn't be activated on the buffer. This usually indicates a problem with the respective painting backend.

Implements QCPAbstractPaintBuffer.


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