ibrahimyilmaz ibrahimyilmaz - 3 months ago 19
C++ Question

How to draw a triangle by using QGraphicsView's QGraphicsItem class

I want to draw a triangular object in

QGraphicsView
by using
QGraphicsItem
. But I don't know how to implement bounding rect according to triangler.

Answer

You could use a QGraphicsPolygonItem.

You just have to describe a triangle polygon with QPolygonF and then add it to your scene with 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);

This way, everything is handled by Qt, you don't have to worry about bounding rect.