|
||||
File indexing completed on 2025-01-18 10:04:10
0001 // Created by: Eugeny MALTCHIKOV 0002 // Copyright (c) 2017 OPEN CASCADE SAS 0003 // 0004 // This file is part of Open CASCADE Technology software library. 0005 // 0006 // This library is free software; you can redistribute it and/or modify it under 0007 // the terms of the GNU Lesser General Public License version 2.1 as published 0008 // by the Free Software Foundation, with special exception defined in the file 0009 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT 0010 // distribution for complete text of the license and disclaimer of any warranty. 0011 // 0012 // Alternatively, this file may be used under the terms of Open CASCADE 0013 // commercial license or contractual agreement. 0014 0015 #ifndef _IntPolyh_Tools_HeaderFile 0016 #define _IntPolyh_Tools_HeaderFile 0017 0018 #include <Adaptor3d_Surface.hxx> 0019 #include <TColStd_Array1OfReal.hxx> 0020 #include <IntPolyh_ArrayOfPointNormal.hxx> 0021 0022 //! The class provides tools for surface sampling. 0023 class IntPolyh_Tools 0024 { 0025 public: 0026 0027 //! Checks if the surface can be enlarged in U or V direction. 0028 Standard_EXPORT static void IsEnlargePossible(const Handle(Adaptor3d_Surface)& theSurf, 0029 Standard_Boolean& theUEnlarge, 0030 Standard_Boolean& theVEnlarge); 0031 0032 //! Makes the sampling of the given surface <theSurf> 0033 //! making the net of <theNbSU> x <theNbSV> sampling points. 0034 //! The flag <theEnlargeZone> controls the enlargement of the 0035 //! sampling zone on the surface. 0036 //! The parameters of the sampling points are stored into 0037 //! <theUPars> and <theVPars> arrays. 0038 Standard_EXPORT static void MakeSampling(const Handle(Adaptor3d_Surface)& theSurf, 0039 const Standard_Integer theNbSU, 0040 const Standard_Integer theNbSV, 0041 const Standard_Boolean theEnlargeZone, 0042 TColStd_Array1OfReal& theUPars, 0043 TColStd_Array1OfReal& theVPars); 0044 0045 //! Computes the deflection tolerance on the surface for the given sampling. 0046 Standard_EXPORT static Standard_Real ComputeDeflection(const Handle(Adaptor3d_Surface)& theSurf, 0047 const TColStd_Array1OfReal& theUPars, 0048 const TColStd_Array1OfReal& theVPars); 0049 0050 //! Fills the array <thePoints> with the points (triangulation nodes) on the surface 0051 //! and normal directions of the surface in these points. 0052 Standard_EXPORT static void FillArrayOfPointNormal(const Handle(Adaptor3d_Surface)& theSurf, 0053 const TColStd_Array1OfReal& theUPars, 0054 const TColStd_Array1OfReal& theVPars, 0055 IntPolyh_ArrayOfPointNormal& thePoints); 0056 0057 0058 }; 0059 0060 #endif // _IntPolyh_Tools_HeaderFile
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |