Integration of OCCT 6.5.0 from SVN
[occt.git] / src / HLRBRep / HLRBRep_Curve.lxx
1 // File:        HLRBRep_Curve.lxx
2 // Created:     Fri Mar 13 11:08:32 1992
3 // Author:      Christophe MARION
4 //              <cma@sdsun2>
5
6 #include <Standard_NotImplemented.hxx>
7 #include <gp_Pnt2d.hxx>
8 #include <gp_Vec2d.hxx>
9 #include <gp_Lin2d.hxx>
10 #include <gp_Circ2d.hxx>
11 #include <gp_Elips2d.hxx>
12 #include <gp_Hypr2d.hxx>
13 #include <gp_Parab2d.hxx>
14 #include <HLRBRep_BCurveTool.hxx>
15
16 //=======================================================================
17 //function : Projector
18 //purpose  : 
19 //=======================================================================
20
21 inline void HLRBRep_Curve::Projector(const Standard_Address Proj)
22 { myProj = Proj; }
23
24 //=======================================================================
25 //function : Curve
26 //purpose  : 
27 //=======================================================================
28
29 inline BRepAdaptor_Curve& HLRBRep_Curve::Curve()
30 { return myCurve; }
31
32 //=======================================================================
33 //function : Value3D
34 //purpose  : 
35 //=======================================================================
36
37 inline gp_Pnt HLRBRep_Curve::Value3D(const Standard_Real U) const 
38 {
39   gp_Pnt P;
40   D0(U,P);
41   return P;
42 }
43
44 //=======================================================================
45 //function : D0
46 //purpose  : 
47 //=======================================================================
48
49 inline void HLRBRep_Curve::D0(const Standard_Real U, gp_Pnt& P) const
50 { HLRBRep_BCurveTool::D0(myCurve,U,P); }
51
52 //=======================================================================
53 //function : D1
54 //purpose  : 
55 //=======================================================================
56
57 inline void HLRBRep_Curve::D1(const Standard_Real U,
58                               gp_Pnt& P,
59                               gp_Vec& V) const
60 { HLRBRep_BCurveTool::D1(myCurve,U,P,V); }
61
62 //=======================================================================
63 //function : FirstParameter
64 //purpose  : 
65 //=======================================================================
66
67 inline Standard_Real  HLRBRep_Curve::FirstParameter() const
68 { return Parameter2d(HLRBRep_BCurveTool::FirstParameter(myCurve)); }
69
70 //=======================================================================
71 //function : LastParameter
72 //purpose  : 
73 //=======================================================================
74
75 inline Standard_Real  HLRBRep_Curve::LastParameter() const
76 { return Parameter2d(HLRBRep_BCurveTool::LastParameter(myCurve)); }
77
78 //=======================================================================
79 //function : Continuity
80 //purpose  : 
81 //=======================================================================
82
83 inline GeomAbs_Shape  HLRBRep_Curve::Continuity() const
84 { return HLRBRep_BCurveTool::Continuity(myCurve); }
85
86 //=======================================================================
87 //function : NbIntervals
88 //purpose  : 
89 //=======================================================================
90
91 inline Standard_Integer  HLRBRep_Curve::NbIntervals
92   (const GeomAbs_Shape S)  
93 { return HLRBRep_BCurveTool::NbIntervals(myCurve,S); }
94
95 //=======================================================================
96 //function : Intervals
97 //purpose  : 
98 //=======================================================================
99
100 inline void HLRBRep_Curve::Intervals(TColStd_Array1OfReal& Tab,
101                                      const GeomAbs_Shape Sh) 
102 { HLRBRep_BCurveTool::Intervals(myCurve,Tab,Sh); }
103
104
105 //=======================================================================
106 //function : IsClosed
107 //purpose  : 
108 //=======================================================================
109
110 inline Standard_Boolean  HLRBRep_Curve::IsClosed()const 
111 { return HLRBRep_BCurveTool::IsClosed(myCurve); }
112
113 //=======================================================================
114 //function : IsPeriodic
115 //purpose  : 
116 //=======================================================================
117
118 inline Standard_Boolean  HLRBRep_Curve::IsPeriodic()const 
119 { return HLRBRep_BCurveTool::IsPeriodic(myCurve); }
120
121 //=======================================================================
122 //function : Period
123 //purpose  : 
124 //=======================================================================
125
126 inline Standard_Real  HLRBRep_Curve::Period()const 
127 { return HLRBRep_BCurveTool::Period(myCurve); }
128
129 //=======================================================================
130 //function : Value
131 //purpose  : 
132 //=======================================================================
133
134 inline gp_Pnt2d HLRBRep_Curve::Value
135   (const Standard_Real U) const 
136 {
137   gp_Pnt2d P;
138   D0(U,P);
139   return P;
140 }
141
142 //=======================================================================
143 //function : Resolution
144 //purpose  : 
145 //=======================================================================
146
147 inline Standard_Real HLRBRep_Curve::Resolution
148   (const Standard_Real R3d) const
149 { return HLRBRep_BCurveTool::Resolution(myCurve,R3d); }
150
151 //=======================================================================
152 //function : GetType
153 //purpose  : 
154 //=======================================================================
155
156 inline GeomAbs_CurveType HLRBRep_Curve::GetType() const 
157 { return myType; }
158
159 //=======================================================================
160 //function : Degree
161 //purpose  : 
162 //=======================================================================
163
164 inline Standard_Integer  HLRBRep_Curve::Degree() const
165 { return HLRBRep_BCurveTool::Degree(myCurve); }
166
167
168 //=======================================================================
169 //function : NbPoles
170 //purpose  : 
171 //=======================================================================
172
173 inline Standard_Integer  HLRBRep_Curve::NbPoles() const
174 { return HLRBRep_BCurveTool::NbPoles(myCurve); }
175
176 //=======================================================================
177 //function : NbKnots
178 //purpose  : 
179 //=======================================================================
180
181 inline Standard_Integer  HLRBRep_Curve::NbKnots() const
182 { return HLRBRep_BCurveTool::NbKnots(myCurve); }
183
184
185 //=======================================================================
186 //function : IsRational
187 //purpose  : 
188 //=======================================================================
189
190 inline Standard_Boolean HLRBRep_Curve::IsRational() const
191 {
192   return HLRBRep_BCurveTool::IsRational(myCurve);
193 }
194