1 // Created on: 1994-03-14
2 // Created by: Frederic UNTEREINER
3 // Copyright (c) 1994-1999 Matra Datavision
4 // Copyright (c) 1999-2014 OPEN CASCADE SAS
6 // This file is part of Open CASCADE Technology software library.
8 // This library is free software; you can redistribute it and/or modify it under
9 // the terms of the GNU Lesser General Public License version 2.1 as published
10 // by the Free Software Foundation, with special exception defined in the file
11 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 // distribution for complete text of the license and disclaimer of any warranty.
14 // Alternatively, this file may be used under the terms of Open CASCADE
15 // commercial license or contractual agreement.
17 #ifndef _IGESToBRep_BasicSurface_HeaderFile
18 #define _IGESToBRep_BasicSurface_HeaderFile
20 #include <Standard.hxx>
21 #include <Standard_DefineAlloc.hxx>
22 #include <Standard_Handle.hxx>
24 #include <IGESToBRep_CurveAndSurface.hxx>
25 #include <Standard_Real.hxx>
26 #include <Standard_Boolean.hxx>
27 class IGESToBRep_CurveAndSurface;
29 class IGESData_IGESEntity;
31 class IGESSolid_PlaneSurface;
32 class Geom_CylindricalSurface;
33 class IGESSolid_CylindricalSurface;
34 class Geom_ConicalSurface;
35 class IGESSolid_ConicalSurface;
36 class Geom_SphericalSurface;
37 class IGESSolid_SphericalSurface;
38 class Geom_ToroidalSurface;
39 class IGESSolid_ToroidalSurface;
40 class Geom_BSplineSurface;
41 class IGESGeom_SplineSurface;
42 class IGESGeom_BSplineSurface;
44 //! Provides methods to transfer basic geometric surface entities
45 //! from IGES to CASCADE.
49 class IGESToBRep_BasicSurface : public IGESToBRep_CurveAndSurface
55 //! Creates a tool BasicSurface ready to run, with
56 //! epsilons set to 1.E-04, TheModeTopo to True, the
57 //! optimization of the continuity to False.
58 Standard_EXPORT IGESToBRep_BasicSurface();
60 //! Creates a tool BasicSurface ready to run and sets its
62 Standard_EXPORT IGESToBRep_BasicSurface(const IGESToBRep_CurveAndSurface& CS);
64 //! Creates a tool BasicSurface ready to run.
65 Standard_EXPORT IGESToBRep_BasicSurface(const Standard_Real eps, const Standard_Real epsGeom, const Standard_Real epsCoeff, const Standard_Boolean mode, const Standard_Boolean modeapprox, const Standard_Boolean optimized);
67 //! Returns Surface from Geom if the last transfer has succeeded.
68 Standard_EXPORT Handle(Geom_Surface) TransferBasicSurface (const Handle(IGESData_IGESEntity)& start);
70 //! Returns Plane from Geom if the transfer has succeeded.
71 Standard_EXPORT Handle(Geom_Plane) TransferPlaneSurface (const Handle(IGESSolid_PlaneSurface)& start);
73 //! Returns CylindricalSurface from Geom if the transfer has succeeded.
74 Standard_EXPORT Handle(Geom_CylindricalSurface) TransferRigthCylindricalSurface (const Handle(IGESSolid_CylindricalSurface)& start);
76 //! Returns ConicalSurface from Geom if the transfer has succeeded.
77 Standard_EXPORT Handle(Geom_ConicalSurface) TransferRigthConicalSurface (const Handle(IGESSolid_ConicalSurface)& start);
79 //! Returns SphericalSurface from Geom if the transfer has succeeded.
80 Standard_EXPORT Handle(Geom_SphericalSurface) TransferSphericalSurface (const Handle(IGESSolid_SphericalSurface)& start);
82 //! Returns SphericalSurface from Geom if the transfer has succeeded.
83 Standard_EXPORT Handle(Geom_ToroidalSurface) TransferToroidalSurface (const Handle(IGESSolid_ToroidalSurface)& start);
85 //! Returns BSplineSurface from Geom if the transfer has succeeded.
86 Standard_EXPORT Handle(Geom_BSplineSurface) TransferSplineSurface (const Handle(IGESGeom_SplineSurface)& start);
88 //! Returns BSplineSurface from Geom if the transfer has succeeded.
89 Standard_EXPORT Handle(Geom_BSplineSurface) TransferBSplineSurface (const Handle(IGESGeom_BSplineSurface)& start);
93 #endif // _IGESToBRep_BasicSurface_HeaderFile