c++ - How to restore the state of a QPainter after drawing -


to move images on screen, using 2 translate function. because of using 2 translate function position value in first translate adding 2nd translate function. how clear first translate function value. below code:

painter->translate(100,100); painter->drawpixmap(uavicon->m_paintposition, *uavicon->m_icon);  painter->translate(100,100); painter->drawpixmap(targeticon->m_paintposition, *target->m_icon); 

second image placing @ (200,200)

you need save , restore state of painter when change coordinates system using qpainter::save() , qpainter::restore() functions:

painter->save(); painter->translate(100,100); painter->drawpixmap(uavicon->m_paintposition, *uavicon->m_icon); painter->restore();  painter->save(); painter->translate(100,100); painter->drawpixmap(targeticon->m_paintposition, *target->m_icon); painter->restore(); 

Comments