Version: 8.3.0
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
GEOMAlgo_FinderShapeOn1.hxx
Go to the documentation of this file.
1
// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
2
//
3
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5
//
6
// This library is free software; you can redistribute it and/or
7
// modify it under the terms of the GNU Lesser General Public
8
// License as published by the Free Software Foundation; either
9
// version 2.1 of the License, or (at your option) any later version.
10
//
11
// This library is distributed in the hope that it will be useful,
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
// Lesser General Public License for more details.
15
//
16
// You should have received a copy of the GNU Lesser General Public
17
// License along with this library; if not, write to the Free Software
18
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
//
20
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21
//
22
23
// File: GEOMAlgo_FinderShapeOn1.hxx
24
// Created: Fri Mar 4 10:31:06 2005
25
// Author: Peter KURNEV
26
27
#ifndef _GEOMAlgo_FinderShapeOn1_HeaderFile
28
#define _GEOMAlgo_FinderShapeOn1_HeaderFile
29
30
#include <
GEOMAlgo_State.hxx
>
31
#include <
GEOMAlgo_IndexedDataMapOfShapeState.hxx
>
32
#include <
GEOMAlgo_ShapeAlgo.hxx
>
33
#include <
GEOMAlgo_ListOfPnt.hxx
>
34
35
#include <TopAbs_State.hxx>
36
#include <TopAbs_ShapeEnum.hxx>
37
#include <TopoDS_Face.hxx>
38
#include <TopoDS_Edge.hxx>
39
#include <TopTools_ListOfShape.hxx>
40
41
#include <Geom_Surface.hxx>
42
#include <GeomAdaptor_Surface.hxx>
43
44
#include <gp_Pnt.hxx>
45
46
#include <Standard.hxx>
47
#include <Standard_Macro.hxx>
48
#include <Standard_Integer.hxx>
49
50
//=======================================================================
51
//function : GEOMAlgo_FinderShapeOn1
52
//purpose :
53
//=======================================================================
54
class
GEOMAlgo_FinderShapeOn1
:
public
GEOMAlgo_ShapeAlgo
55
{
56
public
:
57
Standard_EXPORT
58
GEOMAlgo_FinderShapeOn1
();
59
60
Standard_EXPORT
61
virtual
~GEOMAlgo_FinderShapeOn1
();
62
63
Standard_EXPORT
64
void
SetSurface
(
const
Handle
(Geom_Surface)& aS) ;
65
66
Standard_EXPORT
67
void
SetShapeType
(
const
TopAbs_ShapeEnum aST) ;
68
69
Standard_EXPORT
70
void
SetState
(
const
GEOMAlgo_State
aSF) ;
71
72
Standard_EXPORT
73
void
SetNbPntsMin
(
const
Standard_Integer aNb) ;
74
75
Standard_EXPORT
76
Standard_Integer
NbPntsMin
()
const
;
77
78
Standard_EXPORT
79
void
SetNbPntsMax
(
const
Standard_Integer aNb) ;
80
81
Standard_EXPORT
82
Standard_Integer
NbPntsMax
()
const
;
83
84
Standard_EXPORT
85
const
Handle
(Geom_Surface)& Surface()
const
;
86
87
Standard_EXPORT
88
TopAbs_ShapeEnum
ShapeType
()
const
;
89
90
Standard_EXPORT
91
GEOMAlgo_State
State
()
const
;
92
93
Standard_EXPORT
94
virtual
void
Perform
() ;
95
96
Standard_EXPORT
97
const
TopTools_ListOfShape&
Shapes
()
const
;
98
99
Standard_EXPORT
100
const
GEOMAlgo_IndexedDataMapOfShapeState
&
MSS
()
const
;
101
102
protected
:
103
Standard_EXPORT
104
virtual
void
CheckData
() ;
105
106
Standard_EXPORT
107
void
ProcessVertices
() ;
108
109
Standard_EXPORT
110
void
ProcessEdges
() ;
111
112
Standard_EXPORT
113
void
ProcessFaces
() ;
114
115
Standard_EXPORT
116
void
ProcessSolids
() ;
117
118
Standard_EXPORT
119
void
InnerPoints
(
const
TopoDS_Face& aF,
120
GEOMAlgo_ListOfPnt
& aLP) ;
121
122
Standard_EXPORT
123
void
InnerPoints
(
const
TopoDS_Edge& aE,
124
GEOMAlgo_ListOfPnt
& aLP) ;
125
126
Standard_EXPORT
127
void
InnerPoints
(
const
TopoDS_Edge& aE,
128
const
Standard_Integer aNbPnts,
129
GEOMAlgo_ListOfPnt
& aLP) ;
130
131
Standard_EXPORT
132
virtual
TopAbs_State
GetPointState
(
const
gp_Pnt& aP) ;
133
134
135
Handle
(Geom_Surface) mySurface;
136
TopAbs_ShapeEnum
myShapeType
;
137
GEOMAlgo_State
myState
;
138
Standard_Integer
myNbPntsMin
;
139
Standard_Integer
myNbPntsMax
;
140
GeomAdaptor_Surface
myGAS
;
141
TopTools_ListOfShape
myLS
;
142
GEOMAlgo_IndexedDataMapOfShapeState
myMSS
;
143
};
144
145
#endif
src
GEOMAlgo
GEOMAlgo_FinderShapeOn1.hxx
Copyright © 2007-2017 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS