7fd59977 |
1 | -- File: Geom2dGcc.cdl |
2 | -- Created: Mon Jun 29 14:55:26 1992 |
3 | -- Author: Remi GILET |
4 | -- <reg@sdsun2> |
5 | ---Copyright: Matra Datavision 1992 |
6 | |
7 | |
8 | package Geom2dGcc |
9 | |
10 | --- Purpose: The Geom2dGcc package describes qualified 2D |
11 | -- curves used in the construction of constrained geometric |
12 | -- objects by an algorithm provided by the Geom2dGcc package. |
13 | -- A qualified 2D curve is a curve with a qualifier which |
14 | -- specifies whether the solution of a construction |
15 | -- algorithm using the qualified curve (as an argument): |
16 | -- - encloses the curve, or |
17 | -- - is enclosed by the curve, or |
18 | -- - is built so that both the curve and this solution are external to one another, or |
19 | -- - is undefined (all solutions apply). |
20 | -- These package methods provide simpler functions to construct a qualified curve. |
21 | -- Note: the interior of a curve is defined as the left-hand |
22 | -- side of the curve in relation to its orientation. |
23 | |
24 | |
25 | uses GccEnt, |
26 | GccGeo, |
27 | GccAna, |
28 | GccIter, |
29 | StdFail, |
30 | Geom2dInt, |
31 | Geom2d, |
32 | TColStd, |
33 | TopAbs, |
34 | Standard, |
35 | Geom2dAdaptor, |
36 | Extrema, |
37 | Adaptor3d, |
38 | Adaptor2d, |
39 | TColgp, |
40 | gp |
41 | |
42 | is |
43 | |
44 | class CurveTool; |
45 | |
46 | class QualifiedCurve; |
47 | |
48 | class Circ2d3Tan; |
49 | |
50 | class Circ2d2TanRad; |
51 | |
52 | class Circ2d2TanOn; |
53 | |
54 | class Circ2dTanOnRad; |
55 | |
56 | class Circ2dTanCen; |
57 | |
58 | class Lin2d2Tan; |
59 | |
60 | class Lin2dTanObl; |
61 | |
62 | class MyQCurve instantiates QualifiedCurv from GccEnt |
63 | (Curve from Geom2dAdaptor); |
64 | |
65 | class MyCurveTool instantiates CurvePGTool from GccGeo |
66 | (Curve from Geom2dAdaptor, |
67 | CurveTool from Geom2dGcc , |
68 | OffsetCurve from Adaptor3d); |
69 | |
70 | class MyCirc2d2TanOn instantiates Circ2d2TanOn from GccGeo |
71 | (Curve from Geom2dAdaptor, |
72 | CurveTool from Geom2dGcc, |
73 | MyQCurve from Geom2dGcc, |
74 | OffsetCurve from Adaptor3d, |
75 | HCurve from Geom2dAdaptor, |
76 | MyCurveTool from Geom2dGcc, |
77 | TheIntConicCurveOfGInter from Geom2dInt); |
78 | |
79 | class MyCirc2d2TanRad instantiates Circ2d2TanRad from GccGeo |
80 | (Curve from Geom2dAdaptor , |
81 | CurveTool from Geom2dGcc, |
82 | MyQCurve from Geom2dGcc, |
83 | OffsetCurve from Adaptor3d, |
84 | HCurve from Geom2dAdaptor, |
85 | MyCurveTool from Geom2dGcc, |
86 | TheIntConicCurveOfGInter from Geom2dInt, |
87 | GInter from Geom2dInt); |
88 | |
89 | class MyCirc2dTanOnRad instantiates Circ2dTanOnRad from GccGeo |
90 | (Curve from Geom2dAdaptor , |
91 | CurveTool from Geom2dGcc, |
92 | MyQCurve from Geom2dGcc, |
93 | OffsetCurve from Adaptor3d, |
94 | HCurve from Geom2dAdaptor, |
95 | MyCurveTool from Geom2dGcc, |
96 | TheIntConicCurveOfGInter from Geom2dInt, |
97 | GInter from Geom2dInt); |
98 | |
99 | class MyC2d3Tan instantiates Circ2d3Tan from GccIter |
100 | (Curve from Geom2dAdaptor, |
101 | CurveTool from Geom2dGcc, |
102 | MyQCurve from Geom2dGcc); |
103 | |
104 | class MyCirc2dTanCen instantiates Circ2dTanCen from GccGeo |
105 | (Curve from Geom2dAdaptor, |
106 | CurveTool from Geom2dGcc, |
107 | ExtPC2d from Extrema, |
108 | MyQCurve from Geom2dGcc); |
109 | |
110 | class MyC2d2TanOn instantiates Circ2d2TanOn from GccIter |
111 | (Curve from Geom2dAdaptor, |
112 | CurveTool from Geom2dGcc, |
113 | MyQCurve from Geom2dGcc); |
114 | |
115 | class MyL2dTanObl instantiates Lin2dTanObl from GccIter |
116 | (Curve from Geom2dAdaptor, |
117 | CurveTool from Geom2dGcc, |
118 | MyQCurve from Geom2dGcc); |
119 | |
120 | class MyL2d2Tan instantiates Lin2d2Tan from GccIter |
121 | (Curve from Geom2dAdaptor, |
122 | CurveTool from Geom2dGcc, |
123 | MyQCurve from Geom2dGcc); |
124 | |
125 | Unqualified(Obj : Curve from Geom2dAdaptor) returns QualifiedCurve; |
126 | ---Purpose: Constructs such a qualified curve that the relative |
127 | -- position of the solution computed by a construction |
128 | -- algorithm using the qualified curve to the circle or line is |
129 | -- not qualified, i.e. all solutions apply. |
130 | -- Warning |
131 | -- Obj is an adapted curve, i.e. an object which is an interface between: |
132 | -- - the services provided by a 2D curve from the package Geom2d, |
133 | -- - and those required on the curve by a computation algorithm. |
134 | -- The adapted curve is created in the following way: |
135 | -- Handle(Geom2d_Curve) mycurve = ... |
136 | -- ; |
137 | -- Geom2dAdaptor_Curve Obj ( mycurve ) |
138 | -- ; |
139 | -- The qualified curve is then constructed with this object: |
140 | -- Geom2dGcc_QualifiedCurve |
141 | -- myQCurve = Geom2dGcc::Unqualified(Obj); |
142 | |
143 | Enclosing(Obj : Curve from Geom2dAdaptor) returns QualifiedCurve; |
144 | ---Purpose: Constructs such a qualified curve that the solution |
145 | -- computed by a construction algorithm using the qualified |
146 | -- curve encloses the curve. |
147 | -- Warning |
148 | -- Obj is an adapted curve, i.e. an object which is an interface between: |
149 | -- - the services provided by a 2D curve from the package Geom2d, |
150 | -- - and those required on the curve by a computation algorithm. |
151 | -- The adapted curve is created in the following way: |
152 | -- Handle(Geom2d_Curve) mycurve = ... |
153 | -- ; |
154 | -- Geom2dAdaptor_Curve Obj ( mycurve ) |
155 | -- ; |
156 | -- The qualified curve is then constructed with this object: |
157 | -- Geom2dGcc_QualifiedCurve |
158 | -- myQCurve = Geom2dGcc::Enclosing(Obj); |
159 | |
160 | Enclosed(Obj : Curve from Geom2dAdaptor) returns QualifiedCurve; |
161 | ---Purpose: Constructs such a qualified curve that the solution |
162 | -- computed by a construction algorithm using the qualified |
163 | -- curve is enclosed by the curve. |
164 | -- Warning |
165 | -- Obj is an adapted curve, i.e. an object which is an interface between: |
166 | -- - the services provided by a 2D curve from the package Geom2d, |
167 | -- - and those required on the curve by a computation algorithm. |
168 | -- The adapted curve is created in the following way: |
169 | -- Handle(Geom2d_Curve) mycurve = ... |
170 | -- ; |
171 | -- Geom2dAdaptor_Curve Obj ( mycurve ) |
172 | -- ; |
173 | -- The qualified curve is then constructed with this object: |
174 | -- Geom2dGcc_QualifiedCurve |
175 | -- myQCurve = Geom2dGcc::Enclosed(Obj); |
176 | |
177 | Outside(Obj : Curve from Geom2dAdaptor) returns QualifiedCurve; |
178 | ---Purpose: Constructs such a qualified curve that the solution |
179 | -- computed by a construction algorithm using the qualified |
180 | -- curve and the curve are external to one another. |
181 | -- Warning |
182 | -- Obj is an adapted curve, i.e. an object which is an interface between: |
183 | -- - the services provided by a 2D curve from the package Geom2d, |
184 | -- - and those required on the curve by a computation algorithm. |
185 | -- The adapted curve is created in the following way: |
186 | -- Handle(Geom2d_Curve) mycurve = ... |
187 | -- ; |
188 | -- Geom2dAdaptor_Curve Obj ( mycurve ) |
189 | -- ; |
190 | -- The qualified curve is then constructed with this object: |
191 | -- Geom2dGcc_QualifiedCurve |
192 | -- myQCurve = Geom2dGcc::Outside(Obj); |
193 | |
194 | end Geom2dGcc; |