0022887: Request to make Intf_InterferencePolygon2d class thread-safe.
[occt.git] / src / IntPatch / IntPatch.cdl
CommitLineData
7fd59977 1-- File: IntPatch.cdl
2-- Created: Wed May 6 13:58:00 1992
3-- Author: Jacques GOUSSARD
4---Copyright: OPEN CASCADE 1992
5
6
7package IntPatch
8
9 ---Purpose: Intersection between two patches.
10 -- The class PatchIntersection implements the algorithmes
11 -- of intersection.
12 -- The classes IntPoint, PointOnDomain, Line, ILin, a.s.o...
13 -- describe the results of the algorithmes.
14
15 ---Level: Internal
16 --
17 -- All the methods of the classes of this package are Internal.
18 --
19
20uses Standard, MMgt, StdFail, GeomAbs, TopAbs, TCollection, TColStd, math,
21 gp, TColgp, IntAna,IntSurf, IntImp, IntStart, IntWalk, Bnd, Intf,
22 Adaptor2d,Adaptor3d, Geom2d, Geom, Precision
23
24is
25
26 class ALineToWLine;
27
28 class Point;
29
30 deferred class Line;
31
32 class GLine; -- inherits Line from IntPatch
33
34 class ALine; -- inherits Line from IntPatch
35
36 class WLine; -- inherits Line from IntPatch
37
38 class RLine; -- inherits Line from IntPatch
39
40 class ArcFunction;
41
42-- implicite/implicite
43
44 class ImpImpIntersection;
45
46
47-- commun implicite/parametree et parametree/parametree
48
49 deferred class Polygo;
50
51 class PolyLine; -- inherits Polygo from IntPatch
52
53 class PolyArc; -- inherits Polygo from IntPatch
54
7fd59977 55 class RstInt;
56
57
58-- implicite/parametre
59
60 class ImpPrmIntersection;
61
62
63-- parametre/parametre
64
65 class Polyhedron;
66
67 class PolyhedronTool;
68
69 class PrmPrmIntersection_T3Bits;
70
71 class PrmPrmIntersection;
72
73
74-- algorithme general
75
76 enumeration IType is
77 -- type of the line of intersection
78
79 Lin, -- pour conflit avec deferred class Line
80 Circle,
81 Ellipse,
82 Parabola,
83 Hyperbola,
84 Analytic,
85 Walking,
86 Restriction
87 end IType;
88
89 class HInterTool;
90
91 class HCurve2dTool;
92
93 class LineConstructor;
94
95 class Intersection;
96
97
98 class SequenceOfPoint instantiates Sequence from TCollection (Point from IntPatch);
99
100 class SequenceOfLine instantiates Sequence from TCollection (Line from IntPatch);
101
102 class TheSurfFunction instantiates ZerImpFunc from IntImp
103 (HSurface from Adaptor3d,
104 HSurfaceTool from Adaptor3d,
105 Quadric from IntSurf,
106 QuadricTool from IntSurf);
107
108 class TheIWalking instantiates IWalking from IntWalk
109 (PathPoint from IntSurf,
110 PathPointTool from IntSurf,
111 SequenceOfPathPoint from IntSurf,
112 InteriorPoint from IntSurf,
113 InteriorPointTool from IntSurf,
114 SequenceOfInteriorPoint from IntSurf,
115 HSurface from Adaptor3d,
116 HSurfaceTool from Adaptor3d,
117 TheSurfFunction from IntPatch);
118
119 class TheSearchInside instantiates SearchInside from IntStart
120 (HSurface from Adaptor3d,
121 HSurfaceTool from Adaptor3d,
122 TopolTool from Adaptor3d,
123 HInterTool from IntPatch,
124 TheSurfFunction from IntPatch);
125
126 class TheSOnBounds instantiates SearchOnBoundaries from IntStart(
127 HVertex from Adaptor3d,
128 HCurve2d from Adaptor2d,
129 HCurve2dTool from IntPatch,
130 HInterTool from IntPatch,
131 TopolTool from Adaptor3d,
132 ArcFunction from IntPatch);
133
134 class TheInterfPolyhedron instantiates InterferencePolyhedron from Intf(
135 Polyhedron from IntPatch,
136 PolyhedronTool from IntPatch,
137 Polyhedron from IntPatch,
138 PolyhedronTool from IntPatch);
139
140 class ThePWalkingInter instantiates PWalking from IntWalk(
141 HSurface from Adaptor3d,
142 HSurfaceTool from Adaptor3d);
143
9530af27 144 alias SearchPnt is InterferencePolygon2d from Intf;
7fd59977 145
146 class CSFunction instantiates ZerCOnSSParFunc from IntImp
147 (HSurface from Adaptor3d,
148 HSurfaceTool from Adaptor3d,
149 HCurve2d from Adaptor2d,
150 HCurve2dTool from IntPatch);
151
152 class CurvIntSurf instantiates IntCS from IntImp
153 (HSurface from Adaptor3d,
154 HSurfaceTool from Adaptor3d,
155 HCurve2d from Adaptor2d,
156 HCurve2dTool from IntPatch,
157 CSFunction from IntPatch);
158
159end IntPatch;