QList<QGraphicsItem *> collidingItems = tile->collidingItems(Qt::IntersectsItemBoundingRect);
foreach (QGraphicsItem *item, collidingItems) {
-
- QRectF itemSceneRect = item->mapRectToScene(item->boundingRect());
- QList<QGraphicsItem *> stackedItems = m_mapScene->items(itemSceneRect, Qt::IntersectsItemBoundingRect);
-
- foreach(QGraphicsItem *stackedItem, stackedItems) {
- if (item != stackedItem) {
- MapTile *tmp = dynamic_cast<MapTile *>(item);
- if (tmp) {
- m_mapScene->removeItem(tmp);
- mapTilesInScene.remove(tilePath(tmp->zoomLevel(), tmp->x(), tmp->y()));
+ if (item != tile) {
+ QRectF itemSceneRect = item->mapRectToScene(item->boundingRect());
+ QList<QGraphicsItem *> stackedItems = m_mapScene->items(itemSceneRect, Qt::IntersectsItemBoundingRect);
+
+ foreach(QGraphicsItem *stackedItem, stackedItems) {
+ if (item != stackedItem) {
+ MapTile *tmp = dynamic_cast<MapTile *>(item);
+ if (tmp) {
+ m_mapScene->removeItem(tmp);
+ mapTilesInScene.remove(tilePath(tmp->zoomLevel(), tmp->x(), tmp->y()));
+ }
}
}
}