mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2025-01-28 09:10:33 +05:00
Mantis issue 0021525: EDF GEOM: Tolerance deggradation issue and partition failure
This commit is contained in:
parent
722fbca6f9
commit
39e0fe04d9
@ -2222,6 +2222,11 @@ static TopoDS_Shape CreatePipeBiNormalAlongVector(const TopoDS_Wire& aWirePath,
|
|||||||
Standard_NullObject::Raise("MakePipe aborted : null base argument");
|
Standard_NullObject::Raise("MakePipe aborted : null base argument");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Make copy to prevent modifying of base object: 0021525
|
||||||
|
BRepBuilderAPI_Copy Copy (aShapeBase);
|
||||||
|
if (Copy.IsDone())
|
||||||
|
aShapeBase = Copy.Shape();
|
||||||
|
|
||||||
TopoDS_Shape aProf;
|
TopoDS_Shape aProf;
|
||||||
if (aShapeBase.ShapeType() == TopAbs_VERTEX) {
|
if (aShapeBase.ShapeType() == TopAbs_VERTEX) {
|
||||||
aProf = aShapeBase;
|
aProf = aShapeBase;
|
||||||
@ -2233,14 +2238,14 @@ static TopoDS_Shape CreatePipeBiNormalAlongVector(const TopoDS_Wire& aWirePath,
|
|||||||
aProf = aShapeBase;
|
aProf = aShapeBase;
|
||||||
}
|
}
|
||||||
else if (aShapeBase.ShapeType() == TopAbs_FACE) {
|
else if (aShapeBase.ShapeType() == TopAbs_FACE) {
|
||||||
TopExp_Explorer wexp(aShapeBase,TopAbs_WIRE);
|
TopExp_Explorer wexp (aShapeBase,TopAbs_WIRE);
|
||||||
aProf = wexp.Current();
|
aProf = wexp.Current();
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Standard_TypeMismatch::Raise
|
Standard_TypeMismatch::Raise
|
||||||
("MakePipe aborted : invalid type of base");
|
("MakePipe aborted : invalid type of base");
|
||||||
}
|
}
|
||||||
BRepOffsetAPI_MakePipeShell PipeBuilder(aWirePath);
|
BRepOffsetAPI_MakePipeShell PipeBuilder (aWirePath);
|
||||||
PipeBuilder.Add(aProf);
|
PipeBuilder.Add(aProf);
|
||||||
|
|
||||||
if (aShapeVec.IsNull()) {
|
if (aShapeVec.IsNull()) {
|
||||||
|
Loading…
Reference in New Issue
Block a user