Warning, /include/opencascade/BRepBlend_HCurve2dTool.lxx is written in an unsupported language. File is not indexed.
0001 // Created on: 1992-10-22
0002 // Created by: Laurent BUCHARD
0003 // Copyright (c) 1992-1999 Matra Datavision
0004 // Copyright (c) 1999-2014 OPEN CASCADE SAS
0005 //
0006 // This file is part of Open CASCADE Technology software library.
0007 //
0008 // This library is free software; you can redistribute it and/or modify it under
0009 // the terms of the GNU Lesser General Public License version 2.1 as published
0010 // by the Free Software Foundation, with special exception defined in the file
0011 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0012 // distribution for complete text of the license and disclaimer of any warranty.
0013 //
0014 // Alternatively, this file may be used under the terms of Open CASCADE
0015 // commercial license or contractual agreement.
0016
0017 #include <GeomAbs_CurveType.hxx>
0018 #include <GeomAbs_Shape.hxx>
0019
0020 #include <gp_Vec2d.hxx>
0021 #include <gp_Lin2d.hxx>
0022 #include <gp_Circ2d.hxx>
0023 #include <gp_Elips2d.hxx>
0024 #include <gp_Parab2d.hxx>
0025 #include <gp_Hypr2d.hxx>
0026
0027 #include <Geom2d_BezierCurve.hxx>
0028 #include <Geom2d_BSplineCurve.hxx>
0029
0030 #include <NCollection_Array1.hxx>
0031
0032 //============================================================
0033 inline double BRepBlend_HCurve2dTool::FirstParameter(const occ::handle<Adaptor2d_Curve2d>& C)
0034 {
0035 return (C->FirstParameter());
0036 }
0037
0038 //============================================================
0039 inline double BRepBlend_HCurve2dTool::LastParameter(const occ::handle<Adaptor2d_Curve2d>& C)
0040 {
0041 return (C->LastParameter());
0042 }
0043
0044 //============================================================
0045 inline GeomAbs_Shape BRepBlend_HCurve2dTool::Continuity(const occ::handle<Adaptor2d_Curve2d>& C)
0046 {
0047 return (C->Continuity());
0048 }
0049
0050 //============================================================
0051 inline int BRepBlend_HCurve2dTool::NbIntervals(const occ::handle<Adaptor2d_Curve2d>& C,
0052 const GeomAbs_Shape Sh)
0053 {
0054 return (C->NbIntervals(Sh));
0055 }
0056
0057 //============================================================
0058 inline void BRepBlend_HCurve2dTool::Intervals(const occ::handle<Adaptor2d_Curve2d>& C,
0059 NCollection_Array1<double>& Tab,
0060 const GeomAbs_Shape Sh)
0061 {
0062 C->Intervals(Tab, Sh);
0063 }
0064
0065 //============================================================
0066 inline bool BRepBlend_HCurve2dTool::IsClosed(const occ::handle<Adaptor2d_Curve2d>& C)
0067 {
0068 return (C->IsClosed());
0069 }
0070
0071 //============================================================
0072 inline bool BRepBlend_HCurve2dTool::IsPeriodic(const occ::handle<Adaptor2d_Curve2d>& C)
0073 {
0074 return (C->IsPeriodic());
0075 }
0076
0077 //============================================================
0078 inline double BRepBlend_HCurve2dTool::Period(const occ::handle<Adaptor2d_Curve2d>& C)
0079 {
0080 return (C->Period());
0081 }
0082
0083 //============================================================
0084 inline gp_Pnt2d BRepBlend_HCurve2dTool::Value(const occ::handle<Adaptor2d_Curve2d>& C,
0085 const double U)
0086 {
0087 return (C->Value(U));
0088 }
0089
0090 //============================================================
0091 inline void BRepBlend_HCurve2dTool::D0(const occ::handle<Adaptor2d_Curve2d>& C,
0092 const double U,
0093 gp_Pnt2d& P)
0094 {
0095 C->D0(U, P);
0096 }
0097
0098 //============================================================
0099 inline void BRepBlend_HCurve2dTool::D1(const occ::handle<Adaptor2d_Curve2d>& C,
0100 const double U,
0101 gp_Pnt2d& P,
0102 gp_Vec2d& T)
0103 {
0104 C->D1(U, P, T);
0105 }
0106
0107 //============================================================
0108 inline void BRepBlend_HCurve2dTool::D2(const occ::handle<Adaptor2d_Curve2d>& C,
0109 const double U,
0110 gp_Pnt2d& P,
0111 gp_Vec2d& T,
0112 gp_Vec2d& N)
0113 {
0114
0115 C->D2(U, P, T, N);
0116 }
0117
0118 //============================================================
0119 inline void BRepBlend_HCurve2dTool::D3(const occ::handle<Adaptor2d_Curve2d>& C,
0120 const double U,
0121 gp_Pnt2d& P,
0122 gp_Vec2d& V1,
0123 gp_Vec2d& V2,
0124 gp_Vec2d& V3)
0125 {
0126
0127 C->D3(U, P, V1, V2, V3);
0128 }
0129
0130 //============================================================
0131 inline gp_Vec2d BRepBlend_HCurve2dTool::DN(const occ::handle<Adaptor2d_Curve2d>& C,
0132 const double U,
0133 const int N)
0134 {
0135
0136 return (C->DN(U, N));
0137 }
0138
0139 //============================================================
0140 inline double BRepBlend_HCurve2dTool::Resolution(const occ::handle<Adaptor2d_Curve2d>& C,
0141 const double R3d)
0142 {
0143 return (C->Resolution(R3d));
0144 }
0145
0146 //============================================================
0147 inline GeomAbs_CurveType BRepBlend_HCurve2dTool::GetType(const occ::handle<Adaptor2d_Curve2d>& C)
0148 {
0149 return (C->GetType());
0150 }
0151
0152 //============================================================
0153 inline gp_Lin2d BRepBlend_HCurve2dTool::Line(const occ::handle<Adaptor2d_Curve2d>& C)
0154 {
0155 return (C->Line());
0156 }
0157
0158 //============================================================
0159 inline gp_Circ2d BRepBlend_HCurve2dTool::Circle(const occ::handle<Adaptor2d_Curve2d>& C)
0160 {
0161 return (C->Circle());
0162 }
0163
0164 //============================================================
0165 inline gp_Elips2d BRepBlend_HCurve2dTool::Ellipse(const occ::handle<Adaptor2d_Curve2d>& C)
0166 {
0167 return (C->Ellipse());
0168 }
0169
0170 //============================================================
0171 inline gp_Parab2d BRepBlend_HCurve2dTool::Parabola(const occ::handle<Adaptor2d_Curve2d>& C)
0172 {
0173 return (C->Parabola());
0174 }
0175
0176 //============================================================
0177 inline gp_Hypr2d BRepBlend_HCurve2dTool::Hyperbola(const occ::handle<Adaptor2d_Curve2d>& C)
0178 {
0179 return (C->Hyperbola());
0180 }
0181
0182 //============================================================
0183 inline occ::handle<Geom2d_BezierCurve> BRepBlend_HCurve2dTool::Bezier(
0184 const occ::handle<Adaptor2d_Curve2d>& C)
0185 {
0186 return (C->Bezier());
0187 }
0188
0189 //============================================================
0190 inline occ::handle<Geom2d_BSplineCurve> BRepBlend_HCurve2dTool::BSpline(
0191 const occ::handle<Adaptor2d_Curve2d>& C)
0192 {
0193 return (C->BSpline());
0194 }
0195
0196 //============================================================