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

0029866: Intersector returns two overlapped curves as a result

Since now a new WLine is not created if its start point lies in another earlier computed WLine. It allows avoiding creation of duplicate WLines in the intersection result.

<!break>

1. Methods IsOutSurf1Box(...), IsOutSurf2Box(...), IsOutBox(...) for classes IntSurf_LineOn2S and IntPatch_RLine have been created.
This commit is contained in:
nbv
2018-07-03 18:14:30 +03:00
committed by bugmaster
parent 8ff2e494f5
commit 92a55b01af
15 changed files with 448 additions and 137 deletions

View File

@@ -106,7 +106,11 @@ public:
const Handle(Adaptor3d_HSurface)& Surface() const;
//! Method is entered for compatibility with IntPatch_TheSurfFunction.
const Handle(Adaptor3d_HSurface)& PSurface() const
{
return Surface();
}
protected:

View File

@@ -49,6 +49,7 @@ class Adaptor3d_HSurfaceTool;
class Contap_SurfFunction;
class Contap_TheIWLineOfTheIWalking;
class IntSurf_PntOn2S;
class math_FunctionSetRoot;
class Contap_TheIWalking
{
@@ -150,7 +151,12 @@ protected:
//! Clears up internal containers
Standard_EXPORT void Clear();
//! Returns TRUE if thePOn2S is in one of existing lines.
Standard_EXPORT Standard_Boolean IsPointOnLine(const IntSurf_PntOn2S& thePOn2S,
const math_Vector& theInfBounds,
const math_Vector& theSupBounds,
math_FunctionSetRoot& theSolver,
Contap_SurfFunction& theFunc);
private: