Ho reimplementato QGraphicsView per ingrandire la scena con un evento rotellina del mouse. La scena contiene diversi QGraphicsPixmapItem. L'evento ruota chiama QGraphicsView :: scale (qreal sx, qreal sy)Antialiasing non funziona in QGraphicsView
Tutto funziona perfettamente ma il rendering. Mentre faccio lo zoom indietro (la scena diventa più piccola), appare l'aliasing. Ho provato a installare i suggerimenti rendering come segue nella re-implementato QGraphicsView costruttore:
ImageViewer::ImageViewer(QWidget * parent) :
QGraphicsView(parent)
{
setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform | QPainter::HighQualityAntialiasing);
}
continuo a vedere questi artefatti. Come posso liberarmi di questo ?
Puoi pubblicare uno screenshot di cosa sta succedendo? Stai impostando una strategia di caching sugli articoli? – peppe
Grazie @peppe! Non sto impostando nulla sulla memorizzazione nella cache, quindi suppongo che sia l'impostazione predefinita. Ecco un esempio di come appare [prima] (https://lh6.googleusercontent.com/-e2pH06jhy94/Ue09l8A1SWI/AAAAAAAAAY08/YGa-wj9ollY/w958-h599-no/Fullscreen+capture+7222013+100003+AM.jpg) (Rapporto 1: 1 pixel) e [successivo] (https://lh4.googleusercontent.com/-PZJVX0jl6yw/Ue09mo_Iu2I/AAAAAAAAY1E/nMf28uA9MlE/w958-h599-no/Fullscreen+capture+7222013+100007+AM.jpg) (meno di 1: 1 pixel ratio) che rimpicciolisce. Vedrai qualche aliasing nei cerchi concentrici. – Algo