diff --git a/src/Mod/PartDesign/App/Body.cpp b/src/Mod/PartDesign/App/Body.cpp index 3c20e92e0e..d8195fa649 100644 --- a/src/Mod/PartDesign/App/Body.cpp +++ b/src/Mod/PartDesign/App/Body.cpp @@ -229,7 +229,8 @@ bool Body::isSolidFeature(const App::DocumentObject* f) if (f == NULL) return false; - if (f->getTypeId().isDerivedFrom(PartDesign::Feature::getClassTypeId())) { + if (f->getTypeId().isDerivedFrom(PartDesign::Feature::getClassTypeId()) && + !PartDesign::Feature::isDatum(f)) { // Transformed Features inside a MultiTransform are not solid features return !isMemberOfMultiTransform(f); } diff --git a/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp b/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp index f0d202e285..9eb464b2f5 100644 --- a/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp @@ -190,7 +190,9 @@ void TaskMirroredParameters::onSelectionChanged(const Gui::SelectionChanges& msg if(!selObj) return; // Note: ReferenceSelection has already checked the selection for validity - if ( selectionMode == reference || selObj->isDerivedFrom ( App::Plane::getClassTypeId () ) ) { + if ( selectionMode == reference || + selObj->isDerivedFrom ( App::Plane::getClassTypeId () ) || + selObj->isDerivedFrom(PartDesign::Plane::getClassTypeId())) { pcMirrored->MirrorPlane.setValue(selObj, mirrorPlanes); recomputeFeature(); diff --git a/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp b/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp index bacfad8744..3982963cd8 100644 --- a/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp @@ -231,7 +231,9 @@ void TaskPolarPatternParameters::onSelectionChanged(const Gui::SelectionChanges& if(!selObj) return; // Note: ReferenceSelection has already checked the selection for validity - if ( selectionMode == reference || selObj->isDerivedFrom ( App::Line::getClassTypeId () ) ) { + if ( selectionMode == reference || + selObj->isDerivedFrom ( App::Line::getClassTypeId () ) || + selObj->isDerivedFrom(PartDesign::Line::getClassTypeId()) ) { pcPolarPattern->Axis.setValue(selObj, axes); recomputeFeature();