Pregunta

Quiero dibujar un objeto triangular en QGraphicsView utilizando QGraphicsItem. Pero no sé cómo implementar rect de delimitación según triangler.

¿Fue útil?

Solución

Se puede usar un QGraphicsPolygonItem.

Sólo tiene que describir un polígono triángulo con QPolygonF y luego añadirlo a su escena con 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);

De esta manera, todo se maneja por Qt, usted no tiene que preocuparse acerca de delimitación rect.

Otros consejos

Para dibujar el triángulo que necesita 3 puntos y trazar la línea entre ellos. Subclase el QGraphicsItem y en el método de pintura de la subclase triángulo empate clase más adelante establecer el elemento de QGraphicsScene a continuación, añadir la escena a QGraphicsView.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top