Referencia de la Clase QCPPainter

QPainter subclass used internally. Más...

Diagrama de herencias de QCPPainter

## Tipos públicos

enum | PainterMode { pmDefault = 0x00, pmVectorized = 0x01, pmNoCaching = 0x02, pmNonCosmetic = 0x04 }

## Métodos públicos

| QCPPainter ()
| QCPPainter (QPaintDevice *device)
bool | antialiasing () const
PainterModes | modes () const
void | setAntialiasing (bool enabled)
void | setMode (PainterMode mode, bool enabled=true)
void | setModes (PainterModes modes)
bool | begin (QPaintDevice *device)
void | setPen (const QPen &pen)
void | setPen (const QColor &color)
void | setPen (Qt::PenStyle penStyle)
void | drawLine (const QLineF &line)
void | drawLine (const QPointF &p1, const QPointF &p2)
void | save ()
void | restore ()
void | makeNonCosmetic ()

## Atributos protegidos

PainterModes | mModes
bool | mIsAntialiasing
QStack< bool > | mAntialiasingStack

## Descripción detallada

QPainter subclass used internally.

This internal class is used to provide some extended functionality e.g. for tweaking position consistency between antialiased and non-antialiased painting. Further it provides workarounds for QPainter quirks.

Atención
  This class intentionally hides non-virtual functions of QPainter, e.g. setPen, save and restore. So while it is possible to pass a QCPPainter instance to a function that expects a QPainter pointer, some of the workarounds and tweaks will be unavailable to the function (because it will call the base class implementations of the functions actually hidden by QCPPainter).

## Documentación de las enumeraciones miembro de la clase

enum QCPPainter::PainterMode

Defines special modes the painter can operate in. They disable or enable certain subsets of features/fixes/workarounds, depending on whether they are wanted on the respective output device.

Valores de enumeraciones
pmDefault | `0x00` Default mode for painting on screen devices
pmVectorized | `0x01` Mode for vectorized painting (e.g. PDF export). For example, this prevents some antialiasing fixes.
pmNoCaching | `0x02` Mode for all sorts of exports (e.g. PNG, PDF,...). For example, this prevents using cached pixmap labels
pmNonCosmetic | `0x04` Turns pen widths 0 to 1, i.e. disables cosmetic pens. (A cosmetic pen is always drawn with width 1 pixel in the vector image/pdf viewer, independent of zoom.)

## Documentación del constructor y destructor

QCPPainter::QCPPainter | ( |  | ) |

Creates a new QCPPainter instance and sets default values

QCPPainter::QCPPainter | ( | QPaintDevice * | device | ) |

Creates a new QCPPainter instance on the specified paint device and sets default values. Just like the analogous QPainter constructor, begins painting on device immediately.

Like begin, this method sets QPainter::NonCosmeticDefaultPen in Qt versions before Qt5.

## Documentación de las funciones miembro

bool QCPPainter::begin | ( | QPaintDevice * | device | ) |

Sets the QPainter::NonCosmeticDefaultPen in Qt versions before Qt5 after beginning painting on device. This is necessary to get cosmetic pen consistency across Qt versions, because since Qt5, all pens are non-cosmetic by default, and in Qt4 this render hint must be set to get that behaviour.

The Constructor QCPPainter(QPaintDevice *device) which directly starts painting also sets the render hint as appropriate.

Nota
  this function hides the non-virtual base class implementation.

void QCPPainter::drawLine | ( | const QLineF & | line | ) |

Esta es una función miembro sobrecargada que se suministra por conveniencia. Difiere de la anterior función solamente en los argumentos que acepta.

Works around a Qt bug introduced with Qt 4.8 which makes drawing QLineF unpredictable when antialiasing is disabled. Thus when antialiasing is disabled, it rounds the line to integer coordinates and then passes it to the original drawLine.

Nota
  this function hides the non-virtual base class implementation.

void QCPPainter::makeNonCosmetic | ( |  | ) |

Changes the pen width to 1 if it currently is 0. This function is called in the setPen overrides when the pmNonCosmetic mode is set.

void QCPPainter::restore | ( |  | ) |

Restores the painter (see QPainter::restore). Since QCPPainter adds some new internal state to QPainter, the save/restore functions are reimplemented to also save/restore those members.

Nota
  this function hides the non-virtual base class implementation.

Ver también
  save

void QCPPainter::save | ( |  | ) |

Saves the painter (see QPainter::save). Since QCPPainter adds some new internal state to QPainter, the save/restore functions are reimplemented to also save/restore those members.

Nota
  this function hides the non-virtual base class implementation.

Ver también
  restore

void QCPPainter::setAntialiasing | ( | bool | enabled | ) |

Sets whether painting uses antialiasing or not. Use this method instead of using setRenderHint with QPainter::Antialiasing directly, as it allows QCPPainter to regain pixel exactness between antialiased and non-antialiased painting (Since Qt < 5.0 uses slightly different coordinate systems for AA/Non-AA painting).

void QCPPainter::setMode | ( | QCPPainter::PainterMode | mode,
|  | bool | enabled = `true`
| ) |  |

Esta es una función miembro sobrecargada que se suministra por conveniencia. Difiere de la anterior función solamente en los argumentos que acepta.

Sets the mode of the painter. This controls whether the painter shall adjust its fixes/workarounds optimized for certain output devices.

void QCPPainter::setModes | ( | PainterModes | modes | ) |

Sets the mode of the painter. This controls whether the painter shall adjust its fixes/workarounds optimized for certain output devices.

void QCPPainter::setPen | ( | const QPen & | pen | ) |

Sets the pen of the painter and applies certain fixes to it, depending on the mode of this QCPPainter.

Nota
  this function hides the non-virtual base class implementation.

void QCPPainter::setPen | ( | const QColor & | color | ) |

Esta es una función miembro sobrecargada que se suministra por conveniencia. Difiere de la anterior función solamente en los argumentos que acepta.

Sets the pen (by color) of the painter and applies certain fixes to it, depending on the mode of this QCPPainter.

Nota
  this function hides the non-virtual base class implementation.

void QCPPainter::setPen | ( | Qt::PenStyle | penStyle | ) |

Esta es una función miembro sobrecargada que se suministra por conveniencia. Difiere de la anterior función solamente en los argumentos que acepta.

Sets the pen (by style) of the painter and applies certain fixes to it, depending on the mode of this QCPPainter.

Nota
  this function hides the non-virtual base class implementation.

La documentación para esta clase fue generada a partir de los siguientes ficheros:

- qcustomplot.h
- qcustomplot.cpp