1 -- Created on: 1996-11-25
2 -- Created by: Philippe MANGIN
3 -- Copyright (c) 1996-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
8 -- This library is free software; you can redistribute it and / or modify it
9 -- under the terms of the GNU Lesser General Public version 2.1 as published
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.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 class AppSurface from BRepBlend inherits Approx from AppBlend
19 ---Purpose:Used to Approximate the blending surfaces.
21 uses Array2OfReal from TColStd,
22 HArray2OfReal from TColStd,
23 Array1OfReal from TColStd,
24 HArray1OfReal from TColStd,
25 Array1OfInteger from TColStd,
26 HArray1OfInteger from TColStd,
27 Array1OfPnt2d from TColgp,
28 Array2OfPnt from TColgp,
29 HArray2OfPnt from TColgp,
32 SweepFunction from Approx,
33 SweepApproximation from Approx
36 raises NotDone from StdFail,
41 Create(Funct : in out SweepFunction from Approx;
43 Tol3d, Tol2d, TolAngular : Real;
44 Continuity : Shape = GeomAbs_C0;
45 Degmax : Integer = 11;
46 Segmax : Integer = 50)
47 ---Purpose: Approximation of the new Surface (and
48 -- eventually the 2d Curves on the support
50 -- Normaly the 2d curve are
51 -- approximated with an tolerance given by the
52 -- resolution on support surfaces, but if this
53 -- tolerance is too large Tol2d is used.
54 returns AppSurface from BRepBlend;
58 returns Boolean from Standard
63 SurfShape(me; UDegree,VDegree : out Integer from Standard;
64 NbUPoles,NbVPoles: out Integer from Standard;
65 NbUKnots,NbVKnots: out Integer from Standard)
66 raises NotDone from StdFail
70 Surface(me; TPoles : out Array2OfPnt from TColgp;
71 TWeights : out Array2OfReal from TColStd;
72 TUKnots,TVKnots : out Array1OfReal from TColStd;
73 TUMults,TVMults : out Array1OfInteger from TColStd)
74 raises NotDone from StdFail
80 returns Integer from Standard
83 raises NotDone from StdFail
89 returns Integer from Standard
92 raises NotDone from StdFail
98 returns Array2OfPnt from TColgp
100 ---C++: return const&
102 raises NotDone from StdFail
108 returns Array2OfReal from TColStd
110 ---C++: return const&
112 raises NotDone from StdFail
118 returns Array1OfReal from TColStd
120 ---C++: return const&
122 raises NotDone from StdFail
128 returns Array1OfReal from TColStd
130 ---C++: return const&
132 raises NotDone from StdFail
138 returns Array1OfInteger from TColStd
140 ---C++: return const&
142 raises NotDone from StdFail
148 returns Array1OfInteger from TColStd
150 ---C++: return const&
152 raises NotDone from StdFail
156 ---Purpose: returns the maximum error in the suface approximation.
161 returns Integer from Standard
164 raises NotDone from StdFail
168 Curves2dShape(me; Degree,NbPoles,NbKnots: out Integer from Standard)
170 raises NotDone from StdFail,
171 DomainError from Standard
176 Curve2d(me; Index: Integer from Standard;
177 TPoles : out Array1OfPnt2d from TColgp;
178 TKnots : out Array1OfReal from TColStd;
179 TMults : out Array1OfInteger from TColStd)
181 raises NotDone from StdFail,
182 OutOfRange from Standard,
183 DomainError from Standard
190 returns Integer from Standard
193 raises NotDone from StdFail,
194 DomainError from Standard
198 Curve2dPoles(me; Index: Integer from Standard)
200 returns Array1OfPnt2d from TColgp
202 ---C++: return const&
204 raises NotDone from StdFail,
205 OutOfRange from Standard,
206 DomainError from Standard
212 returns Array1OfReal from TColStd
214 ---C++: return const&
216 raises NotDone from StdFail,
217 DomainError from Standard
222 returns Array1OfInteger from TColStd
224 ---C++: return const&
225 raises NotDone from StdFail,
226 DomainError from Standard
230 TolReached(me; Tol3d, Tol2d : out Real from Standard)
231 raises NotDone from StdFail
234 Max2dError (me; Index : Integer)
235 ---Purpose: returns the maximum error in the <Index> 2d curve approximation.
237 raises NotDone from StdFail
240 TolCurveOnSurf(me; Index : Integer from Standard)
241 returns Real from Standard
242 raises NotDone from StdFail
245 Dump(me; o: in out OStream);
246 ---Purpose: diplay information on approximation.
249 approx : SweepApproximation from Approx;