git-svn-id: svn://db.shs.com.ru/libs@674 a8b55f48-bf90-11e4-a774-851b48703e85

This commit is contained in:
2019-12-10 22:42:08 +00:00
parent a6c90148b0
commit 816d905446

View File

@@ -254,11 +254,17 @@ ObjectBase * Scene::selectedObject() const {
}
void gatherMeshes(ObjectBase * o, QSet<Mesh*> & ums) {
if (o->mesh()) ums << o->mesh();
for (int i = 0; i < o->childCount(); ++i)
gatherMeshes(o->child(i), ums);
}
void Scene::cleanUnused() {
QSet<Mesh*> ums;
QMapIterator<int, QMap<Mesh*, ObjectBaseList>> it(geometries_used);
gatherMeshes(root_, ums);
/*QMapIterator<int, QMap<Mesh*, ObjectBaseList>> it(geometries_used);
while (it.hasNext())
ums |= it.next().value().keys().toSet();
ums |= it.next().value().keys().toSet();*/
for (int i = 0; i < geometries.size(); ++i) {
if (ums.contains(geometries[i])) continue;
td_geometries << geometries[i];