Own iterator geometry results

Return independent geometry copies with unique ownership, preserve parent lifetimes, and teach the Python wrapper to own derived results. Keep serializer inputs non-owning and replace Collada's deferred object with copied triangulation elements.\n\nGenerated with the assistance of an AI coding tool.
This commit is contained in:
Thomas Krijnen
2026-08-08 15:18:51 +02:00
parent c30841aad6
commit 4e49b640a7
14 changed files with 134 additions and 134 deletions
+2 -1
View File
@@ -539,7 +539,8 @@ void GeometryStreamer::run(const std::string& path, int num_threads) {
do {
if (cancel_requested_.load()) break;
const ifcopenshell::geom::element* elem = iterator->get();
auto element = iterator->get();
const ifcopenshell::geom::element* elem = element.get();
if (!elem) continue;
const auto* tri_elem = dynamic_cast<const ifcopenshell::geom::triangulation_element*>(elem);