如何创建一个无限长的线

时间:2012-05-17 07:13:48

标签: qt qgraphicsview scene

什么是创建一条线(QGraphicsLineItem)的最佳方式,该线从场景的某个点开始并以某个角度继续无限。

我目前这样做的方法是计算线是否与视图相交并绘制线段。

有更好的方法吗?

我可以举例说明将行长度设置为一个大数字吗?

1 个答案:

答案 0 :(得分:0)

您可以定义其paint()和shape()函数,以便它们始终使用场景内可用且需要的所有空间,即在qgraphicsview的可见部分内。

准则:

  • 检查qgraphicsview,qgraphicsscene和。的映射函数 qgraphicsitem(mapToScene,mapToItem,mapToView或类似的东西)
  • 定义你的shape()和paint()函数就像你的一样 line在整个视图中都很长(通过使用上面的映射函数)

因此,用户如何移动他的视图,重绘将检查qgraphicsview使用的空间并绘制那么长的时间。创造了一条错觉,线条继续进行。