0025763: SSP sample is unable to build the proper surface on the given cloud of points
[occt.git] / src / BSplCLib / BSplCLib.cdl
old mode 100755 (executable)
new mode 100644 (file)
index 7129af7..70f49b7
@@ -1,8 +1,19 @@
--- File:       BSplCLib.cdl
--- Created:    Fri Aug  9 15:12:53 1991
--- Author:     Jean Claude VAUTHIER
----Copyright:   Matra Datavision 1991, 1992
---              
+-- Created on: 1991-08-09
+-- Created by: Jean Claude VAUTHIER
+-- Copyright (c) 1991-1999 Matra Datavision
+-- Copyright (c) 1999-2014 OPEN CASCADE SAS
+--
+-- This file is part of Open CASCADE Technology software library.
+--
+-- This library is free software; you can redistribute it and/or modify it under
+-- the terms of the GNU Lesser General Public License version 2.1 as published
+-- by the Free Software Foundation, with special exception defined in the file
+-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+-- distribution for complete text of the license and disclaimer of any warranty.
+--
+-- Alternatively, this file may be used under the terms of Open CASCADE
+-- commercial license or contractual agreement.
+
 --Modified : RLE Aug   1993  Major modifications.  
 --  15-Mar-95  xab : added cache mecanism to speed up 
 --  evaluation
 --Modified : RLE Aug   1993  Major modifications.  
 --  15-Mar-95  xab : added cache mecanism to speed up 
 --  evaluation
@@ -89,20 +100,12 @@ package BSplCLib
     --  . Curves and Surfaces for Computer Aided Geometric Design,
     --    a practical guide Gerald Farin
 
     --  . Curves and Surfaces for Computer Aided Geometric Design,
     --    a practical guide Gerald Farin
 
-uses TColStd, gp, TColgp, math
+uses TColStd, gp, TColgp, math, GeomAbs
 
 
 is
 
     imported EvaluatorFunction ;
 
 
 is
 
     imported EvaluatorFunction ;
-    ---Purpose: this is a one dimensional function 
-    --  typedef  void (*EvaluatorFunction)  (
-    --  Standard_Integer     // Derivative Request
-    --  Standard_Real    *   // StartEnd[2] 
-    --  Standard_Real        // Parameter
-    --  Standard_Real    &   // Result
-    --  Standard_Integer &) ;// Error Code
-    --  serves to multiply a given vectorial BSpline by a function 
 
     enumeration KnotDistribution is NonUniform, Uniform;
     ---Purpose: This enumeration describes the repartition of the
 
     enumeration KnotDistribution is NonUniform, Uniform;
     ---Purpose: This enumeration describes the repartition of the
@@ -293,7 +296,8 @@ is
 
     KnotSequence (Knots    : Array1OfReal from TColStd; 
                   Mults    : Array1OfInteger from TColStd;
 
     KnotSequence (Knots    : Array1OfReal from TColStd; 
                   Mults    : Array1OfInteger from TColStd;
-                  KnotSeq  : in out Array1OfReal from TColStd);
+                  KnotSeq  : in out Array1OfReal from TColStd;
+                  Periodic : Boolean  =  Standard_False);
                
     KnotSequence (Knots    : Array1OfReal from TColStd; 
                   Mults    : Array1OfInteger from TColStd;
                
     KnotSequence (Knots    : Array1OfReal from TColStd; 
                   Mults    : Array1OfInteger from TColStd;
@@ -338,6 +342,15 @@ is
     --  Analyses the distribution of multiplicities between
     --  the knot FromK1 and the Knot ToK2.
 
     --  Analyses the distribution of multiplicities between
     --  the knot FromK1 and the Knot ToK2.
 
+    KnotAnalysis (Degree     : Integer;
+                  Periodic   : Boolean;
+                  CKnots     : Array1OfReal from TColStd;
+                  CMults     : Array1OfInteger from TColStd;
+                  KnotForm   : out BSplKnotDistribution from GeomAbs;
+                  MaxKnotMult: out Integer);
+    ---Purpose: Analyzes the array of knots.
+    --          Returns the form and the maximum knot multiplicity.
+
     Reparametrize (U1, U2 : Real;
                   Knots : in out Array1OfReal from TColStd);
     ---Purpose:
     Reparametrize (U1, U2 : Real;
                   Knots : in out Array1OfReal from TColStd);
     ---Purpose:
@@ -1266,7 +1279,8 @@ is
                     FlatKnots                  : Array1OfReal from TColStd ;
                     Parameter                  : in Real    ;
                     FirstNonZeroBsplineIndex   : in out Integer ;
                     FlatKnots                  : Array1OfReal from TColStd ;
                     Parameter                  : in Real    ;
                     FirstNonZeroBsplineIndex   : in out Integer ;
-                    BsplineBasis               : in out Matrix from math)
+                    BsplineBasis               : in out Matrix from math ;
+                     isPeriodic                 : in Boolean = Standard_False)
 
     returns Integer  ; 
     ---Purpose: This  evaluates  the Bspline  Basis  at  a
 
     returns Integer  ; 
     ---Purpose: This  evaluates  the Bspline  Basis  at  a