diff --git a/src/Mod/PartDesign/Gui/ViewProviderLoft.cpp b/src/Mod/PartDesign/Gui/ViewProviderLoft.cpp index f761b44f74..fb8fe9c3a8 100644 --- a/src/Mod/PartDesign/Gui/ViewProviderLoft.cpp +++ b/src/Mod/PartDesign/Gui/ViewProviderLoft.cpp @@ -56,10 +56,18 @@ ViewProviderLoft::~ViewProviderLoft() std::vector ViewProviderLoft::claimChildren(void)const { std::vector temp; - App::DocumentObject* sketch = static_cast(getObject())->getVerifiedSketch(true); + + PartDesign::Loft* pcLoft = static_cast(getObject()); + + App::DocumentObject* sketch = pcLoft->getVerifiedSketch(true); if (sketch != NULL) temp.push_back(sketch); + for(App::DocumentObject* obj : pcLoft->Sections.getValues()) { + if (obj != NULL) + temp.push_back(obj); + } + return temp; } diff --git a/src/Mod/PartDesign/Gui/ViewProviderPipe.cpp b/src/Mod/PartDesign/Gui/ViewProviderPipe.cpp index b995f00945..e552db24db 100644 --- a/src/Mod/PartDesign/Gui/ViewProviderPipe.cpp +++ b/src/Mod/PartDesign/Gui/ViewProviderPipe.cpp @@ -56,10 +56,21 @@ ViewProviderPipe::~ViewProviderPipe() std::vector ViewProviderPipe::claimChildren(void)const { std::vector temp; - App::DocumentObject* sketch = static_cast(getObject())->getVerifiedSketch(true); + + PartDesign::Pipe* pcPipe = static_cast(getObject()); + + App::DocumentObject* sketch = pcPipe->getVerifiedSketch(true); if (sketch != NULL) temp.push_back(sketch); + App::DocumentObject* spine = pcPipe->Spine.getValue(); + if (spine != NULL) + temp.push_back(spine); + + App::DocumentObject* auxspine = pcPipe->AuxillerySpine.getValue(); + if (auxspine != NULL) + temp.push_back(auxspine); + return temp; }