|
|
|||
File indexing completed on 2026-06-01 08:32:58
0001 // Created on: 1995-02-03 0002 // Created by: Laurent BOURESCHE 0003 // Copyright (c) 1995-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 #ifndef _Law_Interpol_HeaderFile 0018 #define _Law_Interpol_HeaderFile 0019 0020 #include <Standard.hxx> 0021 #include <Standard_Type.hxx> 0022 0023 #include <Law_BSpFunc.hxx> 0024 #include <TColgp_Array1OfPnt2d.hxx> 0025 0026 class Law_Interpol; 0027 DEFINE_STANDARD_HANDLE(Law_Interpol, Law_BSpFunc) 0028 0029 //! Provides an evolution law that interpolates a set 0030 //! of parameter and value pairs (wi, radi) 0031 class Law_Interpol : public Law_BSpFunc 0032 { 0033 0034 public: 0035 //! Constructs an empty interpolative evolution law. 0036 //! The function Set is used to define the law. 0037 Standard_EXPORT Law_Interpol(); 0038 0039 //! Defines this evolution law by interpolating the set of 2D 0040 //! points ParAndRad. The Y coordinate of a point of 0041 //! ParAndRad is the value of the function at the parameter 0042 //! point given by its X coordinate. 0043 //! If Periodic is true, this function is assumed to be periodic. 0044 //! Warning 0045 //! - The X coordinates of points in the table ParAndRad 0046 //! must be given in ascendant order. 0047 //! - If Periodic is true, the first and last Y coordinates of 0048 //! points in the table ParAndRad are assumed to be 0049 //! equal. In addition, with the second syntax, Dd and Df 0050 //! are also assumed to be equal. If this is not the case, 0051 //! Set uses the first value(s) as last value(s). 0052 Standard_EXPORT void Set(const TColgp_Array1OfPnt2d& ParAndRad, 0053 const Standard_Boolean Periodic = Standard_False); 0054 0055 Standard_EXPORT void SetInRelative(const TColgp_Array1OfPnt2d& ParAndRad, 0056 const Standard_Real Ud, 0057 const Standard_Real Uf, 0058 const Standard_Boolean Periodic = Standard_False); 0059 0060 //! Defines this evolution law by interpolating the set of 2D 0061 //! points ParAndRad. The Y coordinate of a point of 0062 //! ParAndRad is the value of the function at the parameter 0063 //! point given by its X coordinate. 0064 //! If Periodic is true, this function is assumed to be periodic. 0065 //! In the second syntax, Dd and Df define the values of 0066 //! the first derivative of the function at its first and last points. 0067 //! Warning 0068 //! - The X coordinates of points in the table ParAndRad 0069 //! must be given in ascendant order. 0070 //! - If Periodic is true, the first and last Y coordinates of 0071 //! points in the table ParAndRad are assumed to be 0072 //! equal. In addition, with the second syntax, Dd and Df 0073 //! are also assumed to be equal. If this is not the case, 0074 //! Set uses the first value(s) as last value(s). 0075 Standard_EXPORT void Set(const TColgp_Array1OfPnt2d& ParAndRad, 0076 const Standard_Real Dd, 0077 const Standard_Real Df, 0078 const Standard_Boolean Periodic = Standard_False); 0079 0080 Standard_EXPORT void SetInRelative(const TColgp_Array1OfPnt2d& ParAndRad, 0081 const Standard_Real Ud, 0082 const Standard_Real Uf, 0083 const Standard_Real Dd, 0084 const Standard_Real Df, 0085 const Standard_Boolean Periodic = Standard_False); 0086 0087 DEFINE_STANDARD_RTTIEXT(Law_Interpol, Law_BSpFunc) 0088 0089 protected: 0090 private: 0091 }; 0092 0093 #endif // _Law_Interpol_HeaderFile
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|