a9a31bc8ea66063068384d8eb2ca6852f3872cc6
[occt.git] / src / BiTgte / BiTgte_CurveOnVertex.cxx
1 // Created on: 1997-03-21
2 // Created by: Bruno DUMORTIER
3 // Copyright (c) 1997-1999 Matra Datavision
4 // Copyright (c) 1999-2012 OPEN CASCADE SAS
5 //
6 // The content of this file is subject to the Open CASCADE Technology Public
7 // License Version 6.5 (the "License"). You may not use the content of this file
8 // except in compliance with the License. Please obtain a copy of the License
9 // at http://www.opencascade.org and read it completely before using this file.
10 //
11 // The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 // main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 //
14 // The Original Code and all software distributed under the License is
15 // distributed on an "AS IS" basis, without warranty of any kind, and the
16 // Initial Developer hereby disclaims all such warranties, including without
17 // limitation, any warranties of merchantability, fitness for a particular
18 // purpose or non-infringement. Please see the License for the specific terms
19 // and conditions governing the rights and limitations under the License.
20
21
22
23 #include <BiTgte_CurveOnVertex.ixx>
24
25 #include <BiTgte_HCurveOnVertex.hxx>
26 #include <BRep_Tool.hxx>
27 #include <Standard_NotImplemented.hxx>
28
29
30 //=======================================================================
31 //function : BiTgte_CurveOnVertex
32 //purpose  : 
33 //======================================================================
34
35 BiTgte_CurveOnVertex::BiTgte_CurveOnVertex()
36 {
37 }
38
39
40 //=======================================================================
41 //function : BiTgte_CurveOnVertex
42 //purpose  : 
43 //=======================================================================
44
45 BiTgte_CurveOnVertex::BiTgte_CurveOnVertex(const TopoDS_Edge&   EonF,
46                                            const TopoDS_Vertex& V    )
47 {
48   Init(EonF,V);
49 }
50
51
52 //=======================================================================
53 //function : Init
54 //purpose  : 
55 //=======================================================================
56
57 void BiTgte_CurveOnVertex::Init(const TopoDS_Edge&   EonF,
58                                 const TopoDS_Vertex& V   )
59 {
60   BRep_Tool::Range(EonF,myFirst,myLast);
61   myPnt = BRep_Tool::Pnt(V);
62 }
63
64
65 //=======================================================================
66 //function : FirstParameter
67 //purpose  : 
68 //=======================================================================
69
70 Standard_Real BiTgte_CurveOnVertex::FirstParameter() const
71 {
72   return myFirst;
73 }
74
75
76 //=======================================================================
77 //function : LastParameter
78 //purpose  : 
79 //=======================================================================
80
81 Standard_Real BiTgte_CurveOnVertex::LastParameter() const
82 {
83   return myLast;
84 }
85
86
87 //=======================================================================
88 //function : 
89 //purpose  : 
90 //=======================================================================
91
92 GeomAbs_Shape BiTgte_CurveOnVertex::Continuity() const
93 {
94   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
95   return GeomAbs_C0;
96 }
97
98
99 //=======================================================================
100 //function : 
101 //purpose  : 
102 //=======================================================================
103
104 Standard_Integer BiTgte_CurveOnVertex::NbIntervals(const GeomAbs_Shape S) const
105 {
106   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
107   return 0;
108 }
109
110
111 //=======================================================================
112 //function : 
113 //purpose  : 
114 //=======================================================================
115
116 void BiTgte_CurveOnVertex::Intervals(TColStd_Array1OfReal& T,
117                                      const GeomAbs_Shape S) const
118 {
119   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
120 }
121
122
123 //=======================================================================
124 //function : 
125 //purpose  : 
126 //=======================================================================
127
128 Handle(Adaptor3d_HCurve) BiTgte_CurveOnVertex::Trim(const Standard_Real First,
129                                                   const Standard_Real Last,
130                                                   const Standard_Real Tol)
131 const
132 {
133   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
134   Handle(BiTgte_HCurveOnVertex) HC;
135   return HC;
136 }
137
138
139 //=======================================================================
140 //function : 
141 //purpose  : 
142 //=======================================================================
143
144 Standard_Boolean BiTgte_CurveOnVertex::IsClosed() const
145 {
146   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
147   return Standard_False;
148 }
149
150
151 //=======================================================================
152 //function : 
153 //purpose  : 
154 //=======================================================================
155
156 Standard_Boolean BiTgte_CurveOnVertex::IsPeriodic() const
157 {
158   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
159   return Standard_False;
160 }
161
162
163 //=======================================================================
164 //function : 
165 //purpose  : 
166 //=======================================================================
167
168 Standard_Real BiTgte_CurveOnVertex::Period() const
169 {
170   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
171   return 0.;
172 }
173
174
175 //=======================================================================
176 //function : 
177 //purpose  : 
178 //=======================================================================
179
180 gp_Pnt BiTgte_CurveOnVertex::Value(const Standard_Real U) const
181 {
182   return myPnt;
183 }
184
185
186 //=======================================================================
187 //function : 
188 //purpose  : 
189 //=======================================================================
190
191 void BiTgte_CurveOnVertex::D0(const Standard_Real U,gp_Pnt& P) const
192 {
193   P = myPnt;
194 }
195
196
197 //=======================================================================
198 //function : 
199 //purpose  : 
200 //=======================================================================
201
202 void BiTgte_CurveOnVertex::D1(const Standard_Real U,gp_Pnt& P,gp_Vec& V) const
203 {
204   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
205 }
206
207
208 //=======================================================================
209 //function : 
210 //purpose  : 
211 //=======================================================================
212
213 void BiTgte_CurveOnVertex::D2(const Standard_Real U,gp_Pnt& P,
214                               gp_Vec& V1,gp_Vec& V2) const
215 {
216   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
217 }
218
219
220 //=======================================================================
221 //function : 
222 //purpose  : 
223 //=======================================================================
224
225 void BiTgte_CurveOnVertex::D3(const Standard_Real U,gp_Pnt& P,
226                               gp_Vec& V1,gp_Vec& V2,gp_Vec& V3) const
227 {
228   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
229 }
230
231
232 //=======================================================================
233 //function : 
234 //purpose  : 
235 //=======================================================================
236
237 gp_Vec BiTgte_CurveOnVertex::DN(const Standard_Real U,
238                                 const Standard_Integer N) const
239 {
240   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
241   return gp_Vec();
242 }
243
244
245 //=======================================================================
246 //function : 
247 //purpose  : 
248 //=======================================================================
249
250 Standard_Real BiTgte_CurveOnVertex::Resolution(const Standard_Real R3d) const
251 {
252   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
253   return 0.;
254 }
255
256
257 //=======================================================================
258 //function : 
259 //purpose  : 
260 //=======================================================================
261
262 GeomAbs_CurveType BiTgte_CurveOnVertex::GetType() const
263 {
264   return GeomAbs_OtherCurve;
265 }
266
267
268 //=======================================================================
269 //function : 
270 //purpose  : 
271 //=======================================================================
272
273 gp_Lin BiTgte_CurveOnVertex::Line() const
274 {
275   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
276   return gp_Lin();
277 }
278
279
280 //=======================================================================
281 //function : 
282 //purpose  : 
283 //=======================================================================
284
285 gp_Circ BiTgte_CurveOnVertex::Circle() const
286 {
287   Standard_NoSuchObject::Raise("BiTgte_CurveOnVertex::Circle");
288   return gp_Circ();
289 }
290
291
292 //=======================================================================
293 //function : 
294 //purpose  : 
295 //=======================================================================
296
297 gp_Elips BiTgte_CurveOnVertex::Ellipse() const
298 {
299   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
300   return gp_Elips();
301 }
302
303
304 //=======================================================================
305 //function : 
306 //purpose  : 
307 //=======================================================================
308
309 gp_Hypr BiTgte_CurveOnVertex::Hyperbola() const
310 {
311   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
312   return gp_Hypr();
313 }
314
315
316 //=======================================================================
317 //function : 
318 //purpose  : 
319 //=======================================================================
320
321 gp_Parab BiTgte_CurveOnVertex::Parabola() const
322 {
323   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
324   return gp_Parab();
325 }
326
327
328 //=======================================================================
329 //function : 
330 //purpose  : 
331 //=======================================================================
332
333 Standard_Integer BiTgte_CurveOnVertex::Degree() const
334 {
335   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
336   return 0;
337 }
338
339
340 //=======================================================================
341 //function : 
342 //purpose  : 
343 //=======================================================================
344
345 Standard_Boolean BiTgte_CurveOnVertex::IsRational() const
346 {
347   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
348   return Standard_False;
349 }
350
351
352 //=======================================================================
353 //function : 
354 //purpose  : 
355 //=======================================================================
356
357 Standard_Integer BiTgte_CurveOnVertex::NbPoles() const
358 {
359   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
360   return 0;
361 }
362
363
364 //=======================================================================
365 //function : 
366 //purpose  : 
367 //=======================================================================
368
369 Standard_Integer BiTgte_CurveOnVertex::NbKnots() const
370 {
371   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
372   return 0;
373 }
374
375
376 //=======================================================================
377 //function : 
378 //purpose  : 
379 //=======================================================================
380
381 Handle(Geom_BezierCurve) BiTgte_CurveOnVertex::Bezier() const
382 {
383   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
384   Handle(Geom_BezierCurve) B;
385   return B;
386 }
387
388
389 //=======================================================================
390 //function : 
391 //purpose  : 
392 //=======================================================================
393
394 Handle(Geom_BSplineCurve) BiTgte_CurveOnVertex::BSpline() const
395 {
396   Standard_NotImplemented::Raise("BiTgte_CurveOnVertex");
397   Handle(Geom_BSplineCurve) B;
398   return B;
399 }
400
401