1 -- File: Contap_SurfaceTool.cdl
2 -- Created: Wed May 12 09:11:00 1993
3 -- Author: Jacques GOUSSARD
4 ---Copyright: Matra Datavision 1993
7 deferred generic class SurfaceTool from Contap
11 ---Purpose: Template class for a tool on a surface.
12 -- It is possible to implement this class with an
13 -- instantiation of the Surface2Tool from Adaptor3d.
16 uses SurfaceType from GeomAbs,
27 GetType(myclass; S: TheSurface)
29 returns SurfaceType from GeomAbs;
32 Plane(myclass; S: TheSurface)
34 ---Purpose: Returns the plane from gp when GetType returns
40 Cylinder(myclass; S: TheSurface)
42 ---Purpose: Returns the cylinder from gp when GetType returns
45 returns Cylinder from gp;
48 Sphere(myclass; S: TheSurface)
50 ---Purpose: Returns the sphere from gp when GetType returns
53 returns Sphere from gp;
56 Cone(myclass; S: TheSurface)
58 ---Purpose: Returns the cone from gp when GetType returns
65 UIntervalFirst(myclass ; S: TheSurface)
67 ---Purpose: Returns the first U parameter of the surface.
69 returns Real from Standard;
72 VIntervalFirst(myclass ; S: TheSurface)
74 ---Purpose: Returns the first V parameter of the surface.
76 returns Real from Standard;
79 UIntervalLast(myclass ; S: TheSurface)
81 ---Purpose: Returns the last U parameter of the surface.
83 returns Real from Standard;
86 VIntervalLast(myclass ; S: TheSurface)
88 ---Purpose: Returns the last V parameter of the surface.
90 returns Real from Standard;
93 Value (myclass ; S: TheSurface;
94 U,V : Real from Standard)
96 ---Purpose: Returns the point of parameter (U,V) on the surface.
101 D1(myclass; S: TheSurface; U,V: Real from Standard;
102 P: out Pnt from gp; D1U,D1V: out Vec from gp);
104 ---Purpose: Returns the point of parameter (U,V) on the surface,
105 -- and the first derivatives in the directions u and v.
108 D2(myclass; S: TheSurface; U,V: Real from Standard; P: out Pnt from gp;
109 D1U,D1V,D2U,D2V,D2UV: out Vec from gp);
111 ---Purpose: Returns the point of parameter (U,V) on the surface,
112 -- and the first and the second derivatives in the
113 -- directions u and v.
116 UResolution(myclass; S : TheSurface; Tol3d: Real from Standard)
118 ---Purpose: Returns the numerical resolution in the U direction,
119 -- for a given resolution in 3d space.
121 returns Real from Standard;
124 VResolution(myclass; S : TheSurface; Tol3d: Real from Standard)
126 ---Purpose: Returns the numerical resolution in the V direction,
127 -- for a given resolution in 3d space.
129 returns Real from Standard;