0023948: Wrong intersection between a surface of revolution and a plane.
[occt.git] / src / Plate / Plate_GtoCConstraint.cdl
1 -- Created on: 1995-10-19
2 -- Created by: Andre LIEUTIER
3 -- Copyright (c) 1995-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 GtoCConstraint from Plate
18 ---Purpose: define a G1, G2  or G3 constraint on the Plate
19 --          
20
21 uses 
22  XY from gp, 
23  XYZ from gp, 
24  D1 from Plate, 
25  D2 from Plate, 
26  D3 from Plate, 
27  PinpointConstraint from Plate
28
29 is 
30     Create(ref  :  GtoCConstraint  from  Plate) returns GtoCConstraint;
31      
32     Create(point2d : XY ; D1S , D1T : D1 ) returns GtoCConstraint;
33     -- G1 constraint:   
34     -- D1S : first  derivative of  S, the surface we want to  correct 
35     -- D1T : first derivative of the reference surface
36
37     Create(point2d : XY ; D1S , D1T : D1;
38        nP : XYZ from gp ) returns GtoCConstraint;
39     -- G1 constraint:   
40     -- D1S : first  derivative of  S, the surface we want to  correct 
41     -- D1T : first derivative of the reference surface
42     -- nP : normal vector to tge Plane in which we want the correction to occur
43
44     Create(point2d : XY from gp; D1S , D1T : D1 from Plate;
45        D2S, D2T : D2 from Plate) returns GtoCConstraint;
46     -- G2 constraint:   
47     -- D1S : first  derivative of  S, the surface we want to  correct 
48     -- D1T : first derivative of the reference surface
49     -- D2S : second derivative of  S, the surface we want to  correct 
50     -- D2T : second derivative of the reference surface
51
52     Create(point2d : XY from gp; D1S , D1T : D1 from Plate;
53        D2S, D2T : D2 from Plate;
54        nP : XYZ from gp ) returns GtoCConstraint;
55     -- G2 constraint:   
56     -- D1S : first  derivative of  S, the surface we want to  correct 
57     -- D1T : first derivative of the reference surface
58     -- D2S : second derivative of  S, the surface we want to  correct 
59     -- D2T : second derivative of the reference surface
60     -- nP : normal vector to tge Plane in which we want the correction to occur
61
62     Create(point2d : XY from gp; D1S , D1T : D1 from Plate;
63        D2S, D2T : D2 from Plate;
64        D3S, D3T : D3 from Plate) returns GtoCConstraint;
65     -- G3 constraint:   
66     -- D1S : first  derivative of  S, the surface we want to  correct 
67     -- D1T : first derivative of the reference surface
68     -- D2S : second derivative of  S, the surface we want to  correct 
69     -- D2T : second derivative of the reference surface
70     -- D3S : third derivative of  S, the surface we want to  correct 
71     -- D3T : third derivative of the reference surface
72
73     Create(point2d : XY from gp; D1S , D1T : D1 from Plate;
74        D2S, D2T : D2 from Plate;
75        D3S, D3T : D3 from Plate;
76        nP : XYZ from gp ) returns GtoCConstraint;
77     -- G3 constraint:   
78     -- D1S : first  derivative of  S, the surface we want to  correct 
79     -- D1T : first derivative of the reference surface
80     -- D2S : second derivative of  S, the surface we want to  correct 
81     -- D2T : second derivative of the reference surface
82     -- D3S : third derivative of  S, the surface we want to  correct 
83     -- D3T : third derivative of the reference surface
84     -- nP : normal vector to tge Plane in which we want the correction to occur
85
86     -- Accessors :
87     nb_PPC(me) returns Integer;
88     ---C++: inline 
89     ---C++: return const &
90
91     GetPPC(me;  Index:  Integer) returns PinpointConstraint; 
92     --  "C style" Index :  Index : 0 --> nb_PPC-1
93     --  
94     ---C++: inline 
95     ---C++: return const &
96
97     D1SurfInit(me) returns D1; 
98     --  
99     ---C++: inline 
100     ---C++: return const &
101
102 fields
103
104     myPPC : PinpointConstraint[9]; 
105     myD1SurfInit  :  D1;  
106     pnt2d : XY ;    
107     nb_PPConstraints : Integer;
108
109 end;
110
111     
112