3

QGraphicsViewを使用して三角形のオブジェクトを描画したいと思いますQGraphicsItem。しかし、trianglerに従ってバウンディングrectを実装する方法がわかりません。

4

2 に答える 2

8

を使用できますQGraphicsPolygonItem

で三角形のポリゴンを記述しQPolygonF、それをQGraphicsScene :: addPolygon()でシーンに追加するだけです。

// Describe a closed triangle
QPolygonF Triangle;
Triangle.append(QPointF(-10.,0));
Triangle.append(QPointF(0.,-10));
Triangle.append(QPointF(10.,0));
Triangle.append(QPointF(-10.,0));

// Add the triangle polygon to the scene
QGraphicsPolygonItem* pTriangleItem = pScene->addPolygon(Triangle);

このように、すべてがQtによって処理されるため、長方形の境界について心配する必要はありません。

于 2010-10-19T07:15:43.683 に答える
0

三角形を描くには、3つのポイントが必要で、それらの間に線を引きます。サブクラスQGraphicsItemとをサブクラスクラスのpaintメソッドで三角形を描画し、後でアイテムを設定しQGraphicsSceneてシーンをに追加しQGraphicsViewます。

于 2010-10-19T07:03:34.633 に答える