From 48f0f3c671f5c6ed1d5a17496417dff62fb183c8 Mon Sep 17 00:00:00 2001 From: "Zheng, Lei" Date: Fri, 27 Mar 2020 12:41:38 +0800 Subject: [PATCH] Part: fix Feature::getTopoShape() for link array with LinkTransform --- src/Mod/Part/App/PartFeature.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Mod/Part/App/PartFeature.cpp b/src/Mod/Part/App/PartFeature.cpp index 47dc264ba7..85b5469e58 100644 --- a/src/Mod/Part/App/PartFeature.cpp +++ b/src/Mod/Part/App/PartFeature.cpp @@ -407,9 +407,10 @@ static TopoShape _getTopoShape(const App::DocumentObject *obj, const char *subna // not return the linked object when calling getLinkedObject(). // Therefore, it should be handled here. TopoShape baseShape; + Base::Matrix4D baseMat; std::string op; if(link && link->getElementCountValue()) { - linked = link->getTrueLinkedObject(false); + linked = link->getTrueLinkedObject(false,&baseMat); if(linked && linked!=owner) { baseShape = Feature::getTopoShape(linked,0,false,0,0,false,false); // if(!link->getShowElementValue()) @@ -421,7 +422,7 @@ static TopoShape _getTopoShape(const App::DocumentObject *obj, const char *subna int visible; std::string childName; App::DocumentObject *parent=0; - Base::Matrix4D mat; + Base::Matrix4D mat = baseMat; App::DocumentObject *subObj=0; if(sub.find('.')==std::string::npos) visible = 1;