0023024: Update headers of OCCT files
[occt.git] / src / BRep / BRep_PointRepresentation.cdl
1 -- Created on: 1993-08-10
2 -- Created by: Remi LEQUETTE
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
21
22
23
24
25 deferred class PointRepresentation from BRep inherits TShared from MMgt
26
27         ---Purpose: Root  class     for   the points  representations.
28         --          Contains a location and a parameter.
29
30 uses
31     Curve    from Geom2d,
32     Curve    from Geom,
33     Surface  from Geom,
34     Location from TopLoc
35
36 raises
37     DomainError from Standard
38
39 is
40
41    Initialize(P : Real;
42               L : Location from TopLoc);
43    
44     -------------------------------------------------
45     -- What kind of representation
46     -------------------------------------------------
47
48     IsPointOnCurve(me)          returns Boolean
49         ---Purpose: A point on a 3d curve.
50     is virtual;
51         
52     IsPointOnCurveOnSurface(me) returns Boolean
53         ---Purpose: A point on a 2d curve on a surface.
54     is virtual;
55
56     IsPointOnSurface(me)        returns Boolean
57         ---Purpose: A point on a surface.
58     is virtual;
59    
60     IsPointOnCurve(me; C : Curve    from Geom;
61                        L : Location from TopLoc)   returns Boolean
62         ---Purpose: A point on the curve <C>.
63     is virtual;
64         
65     IsPointOnCurveOnSurface(me; PC : Curve     from Geom2d;
66                                 S  : Surface  from Geom;
67                                 L  : Location from TopLoc)   returns Boolean
68         ---Purpose: A point on the 2d curve <PC> on the surface <S>.
69     is virtual;
70
71     IsPointOnSurface(me; S  : Surface  from Geom;
72                          L  : Location from TopLoc)   returns Boolean
73         ---Purpose: A point on the surface <S>.
74     is virtual;
75    
76     -------------------------------------------------
77     -- Location
78     -------------------------------------------------
79
80     Location(me) returns Location from TopLoc
81         ---C++: return const &
82         ---C++: inline
83     is static;
84                 
85     Location(me : mutable; L : Location from TopLoc)
86         ---C++: inline
87     is static;
88     
89     -------------------------------------------------
90     -- Parameters
91     -------------------------------------------------
92
93     Parameter(me) returns Real
94         ---C++: inline
95     is static;
96                 
97     Parameter(me : mutable; P : Real)
98         ---C++: inline
99     is static;
100                 
101     Parameter2(me) returns Real
102     raises 
103         DomainError from Standard -- if !IsPointOnSurface
104     is virtual;
105                 
106     Parameter2(me : mutable; P : Real)
107     raises 
108         DomainError from Standard -- if !IsPointOnSurface
109     is virtual;
110
111     -------------------------------------------------
112     -- 3d curve
113     -------------------------------------------------
114
115     Curve(me) returns any Curve from Geom
116         ---C++: return const &
117     raises
118         DomainError from Standard -- if !IsPointOnCurve
119     is virtual;
120         
121     Curve(me : mutable; C : Curve from Geom)
122     raises
123         DomainError from Standard -- if !IsPointOnCurve
124     is virtual;
125         
126                 
127     -------------------------------------------------
128     -- curve on surface
129     -------------------------------------------------
130         
131     PCurve(me) returns any Curve from Geom2d
132         ---C++: return const &
133     raises
134         DomainError from Standard -- if !IsPointOnCurveOnSurface
135     is virtual;
136     
137     PCurve(me : mutable; C : Curve from Geom2d)
138     raises
139         DomainError from Standard -- if !IsPointOnCurveOnSurface
140     is virtual;
141     
142     -------------------------------------------------
143     -- surface
144     -------------------------------------------------
145         
146     Surface(me) returns any Surface from Geom
147         ---C++: return const &
148     raises
149         DomainError from Standard -- if IsPointOnCurve()
150     is virtual;
151
152     Surface(me : mutable; S : Surface from Geom)
153     raises
154         DomainError from Standard -- if IsPointOnCurve()
155     is virtual;
156
157 fields
158
159     myLocation  : Location from TopLoc;
160     myParameter : Real;
161
162 end PointRepresentation;