7fd59977 |
1 | -- File: BRepBlend.cdl |
2 | -- Created: Mon Dec 6 09:41:39 1993 |
3 | -- Author: Jacques GOUSSARD |
4 | -- <jag@topsn2> |
5 | -- jlr le 28-07-97 F(t) in Edge/Face |
6 | ---Copyright: Matra Datavision 1993 |
7 | |
8 | |
9 | |
10 | package BRepBlend |
11 | |
12 | uses Blend, BlendFunc, AppBlend, Approx, Adaptor3d,Adaptor2d, |
13 | Law, gp, TopAbs, IntSurf, Convert, |
14 | TCollection,TColStd,TColgp,GeomAbs,Geom,Geom2d, |
15 | AdvApprox, StdFail, math |
16 | |
17 | is |
18 | |
19 | generic class HCurveToolGen; |
20 | generic class HCurve2dToolGen; |
21 | |
22 | class HCurveTool instantiates HCurveToolGen from BRepBlend ( |
23 | HCurve from Adaptor3d); |
24 | |
25 | class HCurve2dTool instantiates HCurve2dToolGen from BRepBlend ( |
26 | HCurve2d from Adaptor2d); |
27 | |
28 | class BlendTool; |
29 | |
30 | alias ConstRad is ConstRad from BlendFunc; |
31 | |
32 | alias ConstRadInv is ConstRadInv from BlendFunc; |
33 | |
34 | alias Ruled is Ruled from BlendFunc; |
35 | |
36 | alias RuledInv is RuledInv from BlendFunc; |
37 | |
38 | alias EvolRad is EvolRad from BlendFunc; |
39 | |
40 | alias EvolRadInv is EvolRadInv from BlendFunc; |
41 | |
42 | alias CSConstRad is CSConstRad from BlendFunc; |
43 | |
44 | alias CSCircular is CSCircular from BlendFunc; |
45 | |
46 | alias Chamfer is Chamfer from BlendFunc; |
47 | |
48 | alias ChamfInv is ChamfInv from BlendFunc; |
49 | |
50 | alias ChAsym is ChAsym from BlendFunc; |
51 | |
52 | alias ChAsymInv is ChAsymInv from BlendFunc; |
53 | |
54 | |
55 | class PointOnRst instantiates PointOnRst from Blend |
56 | (HCurve2d from Adaptor2d); |
57 | |
58 | |
59 | class SequenceOfPointOnRst instantiates Sequence from TCollection |
60 | (PointOnRst from BRepBlend); |
61 | |
62 | |
63 | class Extremity instantiates Extremity from Blend |
64 | (HVertex from Adaptor3d, |
65 | HCurve2d from Adaptor2d, |
66 | PointOnRst from BRepBlend, |
67 | SequenceOfPointOnRst from BRepBlend); |
68 | |
69 | class Line instantiates Line from Blend |
70 | (HVertex from Adaptor3d, |
71 | HCurve2d from Adaptor2d, |
72 | PointOnRst from BRepBlend, |
73 | SequenceOfPointOnRst from BRepBlend, |
74 | Extremity from BRepBlend); |
75 | |
76 | |
77 | class Walking instantiates Walking from Blend |
78 | (HVertex from Adaptor3d, |
79 | HCurve2d from Adaptor2d, |
80 | HSurface from Adaptor3d, |
81 | HCurve from Adaptor3d, |
82 | Integer from Standard, |
83 | HCurve2dTool from BRepBlend, |
84 | HSurfaceTool from Adaptor3d, |
85 | HCurveTool from BRepBlend, |
86 | TopolTool from Adaptor3d, |
87 | BlendTool from BRepBlend, |
88 | PointOnRst from BRepBlend, |
89 | SequenceOfPointOnRst from BRepBlend, |
90 | Extremity from BRepBlend, |
91 | Line from BRepBlend); |
92 | |
93 | class CSWalking instantiates CSWalking from Blend |
94 | (HVertex from Adaptor3d, |
95 | HCurve2d from Adaptor2d, |
96 | HSurface from Adaptor3d, |
97 | HCurve from Adaptor3d, |
98 | Integer from Standard, |
99 | HCurve2dTool from BRepBlend, |
100 | HSurfaceTool from Adaptor3d, |
101 | HCurveTool from BRepBlend, |
102 | TopolTool from Adaptor3d, |
103 | BlendTool from BRepBlend, |
104 | PointOnRst from BRepBlend, |
105 | SequenceOfPointOnRst from BRepBlend, |
106 | Extremity from BRepBlend, |
107 | Line from BRepBlend); |
108 | |
109 | class AppSurf instantiates AppSurf from AppBlend |
110 | (AppFunction from Blend, |
111 | Line from BRepBlend); |
112 | |
113 | |
114 | class SequenceOfLine instantiates Sequence from TCollection |
115 | (Line from BRepBlend); |
116 | |
117 | |
118 | class AppSurface; |
119 | ---Purpose: Used to Approximate the surfaces. |
120 | |
121 | deferred class AppFuncRoot; |
122 | ---Purpose: Root Class Function to approximate by AppSurface |
123 | |
124 | class AppFunc; |
125 | ---Purpose: Function to approximate by AppSurface for |
126 | -- Surface/Surface contact. |
127 | |
128 | class AppFuncRst; |
129 | ---Purpose: Function to approximate by AppSurface for |
130 | -- Curve/Surface contact. |
131 | |
132 | class AppFuncRstRst; |
133 | ---Purpose: Function to approximate by AppSurface for |
134 | -- Curve/Curve contact. |
135 | |
136 | class SurfRstEvolRad; |
137 | ---Purpose: Function to approximate by AppSurface for |
138 | -- Edge/Face and evolutif radius |
139 | |
140 | class SurfRstConstRad; |
81bba717 |
141 | ---Purpose: Copy of CSConstRad with pcurve on surface |
142 | -- as support. |
7fd59977 |
143 | |
144 | class RstRstEvolRad; |
145 | ---Purpose: Function to approximate by AppSurface for |
146 | -- Edge/Edge and evolutif radius |
147 | -- |
148 | class RstRstConstRad; |
81bba717 |
149 | ---Purpose: Copy of CSConstRad with a pcurve on surface |
150 | -- as support. |
7fd59977 |
151 | |
152 | class SurfPointConstRadInv; |
81bba717 |
153 | ---Purpose: Function of reframing between a point and a surface. |
7fd59977 |
154 | |
155 | class SurfCurvConstRadInv; |
81bba717 |
156 | ---Purpose: Function of reframing between a restriction surface of the |
157 | -- surface and a curve. |
7fd59977 |
158 | |
159 | class SurfPointEvolRadInv; |
81bba717 |
160 | ---Purpose: Fonction of reframing between a point and a surface. |
7fd59977 |
161 | |
162 | class CurvPointRadInv; |
81bba717 |
163 | ---Purpose: Function of reframing between a point and a curve. |
164 | -- valid in cases of constant and progressive radius |
7fd59977 |
165 | class SurfCurvEvolRadInv; |
81bba717 |
166 | ---Purpose: Function of reframing between a surface restriction |
167 | -- of the surface and a curve. |
7fd59977 |
168 | |
169 | class SurfRstLineBuilder; |
81bba717 |
170 | ---Purpose: Construction of a BRepBlend_Line between a surface and |
171 | -- a pcurve on surface from an approached |
172 | -- starting solution. The output entries of this builder |
173 | -- are of the same nature as of the traditional walking |
174 | -- but the requirements on the Line are not the same |
175 | -- If the determination of validity range is always |
176 | -- guaranteed, the criteria of correct repartition of sections |
177 | -- before smoothing are not respected. The resulting Line |
178 | -- is f(t) oriented. |
7fd59977 |
179 | |
180 | class RstRstLineBuilder; |
81bba717 |
181 | ---Purpose: Construction of a BRepBlend_Line between two pcurves |
182 | -- from an approached starting solution. The output |
183 | -- entries of this builder are of the same nature |
184 | -- as of a traditional walking, but the requirements |
185 | -- to the Line are not the same. If the determination of validity range is always |
186 | -- guaranteed, the criteria of correct repartition of sections |
187 | -- before smoothing are not respected. The resulting Line |
188 | -- is f(t) oriented. |
7fd59977 |
189 | end BRepBlend; |