mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2024-12-27 09:50:34 +05:00
0022870: EDF 10111 GEOM: MakePipe of a wire along an edge fails.
This commit is contained in:
parent
80a0257573
commit
c389c09498
@ -108,6 +108,8 @@
|
||||
#define GROUP_SIDE2 3
|
||||
#define GROUP_OTHER 4
|
||||
|
||||
static const Standard_Real TolPipeSurf = 5.e-4;
|
||||
|
||||
static bool FillGroups(const TopTools_SequenceOfShape *theGroups,
|
||||
const TopTools_IndexedMapOfShape &theIndices,
|
||||
Handle(TColStd_HArray1OfInteger) *theGroupIds);
|
||||
@ -182,7 +184,8 @@ static Standard_Boolean BuildPipeShell(BRepOffsetAPI_MakePipeShell &theBuilder)
|
||||
|
||||
Standard_Boolean isDone = theBuilder.IsDone();
|
||||
|
||||
if (!isDone) {
|
||||
if (!isDone ||
|
||||
theBuilder.ErrorOnSurface() > TolPipeSurf) {
|
||||
// Try to use Descrete Trihedron mode.
|
||||
theBuilder.SetDiscreteMode();
|
||||
theBuilder.Build();
|
||||
@ -3124,7 +3127,7 @@ Standard_Integer GEOMImpl_PipeDriver::Execute (TFunction_Logbook& log) const
|
||||
GeomFill_Trihedron theBestMode = EvaluateBestSweepMode(aWirePath);
|
||||
BRepOffsetAPI_MakePipe aMkPipe(aWirePath, aShapeBase, theBestMode);
|
||||
|
||||
if (aMkPipe.IsDone()) {
|
||||
if (aMkPipe.IsDone() && aMkPipe.ErrorOnSurface() <= TolPipeSurf) {
|
||||
aShape = aMkPipe.Shape();
|
||||
|
||||
if (!CreateGroups(aShapeBase, aWirePath, aMkPipe, aCI)) {
|
||||
|
Loading…
Reference in New Issue
Block a user