1 -- File: IntPatch_Point.cdl
2 -- Created: Wed May 6 14:01:12 1992
3 -- Author: Jacques GOUSSARD
4 ---Copyright: OPEN CASCADE 1992
7 class Point from IntPatch
9 ---Purpose: Definition of an intersection point between two surfaces.
10 -- Such a point is contains geometrical informations (see
11 -- the Value method) and logical informations.
14 HVertex from Adaptor3d,
15 HCurve2d from Adaptor2d,
18 Transition from IntSurf,
21 raises DomainError from Standard
28 ---Purpose: Empty constructor.
30 returns Point from IntPatch;
33 SetValue(me: in out; Pt: Pnt from gp; Tol: Real from Standard;
34 Tangent: Boolean from Standard)
36 ---Purpose: Sets the values of a point which is on no domain,
37 -- when both surfaces are implicit ones.
38 -- If Tangent is True, the point is a point of tangency
39 -- between the surfaces.
44 SetValue(me: in out; Pt: Pnt from gp)
49 SetTolerance(me: in out; Tol: Real from Standard)
54 SetParameters(me: in out; U1,V1,U2,V2: Real from Standard)
56 ---Purpose: Sets the values of the parameters of the point
62 SetParameter(me: in out; Para: Real from Standard)
64 ---Purpose: Set the value of the parameter on the intersection line.
69 SetVertex(me: in out; OnFirst: Boolean from Standard; V: HVertex from Adaptor3d)
71 ---Purpose: Sets the values of a point which is a vertex on
72 -- the initial facet of restriction of one
74 -- If OnFirst is True, the point is on the domain of the
75 -- first patch, otherwise the point is on the domain of the
81 SetArc(me: in out; OnFirst: Boolean from Standard;
82 A: HCurve2d from Adaptor2d; Param: Real from Standard;
83 TLine, TArc: Transition from IntSurf)
85 ---Purpose: Sets the values of a point which is on one of the domain,
86 -- when both surfaces are implicit ones.
87 -- If OnFirst is True, the point is on the domain of the
88 -- first patch, otherwise the point is on the domain of the
94 SetMultiple(me: in out; IsMult: Boolean from Standard)
96 ---Purpose: Sets (or unsets) the point as a point on several
104 ---Purpose: Returns the intersection point (geometric information).
107 ---C++: return const&
115 ---Purpose: This method returns the parameter of the point
116 -- on the intersection line.
117 -- If the points does not belong to an intersection line,
118 -- the value returned does not have any sens.
120 returns Real from Standard
128 ---Purpose: This method returns the fuzziness on the point.
130 returns Real from Standard
138 ---Purpose: Returns True if the Point is a tangency point between
140 -- If the Point is on one of the domain (IsOnDomS1 returns
141 -- True or IsOnDomS2 returns True), an exception is raised.
143 returns Boolean from Standard
146 raises DomainError from Standard
151 ParametersOnS1(me; U1,V1: out Real from Standard)
153 ---Purpose: Returns the parameters on the first surface of the point.
155 raises DomainError from Standard
161 ParametersOnS2(me; U2,V2: out Real from Standard)
163 ---Purpose: Returns the parameters on the second surface of the point.
165 raises DomainError from Standard
173 ---Purpose: Returns True if the point belongs to several intersection
176 returns Boolean from Standard
184 ---Purpose: Returns TRUE if the point is on a boundary of the domain
185 -- of the first patch.
187 returns Boolean from Standard
195 ---Purpose: Returns TRUE if the point is a vertex on the initial
196 -- restriction facet of the first surface.
198 returns Boolean from Standard
206 ---Purpose: Returns the information about the point when it is
207 -- on the domain of the first patch, i-e when the function
208 -- IsVertexOnS1 returns True.
209 -- Otherwise, an exception is raised.
211 returns HVertex from Adaptor3d
212 ---C++: return const&
215 raises DomainError from Standard
222 ---Purpose: Returns the arc of restriction containing the
224 -- The exception DomainError is raised if
225 -- IsOnDomS1 returns False.
227 returns HCurve2d from Adaptor2d
228 ---C++: return const&
231 raises DomainError from Standard
236 TransitionLineArc1(me)
238 ---Purpose: Returns the transition of the point on the
239 -- intersection line with the arc on S1.
240 -- The exception DomainError is raised if IsOnDomS1
243 returns Transition from IntSurf
244 ---C++: return const&
247 raises DomainError from Standard
254 ---Purpose: Returns the transition between the intersection line
255 -- returned by the method Line and the arc on S1 returned
257 -- The exception DomainError is raised if
258 -- IsOnDomS1 returns False.
260 returns Transition from IntSurf
261 ---C++: return const&
264 raises DomainError from Standard
271 ---Purpose: Returns the parameter of the point on the
272 -- arc returned by the method ArcOnS2.
273 -- The exception DomainError is raised if
274 -- IsOnDomS1 returns False.
276 returns Real from Standard
279 raises DomainError from Standard
286 ---Purpose: Returns TRUE if the point is on a boundary of the domain
287 -- of the second patch.
289 returns Boolean from Standard
297 ---Purpose: Returns TRUE if the point is a vertex on the initial
298 -- restriction facet of the first surface.
300 returns Boolean from Standard
308 ---Purpose: Returns the information about the point when it is
309 -- on the domain of the second patch, i-e when the function
310 -- IsVertexOnS2 returns True.
311 -- Otherwise, an exception is raised.
313 returns HVertex from Adaptor3d
314 ---C++: return const&
317 raises DomainError from Standard
324 ---Purpose: Returns the arc of restriction containing the
326 -- The exception DomainError is raised if
327 -- IsOnDomS2 returns False.
329 returns HCurve2d from Adaptor2d
330 ---C++: return const&
333 raises DomainError from Standard
338 TransitionLineArc2(me)
340 ---Purpose: Returns the transition of the point on the
341 -- intersection line with the arc on S2.
342 -- The exception DomainError is raised if IsOnDomS2
345 returns Transition from IntSurf
346 ---C++: return const&
349 raises DomainError from Standard
356 ---Purpose: Returns the transition between the intersection line
357 -- returned by the method Line and the arc on S2 returned
359 -- The exception DomainError is raised if
360 -- IsOnDomS2 returns False.
362 returns Transition from IntSurf
363 ---C++: return const&
366 raises DomainError from Standard
373 ---Purpose: Returns the parameter of the point on the
374 -- arc returned by the method ArcOnS2.
375 -- The exception DomainError is raised if
376 -- IsOnDomS2 returns False.
378 returns Real from Standard
381 raises DomainError from Standard
388 ---Purpose: Returns the PntOn2S
389 -- (geometric Point and the parameters)
392 ---C++: return const &
394 returns PntOn2S from IntSurf
397 Parameters(me; U1,V1,U2,V2: out Real from Standard)
398 ---Purpose: Returns the parameters on the first and on the
399 -- second surface of the point.
400 raises DomainError from Standard
406 ReverseTransition(me: in out)
415 pt : PntOn2S from IntSurf;
416 para : Real from Standard;
417 tol : Real from Standard;
418 tgt : Boolean from Standard;
419 mult : Boolean from Standard;
421 onS1 : Boolean from Standard;
422 vtxonS1 : Boolean from Standard;
423 vS1 : HVertex from Adaptor3d;
424 arcS1 : HCurve2d from Adaptor2d;
425 traline1 : Transition from IntSurf;
426 tra1 : Transition from IntSurf;
427 prm1 : Real from Standard;
429 onS2 : Boolean from Standard;
430 vtxonS2 : Boolean from Standard;
431 vS2 : HVertex from Adaptor3d;
432 arcS2 : HCurve2d from Adaptor2d;
433 traline2 : Transition from IntSurf;
434 tra2 : Transition from IntSurf;
435 prm2 : Real from Standard;