// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _TopOpeBRep_GeomTool_HeaderFile
#define _TopOpeBRep_GeomTool_HeaderFile

#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Macro.hxx>

#include <Standard_Real.hxx>
#include <Handle_Geom2d_Curve.hxx>
#include <Handle_Geom_Curve.hxx>
#include <Standard_Boolean.hxx>
#include <Standard_Integer.hxx>
class TopOpeBRep_LineInter;
class TopoDS_Shape;
class TopOpeBRepDS_Curve;
class Geom2d_Curve;
class Geom_Curve;


//! Provide services needed by the DSFiller
class TopOpeBRep_GeomTool 
{
public:

  DEFINE_STANDARD_ALLOC

  
  //! Make the  DS curve <C> and the pcurves <PC1,PC2> from
  //! intersection line <L> lying on shapes <S1,S2>. <min,max> = <L> bounds
  Standard_EXPORT static   void MakeCurves (const Standard_Real min, const Standard_Real max, const TopOpeBRep_LineInter& L, const TopoDS_Shape& S1, const TopoDS_Shape& S2, TopOpeBRepDS_Curve& C, Handle(Geom2d_Curve)& PC1, Handle(Geom2d_Curve)& PC2) ;
  
  Standard_EXPORT static   void MakeCurve (const Standard_Real min, const Standard_Real max, const TopOpeBRep_LineInter& L, Handle(Geom_Curve)& C) ;
  
  Standard_EXPORT static   void MakePrivateCurves (const Standard_Real min, const Standard_Real max, const TopOpeBRep_LineInter& L, const TopoDS_Shape& S1, const TopoDS_Shape& S2, Handle(Geom_Curve)& C, Handle(Geom2d_Curve)& PC1, Handle(Geom2d_Curve)& PC2, Standard_Boolean& New, Standard_Real& tolreached2d1, Standard_Real& tolreached2d2) ;
  
  Standard_EXPORT static   Handle(Geom_Curve) MakeBSpline1fromWALKING3d (const TopOpeBRep_LineInter& L) ;
  
  Standard_EXPORT static   Handle(Geom2d_Curve) MakeBSpline1fromWALKING2d (const TopOpeBRep_LineInter& L, const Standard_Integer SI) ;




protected:





private:





};







#endif // _TopOpeBRep_GeomTool_HeaderFile
