0033661: Data Exchange, Step Import - Tessellated GDTs are not imported
[occt.git] / src / BiTgte / BiTgte_CurveOnVertex.cxx
CommitLineData
b311480e 1// Created on: 1997-03-21
2// Created by: Bruno DUMORTIER
3// Copyright (c) 1997-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//
d5f74e42 8// This library is free software; you can redistribute it and/or modify it under
9// the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 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
42cf5bc1 17#include <BiTgte_CurveOnVertex.hxx>
c22b52d6 18
19#include <Adaptor3d_Curve.hxx>
7fd59977 20#include <BRep_Tool.hxx>
42cf5bc1 21#include <Geom_BezierCurve.hxx>
22#include <Geom_BSplineCurve.hxx>
23#include <gp_Circ.hxx>
24#include <gp_Elips.hxx>
25#include <gp_Hypr.hxx>
26#include <gp_Lin.hxx>
27#include <gp_Parab.hxx>
28#include <gp_Pnt.hxx>
29#include <gp_Vec.hxx>
42cf5bc1 30#include <Standard_NoSuchObject.hxx>
7fd59977 31#include <Standard_NotImplemented.hxx>
42cf5bc1 32#include <TopoDS_Edge.hxx>
33#include <TopoDS_Vertex.hxx>
7fd59977 34
c22b52d6 35IMPLEMENT_STANDARD_RTTIEXT(BiTgte_CurveOnVertex, Adaptor3d_Curve)
36
7fd59977 37//=======================================================================
38//function : BiTgte_CurveOnVertex
39//purpose :
40//======================================================================
7fd59977 41BiTgte_CurveOnVertex::BiTgte_CurveOnVertex()
cbff1e55 42: myFirst(0.0), myLast(0.0)
7fd59977 43{
44}
45
46
47//=======================================================================
48//function : BiTgte_CurveOnVertex
49//purpose :
50//=======================================================================
51
cbff1e55 52BiTgte_CurveOnVertex::BiTgte_CurveOnVertex(const TopoDS_Edge& theEonF,
53 const TopoDS_Vertex& theVertex)
54: myFirst(0.0), myLast(0.0)
7fd59977 55{
cbff1e55 56 Init(theEonF, theVertex);
7fd59977 57}
58
59
60//=======================================================================
61//function : Init
62//purpose :
63//=======================================================================
64
65void BiTgte_CurveOnVertex::Init(const TopoDS_Edge& EonF,
cbff1e55 66 const TopoDS_Vertex& V)
7fd59977 67{
68 BRep_Tool::Range(EonF,myFirst,myLast);
69 myPnt = BRep_Tool::Pnt(V);
70}
71
72
73//=======================================================================
74//function : FirstParameter
75//purpose :
76//=======================================================================
77
78Standard_Real BiTgte_CurveOnVertex::FirstParameter() const
79{
80 return myFirst;
81}
82
83
84//=======================================================================
85//function : LastParameter
86//purpose :
87//=======================================================================
88
89Standard_Real BiTgte_CurveOnVertex::LastParameter() const
90{
91 return myLast;
92}
93
94
95//=======================================================================
96//function :
97//purpose :
98//=======================================================================
99
100GeomAbs_Shape BiTgte_CurveOnVertex::Continuity() const
101{
9775fa61 102 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 103}
104
105
106//=======================================================================
107//function :
108//purpose :
109//=======================================================================
110
35e08fe8 111Standard_Integer BiTgte_CurveOnVertex::NbIntervals(const GeomAbs_Shape) const
7fd59977 112{
9775fa61 113 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 114}
115
116
117//=======================================================================
118//function :
119//purpose :
120//=======================================================================
121
35e08fe8 122void BiTgte_CurveOnVertex::Intervals(TColStd_Array1OfReal&,
123 const GeomAbs_Shape) const
7fd59977 124{
9775fa61 125 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 126}
127
128
129//=======================================================================
130//function :
131//purpose :
132//=======================================================================
133
c22b52d6 134Handle(Adaptor3d_Curve) BiTgte_CurveOnVertex::Trim(const Standard_Real,
35e08fe8 135 const Standard_Real,
136 const Standard_Real)
7fd59977 137const
138{
9775fa61 139 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 140}
141
142
143//=======================================================================
144//function :
145//purpose :
146//=======================================================================
147
148Standard_Boolean BiTgte_CurveOnVertex::IsClosed() const
149{
9775fa61 150 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 151}
152
153
154//=======================================================================
155//function :
156//purpose :
157//=======================================================================
158
159Standard_Boolean BiTgte_CurveOnVertex::IsPeriodic() const
160{
9775fa61 161 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 162}
163
164
165//=======================================================================
166//function :
167//purpose :
168//=======================================================================
169
170Standard_Real BiTgte_CurveOnVertex::Period() const
171{
9775fa61 172 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 173}
174
175
176//=======================================================================
177//function :
178//purpose :
179//=======================================================================
180
35e08fe8 181gp_Pnt BiTgte_CurveOnVertex::Value(const Standard_Real) const
7fd59977 182{
183 return myPnt;
184}
185
186
187//=======================================================================
188//function :
189//purpose :
190//=======================================================================
191
35e08fe8 192void BiTgte_CurveOnVertex::D0(const Standard_Real /*U*/,gp_Pnt& P) const
7fd59977 193{
194 P = myPnt;
195}
196
197
198//=======================================================================
199//function :
200//purpose :
201//=======================================================================
202
35e08fe8 203void BiTgte_CurveOnVertex::D1(const Standard_Real ,gp_Pnt& ,gp_Vec&) const
7fd59977 204{
9775fa61 205 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 206}
207
208
209//=======================================================================
210//function :
211//purpose :
212//=======================================================================
213
35e08fe8 214void BiTgte_CurveOnVertex::D2(const Standard_Real,gp_Pnt&,
215 gp_Vec& ,gp_Vec& ) const
7fd59977 216{
9775fa61 217 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 218}
219
220
221//=======================================================================
222//function :
223//purpose :
224//=======================================================================
225
35e08fe8 226void BiTgte_CurveOnVertex::D3(const Standard_Real,
227 gp_Pnt& ,
228 gp_Vec& ,
229 gp_Vec& ,
230 gp_Vec& ) const
7fd59977 231{
9775fa61 232 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 233}
234
235
236//=======================================================================
237//function :
238//purpose :
239//=======================================================================
240
35e08fe8 241gp_Vec BiTgte_CurveOnVertex::DN(const Standard_Real,
242 const Standard_Integer) const
7fd59977 243{
9775fa61 244 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 245}
246
247
248//=======================================================================
249//function :
250//purpose :
251//=======================================================================
252
35e08fe8 253Standard_Real BiTgte_CurveOnVertex::Resolution(const Standard_Real) const
7fd59977 254{
9775fa61 255 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 256}
257
258
259//=======================================================================
260//function :
261//purpose :
262//=======================================================================
263
264GeomAbs_CurveType BiTgte_CurveOnVertex::GetType() const
265{
266 return GeomAbs_OtherCurve;
267}
268
269
270//=======================================================================
271//function :
272//purpose :
273//=======================================================================
274
275gp_Lin BiTgte_CurveOnVertex::Line() const
276{
9775fa61 277 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 278}
279
280
281//=======================================================================
282//function :
283//purpose :
284//=======================================================================
285
286gp_Circ BiTgte_CurveOnVertex::Circle() const
287{
9775fa61 288 throw Standard_NoSuchObject("BiTgte_CurveOnVertex::Circle");
7fd59977 289}
290
291
292//=======================================================================
293//function :
294//purpose :
295//=======================================================================
296
297gp_Elips BiTgte_CurveOnVertex::Ellipse() const
298{
9775fa61 299 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 300}
301
302
303//=======================================================================
304//function :
305//purpose :
306//=======================================================================
307
308gp_Hypr BiTgte_CurveOnVertex::Hyperbola() const
309{
9775fa61 310 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 311}
312
313
314//=======================================================================
315//function :
316//purpose :
317//=======================================================================
318
319gp_Parab BiTgte_CurveOnVertex::Parabola() const
320{
9775fa61 321 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 322}
323
324
325//=======================================================================
326//function :
327//purpose :
328//=======================================================================
329
330Standard_Integer BiTgte_CurveOnVertex::Degree() const
331{
9775fa61 332 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 333}
334
335
336//=======================================================================
337//function :
338//purpose :
339//=======================================================================
340
341Standard_Boolean BiTgte_CurveOnVertex::IsRational() const
342{
9775fa61 343 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 344}
345
346
347//=======================================================================
348//function :
349//purpose :
350//=======================================================================
351
352Standard_Integer BiTgte_CurveOnVertex::NbPoles() const
353{
9775fa61 354 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 355}
356
357
358//=======================================================================
359//function :
360//purpose :
361//=======================================================================
362
363Standard_Integer BiTgte_CurveOnVertex::NbKnots() const
364{
9775fa61 365 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 366}
367
368
369//=======================================================================
370//function :
371//purpose :
372//=======================================================================
373
374Handle(Geom_BezierCurve) BiTgte_CurveOnVertex::Bezier() const
375{
9775fa61 376 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 377}
378
379
380//=======================================================================
381//function :
382//purpose :
383//=======================================================================
384
385Handle(Geom_BSplineCurve) BiTgte_CurveOnVertex::BSpline() const
386{
9775fa61 387 throw Standard_NotImplemented("BiTgte_CurveOnVertex");
7fd59977 388}
389
390