Improve new version of PartitionAlgo(old script partition F3).

This commit is contained in:
skl 2006-11-16 13:03:06 +00:00
parent c4b907b578
commit a4d366a393

View File

@ -116,11 +116,6 @@ static
Standard_Real Tolerance2D (const TopoDS_Vertex& aV, Standard_Real Tolerance2D (const TopoDS_Vertex& aV,
const GeomAdaptor_Surface& aGAS); const GeomAdaptor_Surface& aGAS);
static
void UVTolerance2D (const TopoDS_Vertex& aV,
const GeomAdaptor_Surface& aGAS,
Standard_Real& aTolU,
Standard_Real& aTolV);
static static
Standard_Integer NbWaysOut(const BOP_ListOfEdgeInfo& ); Standard_Integer NbWaysOut(const BOP_ListOfEdgeInfo& );
// //
@ -456,7 +451,7 @@ static
Standard_Integer i,j, aNb, aNbj; Standard_Integer i,j, aNb, aNbj;
Standard_Real aTol, anAngleIn, anAngleOut, anAngle, aMinAngle; Standard_Real aTol, anAngleIn, anAngleOut, anAngle, aMinAngle;
Standard_Real aTol2D, aTol2D2; Standard_Real aTol2D, aTol2D2;
Standard_Real aTol2, aD2, aTolUVb, aTolVVb; Standard_Real aTol2, aD2;//, aTolUVb, aTolVVb;
Standard_Boolean anIsSameV2d, anIsSameV, anIsFound, anIsOut, anIsNotPassed; Standard_Boolean anIsSameV2d, anIsSameV, anIsFound, anIsOut, anIsNotPassed;
BOP_ListIteratorOfListOfEdgeInfo anIt; BOP_ListIteratorOfListOfEdgeInfo anIt;
TopoDS_Vertex aVb; TopoDS_Vertex aVb;
@ -494,9 +489,13 @@ static
aTol=2.*Tolerance2D(aVb, aGAS); aTol=2.*Tolerance2D(aVb, aGAS);
aTol2=aTol*aTol; aTol2=aTol*aTol;
// //
//modified by NIZNHY-PKV Tue Nov 14 16:56:19 2006f
/*
UVTolerance2D(aVb, aGAS, aTolUVb, aTolVVb); UVTolerance2D(aVb, aGAS, aTolUVb, aTolVVb);
aTolUVb = 2.*aTolUVb; aTolUVb = 2.*aTolUVb;
aTolVVb = 2.*aTolVVb; aTolVVb = 2.*aTolVVb;
*/
//modified by NIZNHY-PKV Tue Nov 14 16:56:26 2006t
// //
aNb=aLS.Length(); aNb=aLS.Length();
if (aNb>0) { if (aNb>0) {
@ -511,7 +510,7 @@ static
aBuf.Append(aEPrev); aBuf.Append(aEPrev);
anIsSameV=aVPrev.IsSame(aVb); anIsSameV=aVPrev.IsSame(aVb);
anIsSameV2d = Standard_False; anIsSameV2d=Standard_False;
if (anIsSameV) { if (anIsSameV) {
anIsSameV2d = Standard_True; anIsSameV2d = Standard_True;
@ -519,6 +518,8 @@ static
aD2=aPaPrev.SquareDistance(aPb); aD2=aPaPrev.SquareDistance(aPb);
anIsSameV2d =aD2<aTol2; anIsSameV2d =aD2<aTol2;
// //
//modified by NIZNHY-PKV Tue Nov 14 16:56:49 2006f
/*
if(anIsSameV2d) { if(anIsSameV2d) {
Standard_Real udist, vdist; Standard_Real udist, vdist;
// //
@ -528,6 +529,8 @@ static
anIsSameV2d=!anIsSameV2d; anIsSameV2d=!anIsSameV2d;
} }
} }
*/
//modified by NIZNHY-PKV Tue Nov 14 16:56:54 2006t
}//if (anIsSameV) { }//if (anIsSameV) {
// //
if (anIsSameV && anIsSameV2d) { if (anIsSameV && anIsSameV2d) {
@ -892,6 +895,15 @@ Standard_Integer NbWaysOut(const BOP_ListOfEdgeInfo& aLEInfo)
} }
return iCnt; return iCnt;
} }
//modified by NIZNHY-PKV Tue Nov 14 16:55:31 2006f
/*
static
void UVTolerance2D (const TopoDS_Vertex& aV,
const GeomAdaptor_Surface& aGAS,
Standard_Real& aTolU,
Standard_Real& aTolV);
*/
/*
//======================================================================= //=======================================================================
//function : UVTolerance2D //function : UVTolerance2D
//purpose : //purpose :
@ -907,3 +919,5 @@ void UVTolerance2D (const TopoDS_Vertex& aV,
aTolU=aGAS.UResolution(aTolV3D); aTolU=aGAS.UResolution(aTolV3D);
aTolV=aGAS.VResolution(aTolV3D); aTolV=aGAS.VResolution(aTolV3D);
} }
*/
//modified by NIZNHY-PKV Tue Nov 14 16:55:39 2006