// File generated by CPPExt (Value)
//
//                     Copyright (C) 1991 - 2000 by  
//                      Matra Datavision SA.  All rights reserved.
//  
//                     Copyright (C) 2001 - 2004 by
//                     Open CASCADE SA.  All rights reserved.
// 
// This file is part of the Open CASCADE Technology software.
//
// This software may be distributed and/or modified under the terms and
// conditions of the Open CASCADE Public License as defined by Open CASCADE SA
// and appearing in the file LICENSE included in the packaging of this file.
//  
// This software is distributed on an "AS IS" basis, without warranty of any
// kind, and Open CASCADE SA hereby disclaims all such warranties,
// including without limitation, any warranties of merchantability, fitness
// for a particular purpose or non-infringement. Please see the License for
// the specific terms and conditions governing rights and limitations under the
// License.

#ifndef _IntPatch_Intersection_HeaderFile
#define _IntPatch_Intersection_HeaderFile

#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _IntPatch_SequenceOfPointOfIntersection_HeaderFile
#include <IntPatch_SequenceOfPointOfIntersection.hxx>
#endif
#ifndef _IntPatch_SequenceOfLine_HeaderFile
#include <IntPatch_SequenceOfLine.hxx>
#endif
#ifndef _Standard_Real_HeaderFile
#include <Standard_Real.hxx>
#endif
#ifndef _Handle_Adaptor3d_HVertex_HeaderFile
#include <Handle_Adaptor3d_HVertex.hxx>
#endif
#ifndef _Handle_Adaptor2d_HCurve2d_HeaderFile
#include <Handle_Adaptor2d_HCurve2d.hxx>
#endif
#ifndef _Handle_Adaptor3d_HSurface_HeaderFile
#include <Handle_Adaptor3d_HSurface.hxx>
#endif
#ifndef _Handle_Adaptor3d_TopolTool_HeaderFile
#include <Handle_Adaptor3d_TopolTool.hxx>
#endif
#ifndef _Handle_IntPatch_SequenceNodeOfSequenceOfPointOfIntersection_HeaderFile
#include <Handle_IntPatch_SequenceNodeOfSequenceOfPointOfIntersection.hxx>
#endif
#ifndef _Handle_IntPatch_TheGLineOfIntersection_HeaderFile
#include <Handle_IntPatch_TheGLineOfIntersection.hxx>
#endif
#ifndef _Handle_IntPatch_TheALineOfIntersection_HeaderFile
#include <Handle_IntPatch_TheALineOfIntersection.hxx>
#endif
#ifndef _Handle_IntPatch_TheWLineOfIntersection_HeaderFile
#include <Handle_IntPatch_TheWLineOfIntersection.hxx>
#endif
#ifndef _Handle_IntPatch_TheRLineOfIntersection_HeaderFile
#include <Handle_IntPatch_TheRLineOfIntersection.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Handle_IntPatch_Line_HeaderFile
#include <Handle_IntPatch_Line.hxx>
#endif
class StdFail_NotDone;
class Standard_OutOfRange;
class Standard_DomainError;
class Standard_ConstructionError;
class Adaptor3d_HVertex;
class Adaptor2d_HCurve2d;
class Adaptor3d_HSurface;
class IntPatch_HCurve2dTool;
class IntPatch_HSurfaceTool;
class Adaptor3d_TopolTool;
class IntPatch_HInterTool;
class IntPatch_ThePointOfIntersection;
class IntPatch_SequenceOfPointOfIntersection;
class IntPatch_SequenceNodeOfSequenceOfPointOfIntersection;
class IntPatch_TheGLineOfIntersection;
class IntPatch_TheALineOfIntersection;
class IntPatch_TheWLineOfIntersection;
class IntPatch_TheRLineOfIntersection;
class IntPatch_TheArcFunctionOfIntersection;
class IntPatch_TheSOnBoundsOfIntersection;
class IntPatch_ThePathPointOfTheSOnBoundsOfIntersection;
class IntPatch_SequenceOfPathPointOfTheSOnBoundsOfIntersection;
class IntPatch_TheSegmentOfTheSOnBoundsOfIntersection;
class IntPatch_SequenceOfSegmentOfTheSOnBoundsOfIntersection;
class IntPatch_TheRstIntOfIntersection;
class IntPatch_LPolygoOfTheRstIntOfIntersection;
class IntPatch_APolygoOfTheRstIntOfIntersection;
class IntPatch_SearchPntOfTheRstIntOfIntersection;
class IntPatch_CSFunctionOfTheRstIntOfIntersection;
class IntPatch_CurvIntSurfOfTheRstIntOfIntersection;
class IntPatch_TheIIIntOfIntersection;
class IntPatch_TheIPIntOfIntersection;
class IntPatch_TheSurfFunctionOfTheIPIntOfIntersection;
class IntPatch_TheIWalkingOfTheIPIntOfIntersection;
class IntPatch_TheSearchInsideOfTheIPIntOfIntersection;
class IntPatch_ThePPIntOfIntersection;
class IntPatch_ThePolyhedronOfThePPIntOfIntersection;
class IntPatch_TheToolPolyhOfThePPIntOfIntersection;
class IntPatch_TheInterfPolyhedronOfThePPIntOfIntersection;
class IntPatch_ThePWalkingInterOfThePPIntOfIntersection;
class IntPatch_PrmPrmIntersection_T3BitsOfThePPIntOfIntersection;
class IntPatch_TheALineToWLineOfIntersection;
class IntPatch_TheLineConstructorOfIntersection;
class IntSurf_ListOfPntOn2S;
class IntPatch_Line;
class IntPatch_SequenceOfLine;


#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif


class IntPatch_Intersection  {

public:

    void* operator new(size_t,void* anAddress) 
      {
        return anAddress;
      }
    void* operator new(size_t size) 
      { 
        return Standard::Allocate(size); 
      }
    void  operator delete(void *anAddress) 
      { 
        if (anAddress) Standard::Free((Standard_Address&)anAddress); 
      }
 // Methods PUBLIC
 // 


Standard_EXPORT IntPatch_Intersection();


Standard_EXPORT IntPatch_Intersection(const Handle(Adaptor3d_HSurface)& S1,const Handle(Adaptor3d_TopolTool)& D1,const Handle(Adaptor3d_HSurface)& S2,const Handle(Adaptor3d_TopolTool)& D2,const Standard_Real TolArc,const Standard_Real TolTang);


Standard_EXPORT IntPatch_Intersection(const Handle(Adaptor3d_HSurface)& S1,const Handle(Adaptor3d_TopolTool)& D1,const Standard_Real TolArc,const Standard_Real TolTang);


Standard_EXPORT   void SetTolerances(const Standard_Real TolArc,const Standard_Real TolTang,const Standard_Real UVMaxStep,const Standard_Real Fleche) ;


Standard_EXPORT   void Perform(const Handle(Adaptor3d_HSurface)& S1,const Handle(Adaptor3d_TopolTool)& D1,const Handle(Adaptor3d_HSurface)& S2,const Handle(Adaptor3d_TopolTool)& D2,const Standard_Real TolArc,const Standard_Real TolTang) ;


Standard_EXPORT   void Perform(const Handle(Adaptor3d_HSurface)& S1,const Handle(Adaptor3d_TopolTool)& D1,const Handle(Adaptor3d_HSurface)& S2,const Handle(Adaptor3d_TopolTool)& D2,const Standard_Real TolArc,const Standard_Real TolTang,IntSurf_ListOfPntOn2S& LOfPnts,const Standard_Boolean RestrictLine = Standard_True) ;


Standard_EXPORT   void Perform(const Handle(Adaptor3d_HSurface)& S1,const Handle(Adaptor3d_TopolTool)& D1,const Handle(Adaptor3d_HSurface)& S2,const Handle(Adaptor3d_TopolTool)& D2,const Standard_Real U1,const Standard_Real V1,const Standard_Real U2,const Standard_Real V2,const Standard_Real TolArc,const Standard_Real TolTang) ;


Standard_EXPORT   void Perform(const Handle(Adaptor3d_HSurface)& S1,const Handle(Adaptor3d_TopolTool)& D1,const Standard_Real TolArc,const Standard_Real TolTang) ;

  Standard_Boolean IsDone() const;

  Standard_Boolean IsEmpty() const;

  Standard_Boolean TangentFaces() const;

  Standard_Boolean OppositeFaces() const;

  Standard_Integer NbPnts() const;

 const IntPatch_ThePointOfIntersection& Point(const Standard_Integer Index) const;

  Standard_Integer NbLines() const;

 const Handle_IntPatch_Line& Line(const Standard_Integer Index) const;


Standard_EXPORT  const IntPatch_SequenceOfLine& SequenceOfLine() const;


Standard_EXPORT   void Dump(const Standard_Integer Mode,const Handle(Adaptor3d_HSurface)& S1,const Handle(Adaptor3d_TopolTool)& D1,const Handle(Adaptor3d_HSurface)& S2,const Handle(Adaptor3d_TopolTool)& D2) const;





protected:

 // Methods PROTECTED
 // 


 // Fields PROTECTED
 //


private: 

 // Methods PRIVATE
 // 


 // Fields PRIVATE
 //
Standard_Boolean done;
Standard_Boolean empt;
Standard_Boolean tgte;
Standard_Boolean oppo;
IntPatch_SequenceOfPointOfIntersection spnt;
IntPatch_SequenceOfLine slin;
Standard_Real myTolArc;
Standard_Real myTolTang;
Standard_Real myUVMaxStep;
Standard_Real myFleche;
Standard_Boolean myIsStartPnt;
Standard_Real myU1Start;
Standard_Real myV1Start;
Standard_Real myU2Start;
Standard_Real myV2Start;


};

#define TheVertex Handle_Adaptor3d_HVertex
#define TheVertex_hxx <Adaptor3d_HVertex.hxx>
#define TheArc Handle_Adaptor2d_HCurve2d
#define TheArc_hxx <Adaptor2d_HCurve2d.hxx>
#define TheSurface Handle_Adaptor3d_HSurface
#define TheSurface_hxx <Adaptor3d_HSurface.hxx>
#define TheArcTool IntPatch_HCurve2dTool
#define TheArcTool_hxx <IntPatch_HCurve2dTool.hxx>
#define TheSurfaceTool IntPatch_HSurfaceTool
#define TheSurfaceTool_hxx <IntPatch_HSurfaceTool.hxx>
#define Handle_TheTopolTool Handle_Adaptor3d_TopolTool
#define TheTopolTool Adaptor3d_TopolTool
#define TheTopolTool_hxx <Adaptor3d_TopolTool.hxx>
#define TheInterTool IntPatch_HInterTool
#define TheInterTool_hxx <IntPatch_HInterTool.hxx>
#define IntPatch_ThePoint IntPatch_ThePointOfIntersection
#define IntPatch_ThePoint_hxx <IntPatch_ThePointOfIntersection.hxx>
#define IntPatch_SequenceOfPoint IntPatch_SequenceOfPointOfIntersection
#define IntPatch_SequenceOfPoint_hxx <IntPatch_SequenceOfPointOfIntersection.hxx>
#define IntPatch_SequenceNodeOfSequenceOfPoint IntPatch_SequenceNodeOfSequenceOfPointOfIntersection
#define IntPatch_SequenceNodeOfSequenceOfPoint_hxx <IntPatch_SequenceNodeOfSequenceOfPointOfIntersection.hxx>
#define IntPatch_SequenceNodeOfSequenceOfPoint IntPatch_SequenceNodeOfSequenceOfPointOfIntersection
#define IntPatch_SequenceNodeOfSequenceOfPoint_hxx <IntPatch_SequenceNodeOfSequenceOfPointOfIntersection.hxx>
#define IntPatch_TheGLine IntPatch_TheGLineOfIntersection
#define IntPatch_TheGLine_hxx <IntPatch_TheGLineOfIntersection.hxx>
#define IntPatch_TheALine IntPatch_TheALineOfIntersection
#define IntPatch_TheALine_hxx <IntPatch_TheALineOfIntersection.hxx>
#define IntPatch_TheWLine IntPatch_TheWLineOfIntersection
#define IntPatch_TheWLine_hxx <IntPatch_TheWLineOfIntersection.hxx>
#define IntPatch_TheRLine IntPatch_TheRLineOfIntersection
#define IntPatch_TheRLine_hxx <IntPatch_TheRLineOfIntersection.hxx>
#define IntPatch_TheArcFunction IntPatch_TheArcFunctionOfIntersection
#define IntPatch_TheArcFunction_hxx <IntPatch_TheArcFunctionOfIntersection.hxx>
#define IntPatch_TheSOnBounds IntPatch_TheSOnBoundsOfIntersection
#define IntPatch_TheSOnBounds_hxx <IntPatch_TheSOnBoundsOfIntersection.hxx>
#define IntPatch_ThePathPointOfTheSOnBounds IntPatch_ThePathPointOfTheSOnBoundsOfIntersection
#define IntPatch_ThePathPointOfTheSOnBounds_hxx <IntPatch_ThePathPointOfTheSOnBoundsOfIntersection.hxx>
#define IntPatch_SequenceOfPathPointOfTheSOnBounds IntPatch_SequenceOfPathPointOfTheSOnBoundsOfIntersection
#define IntPatch_SequenceOfPathPointOfTheSOnBounds_hxx <IntPatch_SequenceOfPathPointOfTheSOnBoundsOfIntersection.hxx>
#define IntPatch_TheSegmentOfTheSOnBounds IntPatch_TheSegmentOfTheSOnBoundsOfIntersection
#define IntPatch_TheSegmentOfTheSOnBounds_hxx <IntPatch_TheSegmentOfTheSOnBoundsOfIntersection.hxx>
#define IntPatch_SequenceOfSegmentOfTheSOnBounds IntPatch_SequenceOfSegmentOfTheSOnBoundsOfIntersection
#define IntPatch_SequenceOfSegmentOfTheSOnBounds_hxx <IntPatch_SequenceOfSegmentOfTheSOnBoundsOfIntersection.hxx>
#define IntPatch_ThePathPointOfTheSOnBounds IntPatch_ThePathPointOfTheSOnBoundsOfIntersection
#define IntPatch_ThePathPointOfTheSOnBounds_hxx <IntPatch_ThePathPointOfTheSOnBoundsOfIntersection.hxx>
#define IntPatch_SequenceOfPathPointOfTheSOnBounds IntPatch_SequenceOfPathPointOfTheSOnBoundsOfIntersection
#define IntPatch_SequenceOfPathPointOfTheSOnBounds_hxx <IntPatch_SequenceOfPathPointOfTheSOnBoundsOfIntersection.hxx>
#define IntPatch_TheSegmentOfTheSOnBounds IntPatch_TheSegmentOfTheSOnBoundsOfIntersection
#define IntPatch_TheSegmentOfTheSOnBounds_hxx <IntPatch_TheSegmentOfTheSOnBoundsOfIntersection.hxx>
#define IntPatch_SequenceOfSegmentOfTheSOnBounds IntPatch_SequenceOfSegmentOfTheSOnBoundsOfIntersection
#define IntPatch_SequenceOfSegmentOfTheSOnBounds_hxx <IntPatch_SequenceOfSegmentOfTheSOnBoundsOfIntersection.hxx>
#define IntPatch_TheRstInt IntPatch_TheRstIntOfIntersection
#define IntPatch_TheRstInt_hxx <IntPatch_TheRstIntOfIntersection.hxx>
#define IntPatch_LPolygoOfTheRstInt IntPatch_LPolygoOfTheRstIntOfIntersection
#define IntPatch_LPolygoOfTheRstInt_hxx <IntPatch_LPolygoOfTheRstIntOfIntersection.hxx>
#define IntPatch_APolygoOfTheRstInt IntPatch_APolygoOfTheRstIntOfIntersection
#define IntPatch_APolygoOfTheRstInt_hxx <IntPatch_APolygoOfTheRstIntOfIntersection.hxx>
#define IntPatch_SearchPntOfTheRstInt IntPatch_SearchPntOfTheRstIntOfIntersection
#define IntPatch_SearchPntOfTheRstInt_hxx <IntPatch_SearchPntOfTheRstIntOfIntersection.hxx>
#define IntPatch_CSFunctionOfTheRstInt IntPatch_CSFunctionOfTheRstIntOfIntersection
#define IntPatch_CSFunctionOfTheRstInt_hxx <IntPatch_CSFunctionOfTheRstIntOfIntersection.hxx>
#define IntPatch_CurvIntSurfOfTheRstInt IntPatch_CurvIntSurfOfTheRstIntOfIntersection
#define IntPatch_CurvIntSurfOfTheRstInt_hxx <IntPatch_CurvIntSurfOfTheRstIntOfIntersection.hxx>
#define IntPatch_LPolygoOfTheRstInt IntPatch_LPolygoOfTheRstIntOfIntersection
#define IntPatch_LPolygoOfTheRstInt_hxx <IntPatch_LPolygoOfTheRstIntOfIntersection.hxx>
#define IntPatch_APolygoOfTheRstInt IntPatch_APolygoOfTheRstIntOfIntersection
#define IntPatch_APolygoOfTheRstInt_hxx <IntPatch_APolygoOfTheRstIntOfIntersection.hxx>
#define IntPatch_SearchPntOfTheRstInt IntPatch_SearchPntOfTheRstIntOfIntersection
#define IntPatch_SearchPntOfTheRstInt_hxx <IntPatch_SearchPntOfTheRstIntOfIntersection.hxx>
#define IntPatch_CSFunctionOfTheRstInt IntPatch_CSFunctionOfTheRstIntOfIntersection
#define IntPatch_CSFunctionOfTheRstInt_hxx <IntPatch_CSFunctionOfTheRstIntOfIntersection.hxx>
#define IntPatch_CurvIntSurfOfTheRstInt IntPatch_CurvIntSurfOfTheRstIntOfIntersection
#define IntPatch_CurvIntSurfOfTheRstInt_hxx <IntPatch_CurvIntSurfOfTheRstIntOfIntersection.hxx>
#define IntPatch_TheIIInt IntPatch_TheIIIntOfIntersection
#define IntPatch_TheIIInt_hxx <IntPatch_TheIIIntOfIntersection.hxx>
#define IntPatch_TheIPInt IntPatch_TheIPIntOfIntersection
#define IntPatch_TheIPInt_hxx <IntPatch_TheIPIntOfIntersection.hxx>
#define IntPatch_TheSurfFunctionOfTheIPInt IntPatch_TheSurfFunctionOfTheIPIntOfIntersection
#define IntPatch_TheSurfFunctionOfTheIPInt_hxx <IntPatch_TheSurfFunctionOfTheIPIntOfIntersection.hxx>
#define IntPatch_TheIWalkingOfTheIPInt IntPatch_TheIWalkingOfTheIPIntOfIntersection
#define IntPatch_TheIWalkingOfTheIPInt_hxx <IntPatch_TheIWalkingOfTheIPIntOfIntersection.hxx>
#define IntPatch_TheSearchInsideOfTheIPInt IntPatch_TheSearchInsideOfTheIPIntOfIntersection
#define IntPatch_TheSearchInsideOfTheIPInt_hxx <IntPatch_TheSearchInsideOfTheIPIntOfIntersection.hxx>
#define IntPatch_TheSurfFunctionOfTheIPInt IntPatch_TheSurfFunctionOfTheIPIntOfIntersection
#define IntPatch_TheSurfFunctionOfTheIPInt_hxx <IntPatch_TheSurfFunctionOfTheIPIntOfIntersection.hxx>
#define IntPatch_TheIWalkingOfTheIPInt IntPatch_TheIWalkingOfTheIPIntOfIntersection
#define IntPatch_TheIWalkingOfTheIPInt_hxx <IntPatch_TheIWalkingOfTheIPIntOfIntersection.hxx>
#define IntPatch_TheSearchInsideOfTheIPInt IntPatch_TheSearchInsideOfTheIPIntOfIntersection
#define IntPatch_TheSearchInsideOfTheIPInt_hxx <IntPatch_TheSearchInsideOfTheIPIntOfIntersection.hxx>
#define IntPatch_ThePPInt IntPatch_ThePPIntOfIntersection
#define IntPatch_ThePPInt_hxx <IntPatch_ThePPIntOfIntersection.hxx>
#define IntPatch_ThePolyhedronOfThePPInt IntPatch_ThePolyhedronOfThePPIntOfIntersection
#define IntPatch_ThePolyhedronOfThePPInt_hxx <IntPatch_ThePolyhedronOfThePPIntOfIntersection.hxx>
#define IntPatch_TheToolPolyhOfThePPInt IntPatch_TheToolPolyhOfThePPIntOfIntersection
#define IntPatch_TheToolPolyhOfThePPInt_hxx <IntPatch_TheToolPolyhOfThePPIntOfIntersection.hxx>
#define IntPatch_TheInterfPolyhedronOfThePPInt IntPatch_TheInterfPolyhedronOfThePPIntOfIntersection
#define IntPatch_TheInterfPolyhedronOfThePPInt_hxx <IntPatch_TheInterfPolyhedronOfThePPIntOfIntersection.hxx>
#define IntPatch_ThePWalkingInterOfThePPInt IntPatch_ThePWalkingInterOfThePPIntOfIntersection
#define IntPatch_ThePWalkingInterOfThePPInt_hxx <IntPatch_ThePWalkingInterOfThePPIntOfIntersection.hxx>
#define IntPatch_PrmPrmIntersection_T3BitsOfThePPInt IntPatch_PrmPrmIntersection_T3BitsOfThePPIntOfIntersection
#define IntPatch_PrmPrmIntersection_T3BitsOfThePPInt_hxx <IntPatch_PrmPrmIntersection_T3BitsOfThePPIntOfIntersection.hxx>
#define IntPatch_ThePolyhedronOfThePPInt IntPatch_ThePolyhedronOfThePPIntOfIntersection
#define IntPatch_ThePolyhedronOfThePPInt_hxx <IntPatch_ThePolyhedronOfThePPIntOfIntersection.hxx>
#define IntPatch_TheToolPolyhOfThePPInt IntPatch_TheToolPolyhOfThePPIntOfIntersection
#define IntPatch_TheToolPolyhOfThePPInt_hxx <IntPatch_TheToolPolyhOfThePPIntOfIntersection.hxx>
#define IntPatch_TheInterfPolyhedronOfThePPInt IntPatch_TheInterfPolyhedronOfThePPIntOfIntersection
#define IntPatch_TheInterfPolyhedronOfThePPInt_hxx <IntPatch_TheInterfPolyhedronOfThePPIntOfIntersection.hxx>
#define IntPatch_ThePWalkingInterOfThePPInt IntPatch_ThePWalkingInterOfThePPIntOfIntersection
#define IntPatch_ThePWalkingInterOfThePPInt_hxx <IntPatch_ThePWalkingInterOfThePPIntOfIntersection.hxx>
#define IntPatch_PrmPrmIntersection_T3BitsOfThePPInt IntPatch_PrmPrmIntersection_T3BitsOfThePPIntOfIntersection
#define IntPatch_PrmPrmIntersection_T3BitsOfThePPInt_hxx <IntPatch_PrmPrmIntersection_T3BitsOfThePPIntOfIntersection.hxx>
#define IntPatch_TheALineToWLine IntPatch_TheALineToWLineOfIntersection
#define IntPatch_TheALineToWLine_hxx <IntPatch_TheALineToWLineOfIntersection.hxx>
#define IntPatch_TheLineConstructor IntPatch_TheLineConstructorOfIntersection
#define IntPatch_TheLineConstructor_hxx <IntPatch_TheLineConstructorOfIntersection.hxx>
#define Handle_IntPatch_SequenceNodeOfSequenceOfPoint Handle_IntPatch_SequenceNodeOfSequenceOfPointOfIntersection
#define IntPatch_SequenceNodeOfSequenceOfPoint_Type_() IntPatch_SequenceNodeOfSequenceOfPointOfIntersection_Type_()
#define Handle_IntPatch_SequenceNodeOfSequenceOfPoint Handle_IntPatch_SequenceNodeOfSequenceOfPointOfIntersection
#define IntPatch_SequenceNodeOfSequenceOfPoint_Type_() IntPatch_SequenceNodeOfSequenceOfPointOfIntersection_Type_()
#define Handle_IntPatch_TheGLine Handle_IntPatch_TheGLineOfIntersection
#define IntPatch_TheGLine_Type_() IntPatch_TheGLineOfIntersection_Type_()
#define Handle_IntPatch_TheALine Handle_IntPatch_TheALineOfIntersection
#define IntPatch_TheALine_Type_() IntPatch_TheALineOfIntersection_Type_()
#define Handle_IntPatch_TheWLine Handle_IntPatch_TheWLineOfIntersection
#define IntPatch_TheWLine_Type_() IntPatch_TheWLineOfIntersection_Type_()
#define Handle_IntPatch_TheRLine Handle_IntPatch_TheRLineOfIntersection
#define IntPatch_TheRLine_Type_() IntPatch_TheRLineOfIntersection_Type_()
#define IntPatch_IntersectionGen IntPatch_Intersection
#define IntPatch_IntersectionGen_hxx <IntPatch_Intersection.hxx>

#include <IntPatch_IntersectionGen.lxx>

#undef TheVertex
#undef TheVertex_hxx
#undef TheArc
#undef TheArc_hxx
#undef TheSurface
#undef TheSurface_hxx
#undef TheArcTool
#undef TheArcTool_hxx
#undef TheSurfaceTool
#undef TheSurfaceTool_hxx
#undef Handle_TheTopolTool
#undef TheTopolTool
#undef TheTopolTool_hxx
#undef TheInterTool
#undef TheInterTool_hxx
#undef IntPatch_ThePoint
#undef IntPatch_ThePoint_hxx
#undef IntPatch_SequenceOfPoint
#undef IntPatch_SequenceOfPoint_hxx
#undef IntPatch_SequenceNodeOfSequenceOfPoint
#undef IntPatch_SequenceNodeOfSequenceOfPoint_hxx
#undef IntPatch_SequenceNodeOfSequenceOfPoint
#undef IntPatch_SequenceNodeOfSequenceOfPoint_hxx
#undef IntPatch_TheGLine
#undef IntPatch_TheGLine_hxx
#undef IntPatch_TheALine
#undef IntPatch_TheALine_hxx
#undef IntPatch_TheWLine
#undef IntPatch_TheWLine_hxx
#undef IntPatch_TheRLine
#undef IntPatch_TheRLine_hxx
#undef IntPatch_TheArcFunction
#undef IntPatch_TheArcFunction_hxx
#undef IntPatch_TheSOnBounds
#undef IntPatch_TheSOnBounds_hxx
#undef IntPatch_ThePathPointOfTheSOnBounds
#undef IntPatch_ThePathPointOfTheSOnBounds_hxx
#undef IntPatch_SequenceOfPathPointOfTheSOnBounds
#undef IntPatch_SequenceOfPathPointOfTheSOnBounds_hxx
#undef IntPatch_TheSegmentOfTheSOnBounds
#undef IntPatch_TheSegmentOfTheSOnBounds_hxx
#undef IntPatch_SequenceOfSegmentOfTheSOnBounds
#undef IntPatch_SequenceOfSegmentOfTheSOnBounds_hxx
#undef IntPatch_ThePathPointOfTheSOnBounds
#undef IntPatch_ThePathPointOfTheSOnBounds_hxx
#undef IntPatch_SequenceOfPathPointOfTheSOnBounds
#undef IntPatch_SequenceOfPathPointOfTheSOnBounds_hxx
#undef IntPatch_TheSegmentOfTheSOnBounds
#undef IntPatch_TheSegmentOfTheSOnBounds_hxx
#undef IntPatch_SequenceOfSegmentOfTheSOnBounds
#undef IntPatch_SequenceOfSegmentOfTheSOnBounds_hxx
#undef IntPatch_TheRstInt
#undef IntPatch_TheRstInt_hxx
#undef IntPatch_LPolygoOfTheRstInt
#undef IntPatch_LPolygoOfTheRstInt_hxx
#undef IntPatch_APolygoOfTheRstInt
#undef IntPatch_APolygoOfTheRstInt_hxx
#undef IntPatch_SearchPntOfTheRstInt
#undef IntPatch_SearchPntOfTheRstInt_hxx
#undef IntPatch_CSFunctionOfTheRstInt
#undef IntPatch_CSFunctionOfTheRstInt_hxx
#undef IntPatch_CurvIntSurfOfTheRstInt
#undef IntPatch_CurvIntSurfOfTheRstInt_hxx
#undef IntPatch_LPolygoOfTheRstInt
#undef IntPatch_LPolygoOfTheRstInt_hxx
#undef IntPatch_APolygoOfTheRstInt
#undef IntPatch_APolygoOfTheRstInt_hxx
#undef IntPatch_SearchPntOfTheRstInt
#undef IntPatch_SearchPntOfTheRstInt_hxx
#undef IntPatch_CSFunctionOfTheRstInt
#undef IntPatch_CSFunctionOfTheRstInt_hxx
#undef IntPatch_CurvIntSurfOfTheRstInt
#undef IntPatch_CurvIntSurfOfTheRstInt_hxx
#undef IntPatch_TheIIInt
#undef IntPatch_TheIIInt_hxx
#undef IntPatch_TheIPInt
#undef IntPatch_TheIPInt_hxx
#undef IntPatch_TheSurfFunctionOfTheIPInt
#undef IntPatch_TheSurfFunctionOfTheIPInt_hxx
#undef IntPatch_TheIWalkingOfTheIPInt
#undef IntPatch_TheIWalkingOfTheIPInt_hxx
#undef IntPatch_TheSearchInsideOfTheIPInt
#undef IntPatch_TheSearchInsideOfTheIPInt_hxx
#undef IntPatch_TheSurfFunctionOfTheIPInt
#undef IntPatch_TheSurfFunctionOfTheIPInt_hxx
#undef IntPatch_TheIWalkingOfTheIPInt
#undef IntPatch_TheIWalkingOfTheIPInt_hxx
#undef IntPatch_TheSearchInsideOfTheIPInt
#undef IntPatch_TheSearchInsideOfTheIPInt_hxx
#undef IntPatch_ThePPInt
#undef IntPatch_ThePPInt_hxx
#undef IntPatch_ThePolyhedronOfThePPInt
#undef IntPatch_ThePolyhedronOfThePPInt_hxx
#undef IntPatch_TheToolPolyhOfThePPInt
#undef IntPatch_TheToolPolyhOfThePPInt_hxx
#undef IntPatch_TheInterfPolyhedronOfThePPInt
#undef IntPatch_TheInterfPolyhedronOfThePPInt_hxx
#undef IntPatch_ThePWalkingInterOfThePPInt
#undef IntPatch_ThePWalkingInterOfThePPInt_hxx
#undef IntPatch_PrmPrmIntersection_T3BitsOfThePPInt
#undef IntPatch_PrmPrmIntersection_T3BitsOfThePPInt_hxx
#undef IntPatch_ThePolyhedronOfThePPInt
#undef IntPatch_ThePolyhedronOfThePPInt_hxx
#undef IntPatch_TheToolPolyhOfThePPInt
#undef IntPatch_TheToolPolyhOfThePPInt_hxx
#undef IntPatch_TheInterfPolyhedronOfThePPInt
#undef IntPatch_TheInterfPolyhedronOfThePPInt_hxx
#undef IntPatch_ThePWalkingInterOfThePPInt
#undef IntPatch_ThePWalkingInterOfThePPInt_hxx
#undef IntPatch_PrmPrmIntersection_T3BitsOfThePPInt
#undef IntPatch_PrmPrmIntersection_T3BitsOfThePPInt_hxx
#undef IntPatch_TheALineToWLine
#undef IntPatch_TheALineToWLine_hxx
#undef IntPatch_TheLineConstructor
#undef IntPatch_TheLineConstructor_hxx
#undef Handle_IntPatch_SequenceNodeOfSequenceOfPoint
#undef IntPatch_SequenceNodeOfSequenceOfPoint_Type_
#undef Handle_IntPatch_SequenceNodeOfSequenceOfPoint
#undef IntPatch_SequenceNodeOfSequenceOfPoint_Type_
#undef Handle_IntPatch_TheGLine
#undef IntPatch_TheGLine_Type_
#undef Handle_IntPatch_TheALine
#undef IntPatch_TheALine_Type_
#undef Handle_IntPatch_TheWLine
#undef IntPatch_TheWLine_Type_
#undef Handle_IntPatch_TheRLine
#undef IntPatch_TheRLine_Type_
#undef IntPatch_IntersectionGen
#undef IntPatch_IntersectionGen_hxx


// other Inline functions and methods (like "C++: function call" methods)
//


#endif
