PartDesign: improve offset handling of SubShapeBinder

This commit is contained in:
0penBrain
2022-09-04 15:18:58 +02:00
committed by Uwe
parent 4d6f7bd8b0
commit 4bfc6a082a

View File

@@ -729,7 +729,20 @@ void SubShapeBinder::update(SubShapeBinder::UpdateOption options) {
}
}
if (!fused && result.hasSubShape(TopAbs_EDGE)
if (!fused && (MakeFace.getValue() || Offset.getValue() != 0.0)
&& !result.hasSubShape(TopAbs_FACE)
&& result.hasSubShape(TopAbs_EDGE))
{
result = result.makeWires();
if (MakeFace.getValue()) {
try {
result = result.makeFace(nullptr);
}
catch (...) {}
}
}
if (!fused && result.hasSubShape(TopAbs_WIRE)
&& Offset.getValue() != 0.0) {
try {
result = result.makeOffset2D(Offset.getValue(),
@@ -745,17 +758,6 @@ void SubShapeBinder::update(SubShapeBinder::UpdateOption options) {
}
}
if (!fused && MakeFace.getValue()
&& !result.hasSubShape(TopAbs_FACE)
&& result.hasSubShape(TopAbs_EDGE))
{
result = result.makeWires();
try {
result = result.makeFace(nullptr);
}
catch (...) {}
}
if (Refine.getValue())
result = result.makeRefine();