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

0022769: Optimization of sewing algorithm

This commit is contained in:
ama
2011-12-02 14:29:24 +00:00
committed by bugmaster
parent d4cc0c5eb5
commit 041bfce9c0
11 changed files with 159 additions and 44 deletions

View File

@@ -973,13 +973,21 @@ void ChFi3d_Builder::PerformOneCorner(const Standard_Integer Index,
Geom2dAdaptor_Curve anOtherPCurve;
if (IShape == aData->IndexOfS1())
{
anOtherPCurve.Load (aData->InterferenceOnS1().PCurveOnFace(),
const Handle(Geom2d_Curve)& aPCurve = aData->InterferenceOnS1().PCurveOnFace();
if(aPCurve.IsNull())
continue;
anOtherPCurve.Load (aPCurve,
aData->InterferenceOnS1().FirstParameter(),
aData->InterferenceOnS1().LastParameter());
}
else if (IShape == aData->IndexOfS2())
{
anOtherPCurve.Load (aData->InterferenceOnS2().PCurveOnFace(),
const Handle(Geom2d_Curve)& aPCurve = aData->InterferenceOnS2().PCurveOnFace();
if(aPCurve.IsNull())
continue;
anOtherPCurve.Load (aPCurve,
aData->InterferenceOnS2().FirstParameter(),
aData->InterferenceOnS2().LastParameter());
}