mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2025-01-14 02:30:35 +05:00
Mantis issue 0021934: Delete the internal faces of an object. Correction to avoid errors on not suitable arguments.
This commit is contained in:
parent
8c5cdd2d44
commit
182542382e
@ -458,9 +458,7 @@ Standard_Boolean GEOMImpl_HealingDriver::RemoveInternalFaces (const TopoDS_Shape
|
|||||||
aTool.SetShape(theOriginalShape);
|
aTool.SetShape(theOriginalShape);
|
||||||
aTool.Perform();
|
aTool.Perform();
|
||||||
|
|
||||||
if (aTool.ErrorStatus() != 0)
|
if (aTool.ErrorStatus() == 0) { // OK
|
||||||
StdFail_NotDone::Raise("GEOMAlgo_RemoverWebs failed!");
|
|
||||||
|
|
||||||
theOutShape = aTool.Result();
|
theOutShape = aTool.Result();
|
||||||
|
|
||||||
// as GEOMAlgo_RemoverWebs always produces compound, lets simplify it
|
// as GEOMAlgo_RemoverWebs always produces compound, lets simplify it
|
||||||
@ -470,6 +468,11 @@ Standard_Boolean GEOMImpl_HealingDriver::RemoveInternalFaces (const TopoDS_Shape
|
|||||||
if (listShapeRes.Extent() == 1) {
|
if (listShapeRes.Extent() == 1) {
|
||||||
theOutShape = listShapeRes.First();
|
theOutShape = listShapeRes.First();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
else if (aTool.ErrorStatus() == 11) // invalid argument (contains non-solids), do nothing
|
||||||
|
theOutShape = theOriginalShape;
|
||||||
|
else // error
|
||||||
|
StdFail_NotDone::Raise("GEOMAlgo_RemoverWebs failed!");
|
||||||
|
|
||||||
return Standard_True;
|
return Standard_True;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user