0024927: Getting rid of "Persistent" functionality -- Code
[occt.git] / src / PBRep / PBRep_CurveOnSurface.cdl
1 -- Created on: 1993-07-06
2 -- Created by: Remi LEQUETTE
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
5 --
6 -- This file is part of Open CASCADE Technology software library.
7 --
8 -- This library is free software; you can redistribute it and/or modify it under
9 -- the terms of the GNU Lesser General Public License 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.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 class CurveOnSurface from PBRep inherits GCurve from PBRep
18
19         ---Purpose: Representation  of a  curve   by a   curve  in the
20         --          parametric space of a surface.
21
22 uses
23     Curve    from PGeom2d,
24     Surface  from PGeom,
25     Pnt2d    from gp,
26     Location from PTopLoc
27
28 is
29
30     Create(PC : Curve    from PGeom2d;
31            CF : Real     from Standard;
32            CL : Real     from Standard;
33            S  : Surface  from PGeom; 
34            L  : Location from PTopLoc)
35     returns CurveOnSurface from PBRep;
36         ---Purpose: CF is curve first parameter
37         --          CL is curve last parameter
38         --          As far as they can't be computed from a Persistent Curve
39         --          they are given in the CurveOnSurface constructor
40
41     Surface(me) returns  Surface from PGeom
42     is static;
43         ---Level: Internal 
44
45     PCurve(me) returns  Curve from PGeom2d
46     is static;
47         ---Level: Internal 
48
49     IsCurveOnSurface(me) returns Boolean
50         ---Purpose: Returns True.
51     is redefined;
52     
53     SetUVPoints(me : mutable; Pnt1, Pnt2 : Pnt2d from gp);
54     
55     FirstUV(me) returns Pnt2d from gp;
56
57     LastUV(me) returns Pnt2d from gp;
58     
59 fields
60     
61     myPCurve      : Curve   from PGeom2d;
62     mySurface     : Surface from PGeom;
63     myUV1         : Pnt2d   from gp;
64     myUV2         : Pnt2d   from gp;
65     
66 end CurveOnSurface;