1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00

OCC22361 Incorrect result of BRepOffsetAPI_MakePipeShell algorithm: it tries to build conical surface between two non-coaxial circles

This commit is contained in:
JGV
2011-04-28 15:43:38 +00:00
committed by bugmaster
parent e520f87c1c
commit d73257411c
5 changed files with 36 additions and 20 deletions

View File

@@ -363,6 +363,7 @@ BRepFill_NSections::BRepFill_NSections(const TopTools_SequenceOfShape& S,
//=======================================================================
BRepFill_NSections::BRepFill_NSections(const TopTools_SequenceOfShape& S,
const GeomFill_SequenceOfTrsf& Transformations,
const TColStd_SequenceOfReal & P,
const Standard_Real VF,
const Standard_Real VL,
@@ -389,6 +390,7 @@ BRepFill_NSections::BRepFill_NSections(const TopTools_SequenceOfShape& S,
if (ok) {
myParams = P;
myShapes = S;
myTrsfs = Transformations;
VFirst = VF;
VLast = VL;
Init(P,Build);
@@ -434,7 +436,6 @@ void BRepFill_NSections::Init(const TColStd_SequenceOfReal & P,
// if (! B.Degenerated(wexp.Current())) NbEdge++;
if (! BRep_Tool::Degenerated(wexp.Current())) NbEdge++;
myEdges = new (TopTools_HArray2OfShape) (1, NbEdge, 1, NbSects);
// On Remplit les tables
@@ -580,7 +581,7 @@ void BRepFill_NSections::Init(const TColStd_SequenceOfReal & P,
Standard_Real Ufirst = ii-1;
Standard_Real Ulast = ii;
myLaws->ChangeValue(ii) = new (GeomFill_NSections)(NC,myParams,
myLaws->ChangeValue(ii) = new (GeomFill_NSections)(NC, myTrsfs, myParams,
Ufirst,Ulast,
VFirst,VLast,
mySurface);
@@ -724,7 +725,7 @@ void BRepFill_NSections::Init(const TColStd_SequenceOfReal & P,
for (Standard_Integer jj=1; jj<=myShapes.Length(); jj++) {
NCompo.Append(mySurface->VIso(myParams(jj)));
}
Law = new (GeomFill_NSections)(NCompo, myParams,
Law = new (GeomFill_NSections)(NCompo, myTrsfs, myParams,
Ufirst, Ulast,
Vfirst, Vlast,
mySurface);