From 9d03a07005de7b4bf88b9f4dde981263cbefa98e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adri=C3=A1n=20Insaurralde=20Avalos?= Date: Sat, 11 Nov 2023 15:10:35 -0300 Subject: [PATCH] Fix 10545 by using position of array members --- src/Mod/Mesh/App/Exporter.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Mod/Mesh/App/Exporter.cpp b/src/Mod/Mesh/App/Exporter.cpp index bd2e4f5cfb..09e29e4934 100644 --- a/src/Mod/Mesh/App/Exporter.cpp +++ b/src/Mod/Mesh/App/Exporter.cpp @@ -102,7 +102,7 @@ int Exporter::addObject(App::DocumentObject *obj, float tol) for (std::string & sub : expandSubObjectNames(obj, subObjectNameCache, 0)) { Base::Matrix4D matrix; auto sobj = obj->getSubObject(sub.c_str(), nullptr, &matrix); - auto linked = sobj->getLinkedObject(true, &matrix, false); + auto linked = sobj->getLinkedObject(true, &matrix, true); auto it = meshCache.find(linked); if (it == meshCache.end()) { if (linked->isDerivedFrom(Mesh::Feature::getClassTypeId())) { @@ -128,6 +128,9 @@ int Exporter::addObject(App::DocumentObject *obj, float tol) Py_DECREF(pyobj); } } + else if (it->second.getTransform() != matrix) { + it->second.setTransform(matrix); + } // Add a new mesh if (it != meshCache.end()) {