View Full Version : QGraphicsScene doesnt apply prepareGeometryChange and crash

5th August 2015, 06:37
Hi everybody, I'm using Qt 5.4 and it seems prepareGeometryChange doesn't work correctly!!

I create a RouteItem inherit from qgraphicsobject include some lines and some nodes ( Node is another qgraphicsitems with fixed boundingrect ). when I move my nodes or change scale of my scene the RouteItem's shape changed and I call the prepareGeometryChange function of qgraphicsitem.

Everything looks OK I can select my item or right click on it, but strange problem happened when I want to delete one RouteItem, program crashed on the QGraphicsSceneFindItemBsbTreeVisitor::visit ??

this is my deletion code

void RouteItem::deleteRoute()
prepareGeometryChange(); // add if I forgot to call it before
m_parentScene->update(); // add this line for taking effect of prepareGeometryChange and recalculate items boundry

foreach(Waypoint* nd, nodeList) {

QPainterPath shape() const
QPainterPathStrocker strocker;
// read all nodes calculate some geographical equations and create a path from items positions
return strocker.createStroke(path);

QRectF boundingRect() const
return shape().boundingRect();
return QRectF();

thanks in advance.