1 // Created on: 1993-02-05
2 // Created by: Jacques GOUSSARD
3 // Copyright (c) 1993-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 _Contap_TheSearchInside_HeaderFile
18 #define _Contap_TheSearchInside_HeaderFile
20 #include <Standard.hxx>
21 #include <Standard_DefineAlloc.hxx>
22 #include <Standard_Handle.hxx>
24 #include <Standard_Boolean.hxx>
25 #include <IntSurf_SequenceOfInteriorPoint.hxx>
26 #include <Standard_Real.hxx>
27 #include <Standard_Integer.hxx>
28 class StdFail_NotDone;
29 class Standard_OutOfRange;
30 class Adaptor3d_HSurface;
31 class Adaptor3d_HSurfaceTool;
32 class Adaptor3d_TopolTool;
33 class Contap_HContTool;
34 class Contap_SurfFunction;
35 class IntSurf_InteriorPoint;
39 class Contap_TheSearchInside
46 Standard_EXPORT Contap_TheSearchInside();
48 Standard_EXPORT Contap_TheSearchInside(Contap_SurfFunction& F, const Handle(Adaptor3d_HSurface)& Surf, const Handle(Adaptor3d_TopolTool)& T, const Standard_Real Epsilon);
50 Standard_EXPORT void Perform (Contap_SurfFunction& F, const Handle(Adaptor3d_HSurface)& Surf, const Handle(Adaptor3d_TopolTool)& T, const Standard_Real Epsilon);
52 Standard_EXPORT void Perform (Contap_SurfFunction& F, const Handle(Adaptor3d_HSurface)& Surf, const Standard_Real UStart, const Standard_Real VStart);
54 Standard_Boolean IsDone() const;
56 //! Returns the number of points.
57 //! The exception NotDone if raised if IsDone
59 Standard_Integer NbPoints() const;
61 //! Returns the point of range Index.
62 //! The exception NotDone if raised if IsDone
64 //! The exception OutOfRange if raised if
65 //! Index <= 0 or Index > NbPoints.
66 const IntSurf_InteriorPoint& Value (const Standard_Integer Index) const;
81 Standard_Boolean done;
82 IntSurf_SequenceOfInteriorPoint list;
87 #define ThePSurface Handle(Adaptor3d_HSurface)
88 #define ThePSurface_hxx <Adaptor3d_HSurface.hxx>
89 #define ThePSurfaceTool Adaptor3d_HSurfaceTool
90 #define ThePSurfaceTool_hxx <Adaptor3d_HSurfaceTool.hxx>
91 #define Handle_TheTopolTool Handle(Adaptor3d_TopolTool)
92 #define TheTopolTool Adaptor3d_TopolTool
93 #define TheTopolTool_hxx <Adaptor3d_TopolTool.hxx>
94 #define TheSITool Contap_HContTool
95 #define TheSITool_hxx <Contap_HContTool.hxx>
96 #define TheFunction Contap_SurfFunction
97 #define TheFunction_hxx <Contap_SurfFunction.hxx>
98 #define IntStart_SearchInside Contap_TheSearchInside
99 #define IntStart_SearchInside_hxx <Contap_TheSearchInside.hxx>
101 #include <IntStart_SearchInside.lxx>
104 #undef ThePSurface_hxx
105 #undef ThePSurfaceTool
106 #undef ThePSurfaceTool_hxx
107 #undef Handle_TheTopolTool
109 #undef TheTopolTool_hxx
113 #undef TheFunction_hxx
114 #undef IntStart_SearchInside
115 #undef IntStart_SearchInside_hxx
120 #endif // _Contap_TheSearchInside_HeaderFile