Помнится
здесь обсуждали аналогичные тормоза при использовании QPainter::drawPolyline().
Потом выяснилось, что тролли подтвердили проблему:
Short of replacing the Freetype rasterizer or add some hacks that will only work in certain edge cases there's not much that can be done. I recommend that you instead draw the polyline as individual line segments using QPainter::drawLine, then the stroked outline won't be treated as one big complex path and performance should be way better.
Вполне возможно, что корни проблем одни и те же.
Попробуйте рисовать линии отдельно.