0024520: Implementing affine transformations in ray-tracing
[occt.git] / src / AppParCurves / AppParCurves_SmoothCriterion.cdl
CommitLineData
b311480e 1-- Created on: 1997-09-11
2-- Created by: Philippe MANGIN
3-- Copyright (c) 1997-1999 Matra Datavision
973c2be1 4-- Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 5--
973c2be1 6-- This file is part of Open CASCADE Technology software library.
b311480e 7--
d5f74e42 8-- This library is free software; you can redistribute it and/or modify it under
9-- the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 10-- by the Free Software Foundation, with special exception defined in the file
11-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12-- distribution for complete text of the license and disclaimer of any warranty.
b311480e 13--
973c2be1 14-- Alternatively, this file may be used under the terms of Open CASCADE
15-- commercial license or contractual agreement.
7fd59977 16
17deferred class SmoothCriterion from AppParCurves
18inherits TShared from MMgt
19
20 ---Purpose: defined criterion to smooth points in curve
21
22
23uses
24 Vector from math,
25 Matrix from math,
26 Curve from FEmTool,
27 HAssemblyTable from FEmTool,
28 HArray2OfInteger from TColStd,
29 HArray1OfReal from TColStd,
30 Array1OfReal from TColStd
31
32raises
33 NotImplemented,
34 DomainError
35
36
37
38is
39 SetParameters(me : mutable; Parameters : HArray1OfReal)
40 is deferred;
41
42 SetCurve(me : mutable; C :Curve from FEmTool)
43 is deferred;
44
45 GetCurve(me; C : out Curve from FEmTool)
46 is deferred;
47
48 SetEstimation(me : mutable; E1, E2, E3 : Real)
49 is deferred;
50
51 EstLength(me : mutable)
52 ---C++: return &
53 returns Real is deferred;
54
55 GetEstimation(me; E1, E2, E3 : out Real)
56 is deferred;
57
58 AssemblyTable(me)
59 returns HAssemblyTable from FEmTool
60 is deferred;
61
62 DependenceTable(me)
63 returns HArray2OfInteger from TColStd
64 is deferred;
65
66 QualityValues (me : mutable; J1min, J2min, J3min : Real;
67 J1, J2, J3 : out Real)
68 returns Integer is deferred;
69
70 ErrorValues(me : mutable;
71 MaxError, QuadraticError, AverageError : out Real)
72 is deferred;
73
74 Hessian(me : mutable ;
75 Element : Integer;
76 Dimension1 : Integer;
77 Dimension2 : Integer;
78 H : out Matrix from math)
79 raises DomainError -- If DependenceTable(Dimension1,Dimension2) is False
80 is deferred;
81
82
83 Gradient(me : mutable;
84 Element : Integer;
85 Dimension : Integer;
86 G : out Vector from math)
87 is deferred;
88
89 InputVector(me : mutable; X : Vector from math;
90 AssTable : HAssemblyTable from FEmTool)
91 ---Purpose: Convert the assembly Vector in an Curve;
92 --
93 raises DomainError is deferred;
94
95 SetWeight(me: mutable;
96 QuadraticWeight, QualityWeight : Real;
97 percentJ1, percentJ2, percentJ3 : Real)
98 is deferred;
99
100 GetWeight(me; QuadraticWeight, QualityWeight : out Real)
101 is deferred;
102
103 SetWeight(me: mutable;
104 Weight : Array1OfReal)
105 is deferred;
106
107end SmoothCriterion;
108
109
110
111
112
113
114
115
116
117
118
119