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
|
-- File: BlendFunc.cdl
-- Created: Fri Dec 3 15:43:52 1993
-- Author: Jacques GOUSSARD
-- <jag@topsn2>
---Copyright: Matra Datavision 1993
package BlendFunc
---Purpose: This package provides a set of generic functions, that can
-- instantiated to compute blendings between two surfaces
-- (Constant radius, Evolutive radius, Ruled surface).
uses Blend, Adaptor2d, Adaptor3d, math, gp, Convert, TColgp, TColStd, GeomAbs, Law
is
class ConstRad;
class ConstRadInv;
class Ruled;
class RuledInv;
class EvolRad;
class EvolRadInv;
class CSConstRad;
class CSCircular;
class Corde;
class Chamfer;
class ChamfInv;
class ChAsym;
class ChAsymInv;
class Tensor;
enumeration SectionShape is
Rational, -- default in algoritmes
QuasiAngular,
Polynomial,
Linear -- for chamfers ??
end SectionShape;
GetShape(SectShape: SectionShape from BlendFunc;
MaxAng: Real from Standard;
NbPoles,NbKnots,Degree : out Integer from Standard;
TypeConv : out ParameterisationType from Convert);
Knots(SectShape: SectionShape from BlendFunc;
TKnots: out Array1OfReal from TColStd);
Mults(SectShape: SectionShape from BlendFunc;
TMults: out Array1OfInteger from TColStd);
GetMinimalWeights(SectShape: SectionShape from BlendFunc;
TConv : ParameterisationType from Convert;
AngleMin : Real;
AngleMax : Real;
Weigths : out Array1OfReal from TColStd);
NextShape(S : Shape from GeomAbs)
---Purpose: Used to obtain the next level of continuity.
---Level: Internal
returns Shape from GeomAbs;
ComputeNormal(Surf : HSurface from Adaptor3d;
p2d : Pnt2d from gp;
Normal : out Vec from gp)
returns Boolean from Standard;
ComputeDNormal(Surf : HSurface from Adaptor3d;
p2d : Pnt2d from gp;
Normal, DNu, DNv : out Vec from gp)
returns Boolean from Standard;
end BlendFunc;
|