float x1 = lastPoint.x(); //lastPoint 起点 float y1 = lastPoint.y(); float x2 = endPoint.x(); //endPoint 终点 float y2 = endPoint.y(); float l = 10.0; //箭头的那长度 float a = 0.5; //箭头与线段角度 float x3 = x2 - l * cos(atan2((y2 - y1) , (x2 - x1)) - a); float y3 = y2 - l * sin(atan2((y2 - y1) , (x2 - x1)) - a); float x4 = x2 - l * sin(atan2((x2 - x1) , (y2 - y1)) - a); float y4 = y2 - l * cos(atan2((x2 - x1) , (y2 - y1)) - a); painter.drawLine(x1,y1,x3,y3); painter.drawLine(x1,y1,x4,y4); painter.drawLine(lastPoint,endPoint);
发现网上关于Qt画带箭头直线搜索词太少,楼主本着不想自己动脑子,网找一个的,竟然一个没有,就算有也扯淡一样的,没有一点帮助。
自己搞了一个,本人数学不好,如有更好的,希望各位分享一下。