1

長方形を使用して画像のさまざまな部分に注釈を付けることができる小さなアプリケーションを開発したいと思います。たとえば、ユーザーは「頭」というラベルの付いた画像の上に長方形を描くことができ、このアプリはこの長方形のパラメーター(高さ、幅、中心座標など)を取得できます。特定の領域を選択するために、この長方形を回転させる必要がある場合もあります。

Qtを使用してアイデアを実装したいのですが、次の方法がわかりません。

  1. 描画された長方形ユーザーのパラメーターを取得します。(高さ、幅、中心座標...)
  2. 長方形を回転させて回転角を取得する方法。
4

1 に答える 1

1

ユーザーが四角形を描画するには、描画ウィジェットで発生するマウス イベントを取得する必要があります。ウィジェットのmousePressEventmouseMoveEvent、を再実装するか、このウィジェットにイベント フィルタmouseReleaseEventをインストールできます。ユーザーが左ボタンを押すと、イベントが長方形の左上隅として記憶されます。その後、ユーザーがマウスを移動すると、move イベントの長方形 ro の右下隅を設定する必要があります。ボタンを離すと、長方形の作成がコミットされる必要があります。pos()pos()

長方形を描く方法はいくつかあります。paintEventを実装し、その中でQPainterを使用できます。しかし、最善の方法はQGraphicsSceneを使用することだと思います。目に見える長方形を作成し、それらを移動および回転できます。

于 2012-07-08T13:59:25.427 に答える