From 9602e22c3d63d8a2f217c82b2896785dca1d938f Mon Sep 17 00:00:00 2001 From: wmayer Date: Sat, 11 Aug 2018 14:36:50 +0200 Subject: [PATCH] compute the actual placement to apply instead of transforming the points twice --- src/Mod/Mesh/App/Exporter.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/Mod/Mesh/App/Exporter.cpp b/src/Mod/Mesh/App/Exporter.cpp index 5b839c1044..b921828c9c 100644 --- a/src/Mod/Mesh/App/Exporter.cpp +++ b/src/Mod/Mesh/App/Exporter.cpp @@ -183,7 +183,6 @@ bool MergeExporter::addPartFeat(App::DocumentObject *obj, float tol) App::GeoFeature* gf = static_cast(obj); Base::Placement plm = gf->globalPlacement(); Base::Placement pl = gf->Placement.getValue(); - Base::Placement plInverse = pl.inverse(); bool applyGlobal = false; if (pl == plm) { //no extension placement @@ -198,9 +197,9 @@ bool MergeExporter::addPartFeat(App::DocumentObject *obj, float tol) geoData->getFaces(aPoints, aTopo, tol); if (applyGlobal) { + Base::Placement diff_plm = plm * pl.inverse(); for (auto& it : aPoints) { - plInverse.multVec(it,it); - plm.multVec(it, it); + diff_plm.multVec(it,it); } }