QGraphicsView でノード グラフを作成しており、現在パンニングを実装しています。次の質問「QGraphicsViewで画像をパンする方法」を使用して開始しましたが、パンはスクロールバーの範囲によって制限されています。
translate メソッドも試しましたが、同じ結果が得られます。ビューは特定の長方形に限定されます。
制限なくパンしたいのですが、グラフが非常に大きくなる可能性があり、シーンのさまざまな領域で作業できると便利です (ここにあるグラフ、あそこにある別のグラフなど)。
QGraphicsView でノード グラフを作成しており、現在パンニングを実装しています。次の質問「QGraphicsViewで画像をパンする方法」を使用して開始しましたが、パンはスクロールバーの範囲によって制限されています。
translate メソッドも試しましたが、同じ結果が得られます。ビューは特定の長方形に限定されます。
制限なくパンしたいのですが、グラフが非常に大きくなる可能性があり、シーンのさまざまな領域で作業できると便利です (ここにあるグラフ、あそこにある別のグラフなど)。
このビデオを見ると、3 分の時点で画面をパンするデモが表示されます。ここでのアプリケーションは私が開発したもので、表示されていませんが、パンするとボードの領域が無限に表示されます。
このために私が行ったことは、32000 x 32000 の QGraphicsScene を作成し、QGraphicsScene の中心にあるビューでアプリケーションを開始することでした。テスト チームは何年もかけてグラフィック シーンの端までパンしようとしましたが、そこにたどり着く前に誰もがあきらめました。
スクロール バー ポリシーはオフに設定され、変換は QGraphicsView をその変換関数を介して移動し、タッチまたは mouseMoveEvent に適用されるマウス移動のデルタを渡すことによって行われます。
このようにすると、スクロール バーの範囲を超えることを心配する必要がなくなり、非常に大きな QGraphicsScene を作成しても問題はありません。これは単なる座標空間だからです。
グラフをプロットしたい。この Qt ライブラリ - QCustomPlotを試してみてください。何時間もの労力を節約できます。