0023625: New functionality building reflect lines on a shape
[occt.git] / src / Contap / Contap_SurfaceTool.cdl
CommitLineData
b311480e 1-- Created on: 1993-05-12
2-- Created by: Jacques GOUSSARD
3-- Copyright (c) 1993-1999 Matra Datavision
4-- Copyright (c) 1999-2012 OPEN CASCADE SAS
5--
6-- The content of this file is subject to the Open CASCADE Technology Public
7-- License Version 6.5 (the "License"). You may not use the content of this file
8-- except in compliance with the License. Please obtain a copy of the License
9-- at http://www.opencascade.org and read it completely before using this file.
10--
11-- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12-- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13--
14-- The Original Code and all software distributed under the License is
15-- distributed on an "AS IS" basis, without warranty of any kind, and the
16-- Initial Developer hereby disclaims all such warranties, including without
17-- limitation, any warranties of merchantability, fitness for a particular
18-- purpose or non-infringement. Please see the License for the specific terms
19-- and conditions governing the rights and limitations under the License.
20
7fd59977 21
22
23deferred generic class SurfaceTool from Contap
24 (TheSurface as any)
25
26
27 ---Purpose: Template class for a tool on a surface.
28 -- It is possible to implement this class with an
29 -- instantiation of the Surface2Tool from Adaptor3d.
30
31
32uses SurfaceType from GeomAbs,
33 Pln from gp,
34 Sphere from gp,
35 Cylinder from gp,
36 Cone from gp,
37 Pnt from gp,
38 Vec from gp
39
40 is
41
42
43 GetType(myclass; S: TheSurface)
44
45 returns SurfaceType from GeomAbs;
46
47
48 Plane(myclass; S: TheSurface)
49
50 ---Purpose: Returns the plane from gp when GetType returns
51 -- GeomAbs_Plane.
52
53 returns Pln from gp;
54
55
56 Cylinder(myclass; S: TheSurface)
57
58 ---Purpose: Returns the cylinder from gp when GetType returns
59 -- GeomAbs_Cylinder.
60
61 returns Cylinder from gp;
62
63
64 Sphere(myclass; S: TheSurface)
65
66 ---Purpose: Returns the sphere from gp when GetType returns
67 -- GeomAbs_Sphere.
68
69 returns Sphere from gp;
70
71
72 Cone(myclass; S: TheSurface)
73
74 ---Purpose: Returns the cone from gp when GetType returns
75 -- GeomAbs_Cone.
76
77 returns Cone from gp;
78
79
80
81 UIntervalFirst(myclass ; S: TheSurface)
82
83 ---Purpose: Returns the first U parameter of the surface.
84
85 returns Real from Standard;
86
87
88 VIntervalFirst(myclass ; S: TheSurface)
89
90 ---Purpose: Returns the first V parameter of the surface.
91
92 returns Real from Standard;
93
94
95 UIntervalLast(myclass ; S: TheSurface)
96
97 ---Purpose: Returns the last U parameter of the surface.
98
99 returns Real from Standard;
100
101
102 VIntervalLast(myclass ; S: TheSurface)
103
104 ---Purpose: Returns the last V parameter of the surface.
105
106 returns Real from Standard;
107
108
109 Value (myclass ; S: TheSurface;
110 U,V : Real from Standard)
111
112 ---Purpose: Returns the point of parameter (U,V) on the surface.
113
114 returns Pnt from gp;
115
116
117 D1(myclass; S: TheSurface; U,V: Real from Standard;
118 P: out Pnt from gp; D1U,D1V: out Vec from gp);
119
120 ---Purpose: Returns the point of parameter (U,V) on the surface,
121 -- and the first derivatives in the directions u and v.
122
123
124 D2(myclass; S: TheSurface; U,V: Real from Standard; P: out Pnt from gp;
125 D1U,D1V,D2U,D2V,D2UV: out Vec from gp);
126
127 ---Purpose: Returns the point of parameter (U,V) on the surface,
128 -- and the first and the second derivatives in the
129 -- directions u and v.
130
131
132 UResolution(myclass; S : TheSurface; Tol3d: Real from Standard)
133
134 ---Purpose: Returns the numerical resolution in the U direction,
135 -- for a given resolution in 3d space.
136
137 returns Real from Standard;
138
139
140 VResolution(myclass; S : TheSurface; Tol3d: Real from Standard)
141
142 ---Purpose: Returns the numerical resolution in the V direction,
143 -- for a given resolution in 3d space.
144
145 returns Real from Standard;
146
147
148end SurfaceTool;