0024171: Eliminate CLang compiler warning -Wreorder
[occt.git] / src / TopClass / TopClass_SolidExplorer.cdl
1 -- Created on: 1994-03-10
2 -- Created by: Laurent BUCHARD
3 -- Copyright (c) 1994-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
5 --
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
10 --
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 --
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
20
21
22
23 deferred class SolidExplorer from TopClass 
24
25         ---Purpose: Provide an   exploration of a  BRep Shape   for the
26         --          classification.
27
28 uses
29     Pnt          from gp,
30     Lin          from gp,
31     Face         from TopoDS,
32     Shape        from TopoDS
33
34 is
35     
36     Reject(me;  P : Pnt from gp) returns Boolean
37         ---Purpose: Should  return  True  if the  point  is  outside a
38         --          bounding volume of the shape.
39     is deferred;
40     
41     Segment(me: in out;  P :  Pnt from gp;
42                          L : out Lin from gp; Par : out  Real)
43          ---Purpose: Returns  in <L>, <Par>  a segment having at least
44          --          one  intersection  with  the  shape  boundary  to
45          --          compute  intersections. 
46          --          
47     is deferred;
48
49     OtherSegment(me: in out;  P :  Pnt from gp;
50                               L : out Lin from gp; Par : out  Real)
51          ---Purpose: Returns  in <L>, <Par>  a segment having at least
52          --          one  intersection  with  the  shape  boundary  to
53          --          compute  intersections. 
54          --          
55          --          The First Call to this method returns a line which
56          --          point to a point of the first face of the shape.
57          --          The Second Call provide a line to the second face
58          --          and so on. 
59          --          
60          --          if the method is called N times on a shape with F 
61          --          faces (N>F) the line point to other points on the
62          --          face 1,2,3 ... N 
63     is deferred;
64     
65     InitShell(me : in out)
66         ---Purpose: Starts an exploration of the shells.
67     is deferred;
68     
69     MoreShells(me) returns Boolean
70         ---Purpose: Returns True if there is  a current shell.
71     is deferred;
72         
73     NextShell(me : in out)
74         ---Purpose: Sets the explorer  to the  next  shell and  returns
75         --          False if there are no more wires.
76     is deferred;
77     
78     RejectShell(me; L :  Lin from gp; Par : Real) returns Boolean
79         ---Purpose: Returns True  if the shell  bounding volume does not
80         --          intersect the segment.
81     is deferred;
82     
83
84     
85     InitFace(me : in out)
86         ---Purpose: Starts an exploration of the faces.
87     is deferred;
88     
89     MoreFaces(me) returns Boolean
90         ---Purpose: Returns True if there is  a current face.
91     is deferred;
92         
93     NextFace(me : in out)
94         ---Purpose: Sets the explorer  to the  next  face and  returns
95         --          False if there are no more wires.
96     is deferred;
97     
98     CurrentFace(me) returns Face from TopoDS
99         ---Purpose: Returns the current face.
100     is deferred;
101     
102     RejectFace(me; L :  Lin from gp; Par : Real) returns Boolean
103         ---Purpose: Returns True  if the face  bounding volume does not
104         --          intersect the segment.
105     is deferred;
106     
107                                                                                       
108      --------------------------------------------------------------------
109
110
111 end SolidExplorer;
112
113
114
115
116
117
118
119