0024585: Wrong pcurve of the section curve
[occt.git] / src / IntPatch / IntPatch_WLine.cdl
CommitLineData
b311480e 1-- Created on: 1991-05-27
2-- Created by: Isabelle GRIGNON
3-- Copyright (c) 1991-1999 Matra Datavision
973c2be1 4-- Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 5--
973c2be1 6-- This file is part of Open CASCADE Technology software library.
b311480e 7--
973c2be1 8-- This library is free software; you can redistribute it and / or modify it
9-- under the terms of the GNU Lesser General Public version 2.1 as published
10-- by the Free Software Foundation, with special exception defined in the file
11-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12-- distribution for complete text of the license and disclaimer of any warranty.
b311480e 13--
973c2be1 14-- Alternatively, this file may be used under the terms of Open CASCADE
15-- commercial license or contractual agreement.
7fd59977 16
17class WLine from IntPatch
18
19inherits Line from IntPatch
20
21 ---Purpose: Definition of set of points as a result of the intersection
22 -- between 2 parametrised patches.
23
24uses
25 HCurve2d from Adaptor2d,
26 Point from IntPatch,
27 SequenceOfPoint from IntPatch,
28 PntOn2S from IntSurf,
29 LineOn2S from IntSurf,
30 TypeTrans from IntSurf,
31 Situation from IntSurf,
32 Box2d from Bnd,
33 Box from Bnd,
34 Pnt2d from gp,
35 Pnt from gp
36
37raises OutOfRange from Standard,
38 DomainError from Standard
39is
40 Create(Line: LineOn2S from IntSurf; Tang: Boolean from Standard;
41 Trans1, Trans2: TypeTrans from IntSurf)
42
43 ---Purpose: Creates a WLine as an intersection when the
44 -- transitions are In or Out.
45
46 returns mutable WLine from IntPatch;
47
48
49 Create(Line: LineOn2S from IntSurf; Tang: Boolean from Standard;
50 Situ1,Situ2: Situation from IntSurf)
51
52 ---Purpose: Creates a WLine as an intersection when the
53 -- transitions are Touch.
54
55 returns mutable WLine from IntPatch;
56
57
58 Create(Line: LineOn2S from IntSurf; Tang: Boolean from Standard)
59
60 ---Purpose: Creates a WLine as an intersection when the
61 -- transitions are Undecided.
62
63 returns mutable WLine from IntPatch;
64
65
66 AddVertex(me: mutable; Pnt: Point from IntPatch)
67
68 ---Purpose: Adds a vertex in the list.
69
70 ---C++: inline
71
72 is static;
73
74
75 SetPoint(me:mutable; Index: Integer from Standard; Pnt: Point from IntPatch)
76
77 ---Purpose: Set the Point of index <Index> in the LineOn2S
78
79 is static;
80
81
82 Replace(me: mutable; Index: Integer from Standard; Pnt: Point from IntPatch)
83
84 ---Purpose: Replaces the element of range Index in the list
85 -- of points.
86 -- The exception OutOfRange is raised when
87 -- Index <= 0 or Index > NbVertex.
88
89 ---C++: inline
90
91 raises OutOfRange from Standard
92
93 is static;
94
95
96 SetFirstPoint(me: mutable; IndFirst: Integer from Standard) is static;
97
98 ---C++: inline
99
100
101 SetLastPoint(me: mutable; IndLast: Integer from Standard) is static;
102
103 ---C++: inline
104
105
106 NbPnts(me)
107
108 ---Purpose: Returns the number of intersection points.
109
110 returns Integer from Standard
111 ---C++: inline
112
113 is static;
114
115
116 Point(me; Index: Integer from Standard)
117
118 ---Purpose: Returns the intersection point of range Index.
119
120 returns PntOn2S from IntSurf
121 ---C++: inline
122 ---C++: return const&
123
124 raises OutOfRange from Standard
125 --- The exception OutOfRange is raised if Index <= 0 or Index > NbPnts.
126
127 is static;
128
129
130 HasFirstPoint(me)
131
132 ---Purpose: Returns True if the line has a known First point.
133 -- This point is given by the method FirstPoint().
134
135 returns Boolean from Standard
136 ---C++: inline
137
138 is static;
139
140
141 HasLastPoint(me)
142
143 ---Purpose: Returns True if the line has a known Last point.
144 -- This point is given by the method LastPoint().
145
146 returns Boolean from Standard
147 ---C++: inline
148
149 is static;
150
151
152 FirstPoint(me)
153
154 ---Purpose: Returns the Point corresponding to the FirstPoint.
155
156 returns Point from IntPatch
157 ---C++: inline
158 ---C++: return const&
159
160 raises DomainError from Standard
161 --- The exception DomainError is raised when HasFirstPoint
162 -- returns False.
163
164 is static;
165
166
167 LastPoint(me)
168
169 ---Purpose: Returns the Point corresponding to the LastPoint.
170
171 returns Point from IntPatch
172 ---C++: inline
173 ---C++: return const&
174
175 raises DomainError from Standard
176 --- The exception DomainError is raised when HasFirstPoint
177 -- returns False.
178
179 is static;
180
181
182 FirstPoint(me; Indfirst: out Integer from Standard)
183
184 ---Purpose: Returns the Point corresponding to the FirstPoint.
185 -- Indfirst is the index of the first in the list
186 -- of vertices.
187
188 returns Point from IntPatch
189 ---C++: inline
190 ---C++: return const&
191
192 raises DomainError from Standard
193 --- The exception DomainError is raised when HasFirstPoint
194 -- returns False.
195
196 is static;
197
198
199 LastPoint(me; Indlast: out Integer from Standard)
200
201 ---Purpose: Returns the Point corresponding to the LastPoint.
202 -- Indlast is the index of the last in the list
203 -- of vertices.
204
205 returns Point from IntPatch
206 ---C++: inline
207 ---C++: return const&
208
209 raises DomainError from Standard
210 --- The exception DomainError is raised when HasFirstPoint
211 -- returns False.
212
213 is static;
214
215
216 NbVertex(me)
217
218 returns Integer from Standard
219 ---C++: inline
220
221 is static;
222
223
224 Vertex(me; Index: Integer from Standard)
225
226 ---Purpose: Returns the vertex of range Index on the line.
227
228 returns Point from IntPatch
229 ---C++: inline
230 ---C++: return const&
231
232 raises OutOfRange from Standard
233 --- The exception OutOfRange is raised if Index <= 0 or
234 -- Index > NbVertex.
235
236 is static;
237
238
c2c2f2b6 239 ComputeVertexParameters(me: mutable;
240 Tol: Real from Standard;
241 hasBeenAdded: Boolean from Standard = Standard_False)
7fd59977 242
243 ---Purpose: Set the parameters of all the vertex on the line.
244 -- if a vertex is already in the line,
245 -- its parameter is modified
246 -- else a new point in the line is inserted.
247 is static;
248
249 Curve(me)
250
251 returns LineOn2S from IntSurf
252 is static;
253
254
255 IsOutSurf1Box(me: mutable; P1: Pnt2d from gp )
256 returns Boolean from Standard
257 is static;
258
259 IsOutSurf2Box(me: mutable; P1: Pnt2d from gp )
260 returns Boolean from Standard
261 is static;
262
263 IsOutBox(me: mutable; P: Pnt from gp)
264 returns Boolean from Standard
265 is static;
266
267
268 SetPeriod(me: mutable; pu1,pv1,pu2,pv2: Real from Standard)
269 is static;
270
271
272 U1Period(me)
273 returns Real from Standard
274 is static;
275
276 V1Period(me)
277 returns Real from Standard
278 is static;
279
280 U2Period(me)
281 returns Real from Standard
282 is static;
283
284 V2Period(me)
285 returns Real from Standard
286 is static;
287
288
289
290 SetArcOnS1(me: mutable ; A : HCurve2d from Adaptor2d)
291 is static;
292
293 HasArcOnS1(me)
294 returns Boolean from Standard
295 is static;
296
297 GetArcOnS1(me)
298 ---C++: return const&
299 returns HCurve2d from Adaptor2d;
300
301 SetArcOnS2(me: mutable ; A : HCurve2d from Adaptor2d)
302 is static;
303
304 HasArcOnS2(me)
305 returns Boolean from Standard
306 is static;
307
308 GetArcOnS2(me)
309 ---C++: return const&
310 returns HCurve2d from Adaptor2d;
311
312 Dump(me)
313
314 is static;
315
316
317fields
318
319 curv : LineOn2S from IntSurf;
320 fipt : Boolean from Standard;
321 lapt : Boolean from Standard;
322 indf : Integer from Standard;
323 indl : Integer from Standard;
324 svtx : SequenceOfPoint from IntPatch;
325
326 Buv1 : Box2d from Bnd;
327 Buv2 : Box2d from Bnd;
328 Bxyz : Box from Bnd;
329
330 u1period : Real from Standard;
331 v1period : Real from Standard;
332 u2period : Real from Standard;
333 v2period : Real from Standard;
334
335 hasArcOnS1 : Boolean from Standard;
336 theArcOnS1 : HCurve2d from Adaptor2d;
337 hasArcOnS2 : Boolean from Standard;
338 theArcOnS2 : HCurve2d from Adaptor2d;
339
340end WLine;