че мудрить???
бери QPoligon и пихай в него 3 точки (предположим что рисуем только наконечник стрелочки)
QPoligon poligon;
polygon << QPoint( 0, -arrow_width );
polygon << QPoint( -arrow_len, 0 );
polygon << QPoint( 0, arrow_width );
--- фактически получили наконечник направленный вниз (возьми тетрадку вклеточку поставь 0,0 в произвольной точке и проставь мои точки туда, потом соедини линиями)
там где ты рисуешь делай так: painter->drawConvexPolygon( polygon );
или если надо повернуть на заданный угол:
painter->save();
double arrowAngle =

???НАДО ЗАДАТЬ;
painter->rotate( -arrowAngle );
painter->drawConvexPolygon( polygon );
painter->restore();
вот чего мне удаось добиться таким способом - в рисунке: