0024157: Parallelization of assembly part of BO
[occt.git] / src / BRepBlend / BRepBlend_HCurve2dToolGen.lxx
1 // Created on: 1992-10-22
2 // Created by: Laurent BUCHARD
3 // Copyright (c) 1992-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 CurveGen_hxx
24
25 #include <GeomAbs_CurveType.hxx>
26 #include <GeomAbs_Shape.hxx>
27
28 #include <gp_Vec2d.hxx>
29 #include <gp_Lin2d.hxx>
30 #include <gp_Circ2d.hxx>
31 #include <gp_Elips2d.hxx>
32 #include <gp_Parab2d.hxx>
33 #include <gp_Hypr2d.hxx>
34
35
36 #include <Handle_Geom2d_BezierCurve.hxx>
37 #include <Handle_Geom2d_BSplineCurve.hxx>
38
39 #include <TColStd_Array1OfReal.hxx>
40
41 //============================================================
42 inline Standard_Real BRepBlend_HCurve2dToolGen::FirstParameter (const CurveGen& C) {
43   return(C->FirstParameter());
44 }
45 //============================================================
46 inline Standard_Real BRepBlend_HCurve2dToolGen::LastParameter (const CurveGen& C) {
47   return(C->LastParameter());
48 }
49 //============================================================
50 inline GeomAbs_Shape BRepBlend_HCurve2dToolGen::Continuity (const CurveGen& C) {
51   return(C->Continuity());
52 }
53 //============================================================
54 inline Standard_Integer BRepBlend_HCurve2dToolGen::NbIntervals(const CurveGen& C,const GeomAbs_Shape Sh) {
55   return(C->NbIntervals(Sh));
56 }
57 //============================================================
58 inline void BRepBlend_HCurve2dToolGen::Intervals(const CurveGen& C,
59                                                              TColStd_Array1OfReal& Tab,
60                                                              const GeomAbs_Shape Sh) {
61   C->Intervals(Tab,Sh);
62 }
63 //============================================================
64 inline Standard_Boolean BRepBlend_HCurve2dToolGen::IsClosed(const CurveGen& C) {
65   return(C->IsClosed());
66 }
67 //============================================================
68 inline Standard_Boolean BRepBlend_HCurve2dToolGen::IsPeriodic(const CurveGen& C) {
69   return(C->IsPeriodic());
70 }
71 //============================================================
72 inline Standard_Real BRepBlend_HCurve2dToolGen::Period(const CurveGen& C) {
73   return(C->Period());
74 }
75 //============================================================
76 inline gp_Pnt2d BRepBlend_HCurve2dToolGen::Value (const CurveGen& C,
77                                                 const Standard_Real U) {
78   return(C->Value(U));
79 }
80 //============================================================
81 inline void BRepBlend_HCurve2dToolGen::D0(const CurveGen& C,
82                                           const Standard_Real U,
83                                           gp_Pnt2d& P) {
84   C->D0(U,P);
85 }
86 //============================================================
87 inline void BRepBlend_HCurve2dToolGen::D1 (const CurveGen& C,
88                                            const Standard_Real U,
89                                            gp_Pnt2d& P,
90                                            gp_Vec2d& T) {
91   C->D1(U,P,T);
92 }
93 //============================================================
94 inline void BRepBlend_HCurve2dToolGen::D2 (const CurveGen& C,
95                                            const Standard_Real U,
96                                            gp_Pnt2d& P,
97                                            gp_Vec2d& T,
98                                            gp_Vec2d& N) {
99   
100   C->D2(U,P,T,N);
101 }
102 //============================================================
103 inline void BRepBlend_HCurve2dToolGen::D3 (const CurveGen& C,
104                                            const Standard_Real U,
105                                            gp_Pnt2d& P,
106                                            gp_Vec2d& V1,
107                                            gp_Vec2d& V2,
108                                            gp_Vec2d& V3) {
109   
110   C->D3(U,P,V1,V2,V3);
111 }
112 //============================================================
113 inline gp_Vec2d BRepBlend_HCurve2dToolGen::DN (const CurveGen& C,
114                                              const Standard_Real U,
115                                              const Standard_Integer N) { 
116   
117   return(C->DN(U,N));
118 }
119 //============================================================
120 inline Standard_Real BRepBlend_HCurve2dToolGen::Resolution(const CurveGen& C,
121                                                            const Standard_Real R3d) {
122   return(C->Resolution(R3d));
123 }
124 //============================================================
125 inline GeomAbs_CurveType BRepBlend_HCurve2dToolGen::GetType(const CurveGen& C) {
126   return(C->GetType());
127 }
128 //============================================================
129 inline gp_Lin2d BRepBlend_HCurve2dToolGen::Line (const CurveGen& C) {
130   return(C->Line());
131 }
132 //============================================================
133 inline gp_Circ2d BRepBlend_HCurve2dToolGen::Circle (const CurveGen& C) {
134   return(C->Circle());
135 }
136 //============================================================
137 inline gp_Elips2d BRepBlend_HCurve2dToolGen::Ellipse (const CurveGen& C) {
138   return(C->Ellipse());
139 }
140 //============================================================
141 inline gp_Parab2d BRepBlend_HCurve2dToolGen::Parabola (const CurveGen& C) {
142   return(C->Parabola());
143 }
144 //============================================================
145 inline gp_Hypr2d BRepBlend_HCurve2dToolGen::Hyperbola (const CurveGen& C) {
146   return(C->Hyperbola());
147 }
148 //============================================================
149 inline Handle(Geom2d_BezierCurve) BRepBlend_HCurve2dToolGen::Bezier (const CurveGen& C) {
150   return(C->Bezier());
151 }
152 //============================================================
153 inline Handle(Geom2d_BSplineCurve) BRepBlend_HCurve2dToolGen::BSpline (const CurveGen& C) {
154   return(C->BSpline());
155 }
156 //============================================================
157
158
159
160
161
162
163
164
165
166
167
168
169
170