summaryrefslogtreecommitdiff
path: root/inc/AppParCurves.hxx
blob: 74a9b407e1ae44e5278d4bb75d02ecdbdc21246b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _AppParCurves_HeaderFile
#define _AppParCurves_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif

#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Standard_Real_HeaderFile
#include <Standard_Real.hxx>
#endif
class math_Vector;
class math_Matrix;
class math_IntegerVector;
class AppParCurves_MLineTool;
class AppParCurves_MultiPoint;
class AppParCurves_MultiCurve;
class AppParCurves_MultiBSpCurve;
class AppParCurves_ConstraintCouple;
class AppParCurves_LeastSquare;
class AppParCurves_ResolConstraint;
class AppParCurves_Function;
class AppParCurves_BSpFunction;
class AppParCurves_Gradient;
class AppParCurves_Gradient_BFGS;
class AppParCurves_ParLeastSquare;
class AppParCurves_ResConstraint;
class AppParCurves_ParFunction;
class AppParCurves_BSpGradient;
class AppParCurves_BSpGradient_BFGS;
class AppParCurves_BSpParLeastSquare;
class AppParCurves_BSpParFunction;
class AppParCurves_Projection;
class AppParCurves_ProLeastSquare;
class AppParCurves_ProConstraint;
class AppParCurves_ProFunction;
class AppParCurves_SmoothCriterion;
class AppParCurves_LinearCriteria;
class AppParCurves_MyCriterion;
class AppParCurves_Variational;
class AppParCurves_Array1OfConstraintCouple;
class AppParCurves_HArray1OfConstraintCouple;
class AppParCurves_Array1OfMultiPoint;
class AppParCurves_HArray1OfMultiPoint;
class AppParCurves_Array1OfMultiCurve;
class AppParCurves_HArray1OfMultiCurve;
class AppParCurves_SequenceOfMultiCurve;
class AppParCurves_Array1OfMultiBSpCurve;
class AppParCurves_HArray1OfMultiBSpCurve;
class AppParCurves_SequenceOfMultiBSpCurve;
class AppParCurves_SequenceNodeOfSequenceOfMultiCurve;
class AppParCurves_SequenceNodeOfSequenceOfMultiBSpCurve;


//! Parallel Approximation in n curves. <br>
//! This package gives all the algorithms used to approximate a MultiLine <br>
//! described by the tool MLineTool. <br>
//! The result of the approximation will be a MultiCurve. <br>
class AppParCurves  {
public:

  void* operator new(size_t,void* anAddress) 
  {
    return anAddress;
  }
  void* operator new(size_t size) 
  {
    return Standard::Allocate(size); 
  }
  void  operator delete(void *anAddress) 
  {
    if (anAddress) Standard::Free((Standard_Address&)anAddress); 
  }

  
  Standard_EXPORT   static  void BernsteinMatrix(const Standard_Integer NbPoles,const math_Vector& U,math_Matrix& A) ;
  
  Standard_EXPORT   static  void Bernstein(const Standard_Integer NbPoles,const math_Vector& U,math_Matrix& A,math_Matrix& DA) ;
  
  Standard_EXPORT   static  void SecondDerivativeBernstein(const Standard_Real U,math_Vector& DDA) ;
  
  Standard_EXPORT   static  void SplineFunction(const Standard_Integer NbPoles,const Standard_Integer Degree,const math_Vector& Parameters,const math_Vector& FlatKnots,math_Matrix& A,math_Matrix& DA,math_IntegerVector& Index) ;





protected:





private:




friend class AppParCurves_MLineTool;
friend class AppParCurves_MultiPoint;
friend class AppParCurves_MultiCurve;
friend class AppParCurves_MultiBSpCurve;
friend class AppParCurves_ConstraintCouple;
friend class AppParCurves_LeastSquare;
friend class AppParCurves_ResolConstraint;
friend class AppParCurves_Function;
friend class AppParCurves_BSpFunction;
friend class AppParCurves_Gradient;
friend class AppParCurves_Gradient_BFGS;
friend class AppParCurves_ParLeastSquare;
friend class AppParCurves_ResConstraint;
friend class AppParCurves_ParFunction;
friend class AppParCurves_BSpGradient;
friend class AppParCurves_BSpGradient_BFGS;
friend class AppParCurves_BSpParLeastSquare;
friend class AppParCurves_BSpParFunction;
friend class AppParCurves_Projection;
friend class AppParCurves_ProLeastSquare;
friend class AppParCurves_ProConstraint;
friend class AppParCurves_ProFunction;
friend class AppParCurves_SmoothCriterion;
friend class AppParCurves_LinearCriteria;
friend class AppParCurves_MyCriterion;
friend class AppParCurves_Variational;
friend class AppParCurves_Array1OfConstraintCouple;
friend class AppParCurves_HArray1OfConstraintCouple;
friend class AppParCurves_Array1OfMultiPoint;
friend class AppParCurves_HArray1OfMultiPoint;
friend class AppParCurves_Array1OfMultiCurve;
friend class AppParCurves_HArray1OfMultiCurve;
friend class AppParCurves_SequenceOfMultiCurve;
friend class AppParCurves_Array1OfMultiBSpCurve;
friend class AppParCurves_HArray1OfMultiBSpCurve;
friend class AppParCurves_SequenceOfMultiBSpCurve;
friend class AppParCurves_SequenceNodeOfSequenceOfMultiCurve;
friend class AppParCurves_SequenceNodeOfSequenceOfMultiBSpCurve;

};





// other Inline functions and methods (like "C++: function call" methods)


#endif