He escrito una función que debe dibujar un círculo negro lleno en mi escena de gráficos. La función dibuja un círculo negro alineado pero no se llena? Este es mi función:dibujar un círculo lleno
void World::damage(int x, int y)
{
QPainter painter(&worldImage);
painter.setBrush(QBrush(Qt::black));
painter.drawArc(x,y,150,50,0,16*360);
item = new QGraphicsPixmapItem(QPixmap::fromImage(worldImage));
this->addItem(item);
}
saludos cordiales,
Hola, ¿esto no causará un redibujado cada vez que el widget entre en la ventana gráfica o el usuario edite alguna otra parte del widget? ¿No será eso caro? ¿No hay una manera de dibujarlo de una vez? – SexyBeast
El sistema de pintura Qt intenta optimizar cuando se disparan los eventos de pintura para reducir el repintado innecesario tanto como sea posible y es suficiente en la mayoría de los casos. Si una operación de pintura es compleja o se repinta con frecuencia, se pueden introducir optimizaciones como usted menciona al pintar en un mapa de píxeles y almacenarlo en caché. –