blob: 391c146b85369d99552242e0b66ea3c6c2fee8ad (
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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
-- File: Interference.cdl
-- Created: Mon Jun 24 10:15:49 1991
-- Author: Didier PIFFAULT
-- <dpf@phobox>
---Copyright: Matra Datavision 1991, 1992
deferred class Interference from Intf
---Purpose: Describes the Interference computation result
-- between polygon2d or polygon3d or polyhedron.
uses SectionPoint from Intf,
SeqOfSectionPoint from Intf,
SectionLine from Intf,
SeqOfSectionLine from Intf,
TangentZone from Intf,
SeqOfTangentZone from Intf
raises OutOfRange from Standard
is Initialize(Self : Boolean from Standard);
SelfInterference(me : in out;
Self : Boolean from Standard) is protected;
---Purpose: Only one argument for the intersection.
NbSectionPoints(me)
returns Integer is static;
---Purpose: Gives the number of points of intersection in the
-- interference.
PntValue (me;
Index : in Integer)
returns SectionPoint from Intf
raises OutOfRange from Standard
is static;
---Purpose: Gives the point of intersection of address Index in
-- the interference.
--
---C++: return const &
NbSectionLines (me)
returns Integer is static;
---Purpose: Gives the number of polylines of intersection in the
-- interference.
LineValue (me;
Index : in Integer)
returns SectionLine from Intf
raises OutOfRange from Standard
is static;
---Purpose: Gives the polyline of intersection at address <Index> in
-- the interference.
--
---C++: return const &
NbTangentZones (me)
returns Integer is static;
---Purpose: Gives the number of zones of tangence in the interference.
ZoneValue (me;
Index : in Integer)
returns TangentZone from Intf
raises OutOfRange from Standard
is static;
---Purpose: Gives the zone of tangence at address Index in the
-- interference.
--
---C++: return const &
GetTolerance (me)
returns Real
is static;
---Purpose: Gives the tolerance used for the calculation.
-- Implementation functions :
Contains (me;
ThePnt : in SectionPoint from Intf)
returns Boolean
is static;
---Purpose: Tests if the polylines of intersection or the zones of
-- tangence contain the point of intersection <ThePnt>.
Insert (me : in out;
TheZone : in TangentZone from Intf)
returns Boolean
is static;
---Purpose: Inserts a new zone of tangence in the current list of
-- tangent zones of the interference and returns True
-- when done.
Insert (me : in out;
pdeb : in SectionPoint from Intf;
pfin : in SectionPoint from Intf)
is static;
---Purpose: Insert a new segment of intersection in the current list of
-- polylines of intersection of the interference.
Dump (me) is static;
fields mySPoins : SeqOfSectionPoint from Intf is protected;
mySLines : SeqOfSectionLine from Intf is protected;
myTZones : SeqOfTangentZone from Intf is protected;
SelfIntf : Boolean from Standard is protected;
Tolerance : Real from Standard is protected;
end Interference;
|