1

シーンのあるポイントで始まり、ある角度で無限に続くライン(QGraphicsLineItem)を作成する最良の方法は何ですか。

私が現在これを行う方法は、線がビューと交差するかどうかを計算し、線分を描画することです。

もっと良い方法はありますか?

たとえば、行の長さをかなりの数に設定できますか?

4

1 に答える 1

0

その paint() および shape() 関数を定義して、シーン内、つまり qgraphicsview の可視部分内で利用可能で必要なすべてのスペースを常に使用するようにすることができます。

ガイドライン:

  • qgraphicsview、qgraphicsscene、qgraphicsitem (mapToScene、mapToItem、mapToView など) のマッピング関数を調べる
  • (上記のマッピング関数を使用して)ビュー全体で線が正確に長いかのように、 shape() および paint() 関数を定義します

したがって、ユーザーがどのようにビューを移動しても、repaint は qgraphicsview によって使用されるスペースを調べ、正確にその長さを描画します。線が延々と続く錯覚が生まれます。

于 2012-05-19T19:40:03.177 に答える