Back to home page

EIC code displayed by LXR

 
 

    


Warning, /include/opencascade/HLRBRep_BSurfaceTool.lxx is written in an unsupported language. File is not indexed.

0001 // Created by: Laurent BUCHARD
0002 // Copyright (c) 1993-1999 Matra Datavision
0003 // Copyright (c) 1999-2014 OPEN CASCADE SAS
0004 //
0005 // This file is part of Open CASCADE Technology software library.
0006 //
0007 // This library is free software; you can redistribute it and/or modify it under
0008 // the terms of the GNU Lesser General Public License version 2.1 as published
0009 // by the Free Software Foundation, with special exception defined in the file
0010 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0011 // distribution for complete text of the license and disclaimer of any warranty.
0012 //
0013 // Alternatively, this file may be used under the terms of Open CASCADE
0014 // commercial license or contractual agreement.
0015 
0016 #include <gp_Pnt.hxx>
0017 #include <gp_Vec.hxx>
0018 #include <gp_Pln.hxx>
0019 #include <gp_Cylinder.hxx>
0020 #include <gp_Cone.hxx>
0021 #include <gp_Torus.hxx>
0022 #include <gp_Sphere.hxx>
0023 #include <gp_Ax1.hxx>
0024 #include <gp_Dir.hxx>
0025 #include <Geom_BezierSurface.hxx>
0026 #include <Geom_BSplineSurface.hxx>
0027 #include <Adaptor3d_Surface.hxx>
0028 #include <Adaptor3d_Curve.hxx>
0029 #include <BRepAdaptor_Surface.hxx>
0030 
0031 //=======================================================================
0032 //function : FirstUParameter
0033 //purpose  : 
0034 //=======================================================================
0035 
0036 inline Standard_Real
0037 HLRBRep_BSurfaceTool::FirstUParameter(const BRepAdaptor_Surface& Surf)
0038 { return Surf.FirstUParameter(); }
0039 
0040 //=======================================================================
0041 //function : FirstVParameter
0042 //purpose  : 
0043 //=======================================================================
0044 
0045 inline Standard_Real
0046 HLRBRep_BSurfaceTool::FirstVParameter(const BRepAdaptor_Surface& Surf)
0047 { return Surf.FirstVParameter(); }
0048 
0049 //=======================================================================
0050 //function : LastUParameter
0051 //purpose  :
0052 //=======================================================================
0053 
0054 inline Standard_Real
0055 HLRBRep_BSurfaceTool::LastUParameter(const BRepAdaptor_Surface& Surf)
0056 { return Surf.LastUParameter(); }
0057 
0058 //=======================================================================
0059 //function : LastVParameter
0060 //purpose  : 
0061 //=======================================================================
0062 
0063 inline Standard_Real
0064 HLRBRep_BSurfaceTool::LastVParameter(const BRepAdaptor_Surface& Surf)
0065 { return Surf.LastVParameter(); }
0066 
0067 //=======================================================================
0068 //function : NbUIntervals
0069 //purpose  : 
0070 //=======================================================================
0071 
0072 inline Standard_Integer
0073 HLRBRep_BSurfaceTool::NbUIntervals(const BRepAdaptor_Surface& Surf,
0074                                    const GeomAbs_Shape S)
0075 { return Surf.NbUIntervals(S); }
0076 
0077 //=======================================================================
0078 //function : NbVIntervals
0079 //purpose  : 
0080 //=======================================================================
0081 
0082 inline Standard_Integer
0083 HLRBRep_BSurfaceTool::NbVIntervals(const BRepAdaptor_Surface& Surf,
0084                                    const GeomAbs_Shape S)
0085 { return Surf.NbVIntervals(S); }
0086 
0087 //=======================================================================
0088 //function : UIntervals
0089 //purpose  : 
0090 //=======================================================================
0091 
0092 inline void
0093 HLRBRep_BSurfaceTool::UIntervals(const BRepAdaptor_Surface& Surf,
0094                                  TColStd_Array1OfReal& Tab,
0095                                  const GeomAbs_Shape S)
0096 { Surf.UIntervals(Tab,S); }
0097 
0098 //=======================================================================
0099 //function : VIntervals
0100 //purpose  : 
0101 //=======================================================================
0102 
0103 inline void
0104 HLRBRep_BSurfaceTool::VIntervals(const BRepAdaptor_Surface& Surf,
0105                                  TColStd_Array1OfReal& Tab,
0106                                  const GeomAbs_Shape S)
0107 { Surf.VIntervals(Tab,S); }
0108 
0109 
0110 //=======================================================================
0111 //function : UTrim
0112 //purpose  : 
0113 //=======================================================================
0114 
0115 inline Handle(Adaptor3d_Surface)
0116 HLRBRep_BSurfaceTool::UTrim(const BRepAdaptor_Surface& Surf,
0117                             const Standard_Real F,
0118                             const Standard_Real L,
0119                             const Standard_Real Tol)
0120 { return Surf.UTrim(F,L,Tol); }
0121 
0122 //=======================================================================
0123 //function : VTrim
0124 //purpose  : 
0125 //=======================================================================
0126 
0127 inline Handle(Adaptor3d_Surface)
0128 HLRBRep_BSurfaceTool::VTrim(const BRepAdaptor_Surface& Surf,
0129                             const Standard_Real F,
0130                             const Standard_Real L,
0131                             const Standard_Real Tol)
0132 { return Surf.VTrim(F,L,Tol); }
0133 
0134 //=======================================================================
0135 //function : IsUClosed
0136 //purpose  : 
0137 //=======================================================================
0138 
0139 inline Standard_Boolean
0140 HLRBRep_BSurfaceTool::IsUClosed(const BRepAdaptor_Surface& S)
0141 { return S.IsUClosed(); }
0142 
0143 //=======================================================================
0144 //function : IsVClosed
0145 //purpose  : 
0146 //=======================================================================
0147 
0148 inline Standard_Boolean
0149 HLRBRep_BSurfaceTool::IsVClosed(const BRepAdaptor_Surface& S)
0150 { return S.IsVClosed(); }
0151 
0152 //=======================================================================
0153 //function : IsUPeriodic
0154 //purpose  : 
0155 //=======================================================================
0156 
0157 inline Standard_Boolean
0158 HLRBRep_BSurfaceTool::IsUPeriodic(const BRepAdaptor_Surface& S)
0159 { return S.IsUPeriodic(); }
0160 
0161 //=======================================================================
0162 //function : UPeriod
0163 //purpose  : 
0164 //=======================================================================
0165 
0166 inline Standard_Real
0167 HLRBRep_BSurfaceTool::UPeriod(const BRepAdaptor_Surface& S)
0168 { return S.UPeriod(); }
0169 
0170 //=======================================================================
0171 //function : IsVPeriodic
0172 //purpose  : 
0173 //=======================================================================
0174 
0175 inline Standard_Boolean
0176 HLRBRep_BSurfaceTool::IsVPeriodic(const BRepAdaptor_Surface& S)
0177 { return S.IsVPeriodic(); }
0178 
0179 //=======================================================================
0180 //function : VPeriod
0181 //purpose  : 
0182 //=======================================================================
0183 
0184 inline Standard_Real
0185 HLRBRep_BSurfaceTool::VPeriod(const BRepAdaptor_Surface& S)
0186 { return S.VPeriod(); }
0187 
0188 //=======================================================================
0189 //function : Value
0190 //purpose  : 
0191 //=======================================================================
0192 
0193 inline gp_Pnt
0194 HLRBRep_BSurfaceTool::Value(const BRepAdaptor_Surface& S,
0195                             const Standard_Real U,
0196                             const Standard_Real V )
0197 { return S.Value(U,V); }
0198 
0199 //=======================================================================
0200 //function : D0
0201 //purpose  : 
0202 //=======================================================================
0203 
0204 inline void
0205 HLRBRep_BSurfaceTool::D0(const BRepAdaptor_Surface& S,
0206                          const Standard_Real U,
0207                          const Standard_Real V,
0208                          gp_Pnt& P)
0209 { S.D0(U,V,P); }
0210 
0211 //=======================================================================
0212 //function : D1
0213 //purpose  : 
0214 //=======================================================================
0215 
0216 inline void
0217 HLRBRep_BSurfaceTool::D1(const BRepAdaptor_Surface& S,
0218                          const Standard_Real U,
0219                          const Standard_Real V,
0220                          gp_Pnt& P,
0221                          gp_Vec& D1U,
0222                          gp_Vec& D1V) 
0223 { S.D1(U,V,P,D1U,D1V); }
0224 
0225 //=======================================================================
0226 //function : D2
0227 //purpose  : 
0228 //=======================================================================
0229 
0230 inline void
0231 HLRBRep_BSurfaceTool::D2(const BRepAdaptor_Surface& S,
0232                          const Standard_Real U,
0233                          const Standard_Real V,
0234                          gp_Pnt& P,
0235                          gp_Vec& D1U,
0236                          gp_Vec& D1V,
0237                          gp_Vec& D2U,
0238                          gp_Vec& D2V,
0239                          gp_Vec& D2UV)
0240 { S.D2(U,V,P,D1U,D1V,D2U,D2V,D2UV); }
0241 
0242 //=======================================================================
0243 //function : D3
0244 //purpose  : 
0245 //=======================================================================
0246 
0247 inline void
0248 HLRBRep_BSurfaceTool::D3(const BRepAdaptor_Surface& S,
0249                          const Standard_Real U,
0250                          const Standard_Real V,
0251                          gp_Pnt& P,
0252                          gp_Vec& D1U,
0253                          gp_Vec& D1V, 
0254                          gp_Vec& D2U,
0255                          gp_Vec& D2V,
0256                          gp_Vec& D2UV,
0257                          gp_Vec& D3U,
0258                          gp_Vec& D3V,
0259                          gp_Vec& D3UUV,
0260                          gp_Vec& D3UVV)
0261 { S.D3(U,V,P,D1U,D1V,D2U,D2V,D2UV,D3U,D3V,D3UUV,D3UVV); }
0262 
0263 //=======================================================================
0264 //function : DN
0265 //purpose  : 
0266 //=======================================================================
0267 
0268 inline gp_Vec
0269 HLRBRep_BSurfaceTool::DN(const BRepAdaptor_Surface& S,
0270                          const Standard_Real U,
0271                          const Standard_Real V,
0272                          const Standard_Integer Nu,
0273                          const Standard_Integer Nv)
0274 { return S.DN(U,V,Nu,Nv); }
0275 
0276 //=======================================================================
0277 //function : UResolution
0278 //purpose  : 
0279 //=======================================================================
0280 
0281 inline Standard_Real
0282 HLRBRep_BSurfaceTool::UResolution(const BRepAdaptor_Surface& S,
0283                                   const Standard_Real R3d)
0284 { return S.UResolution(R3d); }
0285 
0286 //=======================================================================
0287 //function : VResolution
0288 //purpose  : 
0289 //=======================================================================
0290 
0291 inline Standard_Real
0292 HLRBRep_BSurfaceTool::VResolution(const BRepAdaptor_Surface& S,
0293                                   const Standard_Real R3d)
0294 { return S.VResolution(R3d); }
0295 
0296 //=======================================================================
0297 //function : GetType
0298 //purpose  : 
0299 //=======================================================================
0300 
0301 inline GeomAbs_SurfaceType
0302 HLRBRep_BSurfaceTool::GetType(const BRepAdaptor_Surface& S )
0303 { return S.GetType(); }
0304 
0305 //=======================================================================
0306 //function : Plane
0307 //purpose  : 
0308 //=======================================================================
0309 
0310 inline gp_Pln
0311 HLRBRep_BSurfaceTool::Plane(const BRepAdaptor_Surface& S)
0312 { return S.Plane(); }
0313 
0314 //=======================================================================
0315 //function : Cylinder
0316 //purpose  : 
0317 //=======================================================================
0318 
0319 inline gp_Cylinder
0320 HLRBRep_BSurfaceTool::Cylinder(const BRepAdaptor_Surface& S) 
0321 { return S.Cylinder(); }
0322 
0323 //=======================================================================
0324 //function : Cone
0325 //purpose  : 
0326 //=======================================================================
0327 
0328 inline gp_Cone
0329 HLRBRep_BSurfaceTool::Cone(const BRepAdaptor_Surface& S) 
0330 { return S.Cone(); }
0331 
0332 //=======================================================================
0333 //function : Sphere
0334 //purpose  : 
0335 //=======================================================================
0336 
0337 inline gp_Sphere
0338 HLRBRep_BSurfaceTool::Sphere(const BRepAdaptor_Surface& S) 
0339 { return S.Sphere(); }
0340 
0341 //=======================================================================
0342 //function : Torus
0343 //purpose  : 
0344 //=======================================================================
0345 
0346 inline gp_Torus
0347 HLRBRep_BSurfaceTool::Torus(const BRepAdaptor_Surface& S) 
0348 { return S.Torus(); }
0349 
0350 //=======================================================================
0351 //function : Bezier
0352 //purpose  : 
0353 //=======================================================================
0354 
0355 inline Handle(Geom_BezierSurface)
0356      HLRBRep_BSurfaceTool::Bezier(const BRepAdaptor_Surface& S)
0357 { return(S.Bezier()); }
0358 
0359 //=======================================================================
0360 //function : BSpline
0361 //purpose  : 
0362 //=======================================================================
0363 
0364 inline Handle(Geom_BSplineSurface)
0365      HLRBRep_BSurfaceTool::BSpline(const BRepAdaptor_Surface& S)
0366 { return(S.BSpline()); }
0367 
0368 //=======================================================================
0369 //function : AxeOfRevolution
0370 //purpose  : 
0371 //=======================================================================
0372 
0373 inline gp_Ax1
0374 HLRBRep_BSurfaceTool::AxeOfRevolution(const BRepAdaptor_Surface& S)
0375 { return(S.AxeOfRevolution()); }
0376 
0377 //=======================================================================
0378 //function : Direction
0379 //purpose  : 
0380 //=======================================================================
0381 
0382 inline gp_Dir
0383 HLRBRep_BSurfaceTool::Direction(const BRepAdaptor_Surface& S)
0384 { return(S.Direction()); }
0385 
0386 //=======================================================================
0387 //function : BasisCurve
0388 //purpose  : 
0389 //=======================================================================
0390 
0391 inline Handle(Adaptor3d_Curve)
0392      HLRBRep_BSurfaceTool::BasisCurve(const BRepAdaptor_Surface& S)
0393 { return(S.BasisCurve()); }
0394 
0395 //=======================================================================
0396 //function : UContinuity
0397 //purpose  : 
0398 //=======================================================================
0399 
0400 inline GeomAbs_Shape
0401 HLRBRep_BSurfaceTool::UContinuity(const BRepAdaptor_Surface& S)
0402 { return(S.UContinuity()); }
0403 
0404 //=======================================================================
0405 //function : VContinuity
0406 //purpose  : 
0407 //=======================================================================
0408 
0409 inline GeomAbs_Shape
0410 HLRBRep_BSurfaceTool::VContinuity(const BRepAdaptor_Surface& S)
0411 { return(S.VContinuity()); }
0412 
0413 //=======================================================================
0414 //function : UDegree
0415 //purpose  : 
0416 //=======================================================================
0417 
0418 inline Standard_Integer
0419 HLRBRep_BSurfaceTool::UDegree(const BRepAdaptor_Surface& S)
0420 { return(S.UDegree()); }
0421 
0422 //=======================================================================
0423 //function : NbUPoles
0424 //purpose  :
0425 //=======================================================================
0426 
0427 inline Standard_Integer
0428 HLRBRep_BSurfaceTool::NbUPoles(const BRepAdaptor_Surface& S)
0429 { return(S.NbUPoles()); }
0430 
0431 //=======================================================================
0432 //function : NbUKnots
0433 //purpose  : 
0434 //=======================================================================
0435 
0436 inline Standard_Integer
0437 HLRBRep_BSurfaceTool::NbUKnots(const BRepAdaptor_Surface& S)
0438 { return(S.NbUKnots()); }
0439 
0440 //=======================================================================
0441 //function : IsURational
0442 //purpose  : 
0443 //=======================================================================
0444 
0445 inline Standard_Boolean
0446 HLRBRep_BSurfaceTool::IsURational(const BRepAdaptor_Surface& S)
0447 { return(S.IsURational()); }
0448 
0449 //=======================================================================
0450 //function : VDegree
0451 //purpose  : 
0452 //=======================================================================
0453 
0454 inline Standard_Integer
0455 HLRBRep_BSurfaceTool::VDegree(const BRepAdaptor_Surface& S)
0456 { return(S.VDegree()); }
0457 
0458 //=======================================================================
0459 //function : NbVPoles
0460 //purpose  : 
0461 //=======================================================================
0462 
0463 inline Standard_Integer
0464 HLRBRep_BSurfaceTool::NbVPoles(const BRepAdaptor_Surface& S)
0465 { return(S.NbVPoles()); }
0466 
0467 //=======================================================================
0468 //function : NbVKnots
0469 //purpose  : 
0470 //=======================================================================
0471 
0472 inline Standard_Integer
0473 HLRBRep_BSurfaceTool::NbVKnots(const BRepAdaptor_Surface& S)
0474 { return(S.NbVKnots()); }
0475 
0476 //=======================================================================
0477 //function : IsVRational
0478 //purpose  : 
0479 //=======================================================================
0480 
0481 inline Standard_Boolean
0482 HLRBRep_BSurfaceTool::IsVRational(const BRepAdaptor_Surface& S)
0483 { return(S.IsVRational()); }