blob: e692661ccaf1ab5e58cadfc2ed46bdad55537469 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
-- File: SolidExplorer.cdl
-- Created: Thu Mar 10 14:02:10 1994
-- Author: Laurent BUCHARD
-- <lbr@fuegox>
---Copyright: Matra Datavision 1994
deferred class SolidExplorer from TopClass
---Purpose: Provide an exploration of a BRep Shape for the
-- classification.
uses
Pnt from gp,
Lin from gp,
Face from TopoDS,
Shape from TopoDS
is
Reject(me; P : Pnt from gp) returns Boolean
---Purpose: Should return True if the point is outside a
-- bounding volume of the shape.
is deferred;
Segment(me: in out; P : Pnt from gp;
L : out Lin from gp; Par : out Real)
---Purpose: Returns in <L>, <Par> a segment having at least
-- one intersection with the shape boundary to
-- compute intersections.
--
is deferred;
OtherSegment(me: in out; P : Pnt from gp;
L : out Lin from gp; Par : out Real)
---Purpose: Returns in <L>, <Par> a segment having at least
-- one intersection with the shape boundary to
-- compute intersections.
--
-- The First Call to this method returns a line which
-- point to a point of the first face of the shape.
-- The Second Call provide a line to the second face
-- and so on.
--
-- if the method is called N times on a shape with F
-- faces (N>F) the line point to other points on the
-- face 1,2,3 ... N
is deferred;
InitShell(me : in out)
---Purpose: Starts an exploration of the shells.
is deferred;
MoreShells(me) returns Boolean
---Purpose: Returns True if there is a current shell.
is deferred;
NextShell(me : in out)
---Purpose: Sets the explorer to the next shell and returns
-- False if there are no more wires.
is deferred;
RejectShell(me; L : Lin from gp; Par : Real) returns Boolean
---Purpose: Returns True if the shell bounding volume does not
-- intersect the segment.
is deferred;
InitFace(me : in out)
---Purpose: Starts an exploration of the faces.
is deferred;
MoreFaces(me) returns Boolean
---Purpose: Returns True if there is a current face.
is deferred;
NextFace(me : in out)
---Purpose: Sets the explorer to the next face and returns
-- False if there are no more wires.
is deferred;
CurrentFace(me) returns Face from TopoDS
---Purpose: Returns the current face.
is deferred;
RejectFace(me; L : Lin from gp; Par : Real) returns Boolean
---Purpose: Returns True if the face bounding volume does not
-- intersect the segment.
is deferred;
--------------------------------------------------------------------
end SolidExplorer;
|