Salome HOME
RNC: EDF 1618 Modified sketcher to allow creation of arcs of circle with the destinat...
[modules/geom.git] / src / GEOMAlgo / GEOMAlgo_ShapeInfo.cdl
1 --  Copyright (C) 2007-2010  CEA/DEN, EDF R&D, OPEN CASCADE
2 --
3 --  This library is free software; you can redistribute it and/or
4 --  modify it under the terms of the GNU Lesser General Public
5 --  License as published by the Free Software Foundation; either
6 --  version 2.1 of the License.
7 --
8 --  This library is distributed in the hope that it will be useful,
9 --  but WITHOUT ANY WARRANTY; without even the implied warranty of
10 --  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 --  Lesser General Public License for more details.
12 --
13 --  You should have received a copy of the GNU Lesser General Public
14 --  License along with this library; if not, write to the Free Software
15 --  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 --
17 --  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 --
19
20 --  File:       GEOMAlgo_ShapeInfo.cdl
21 --  Created:    Mon Apr  2 14:04:24 2007
22 --  Author:     Peter KURNEV
23 --
24 class ShapeInfo from GEOMAlgo 
25
26         ---Purpose: 
27
28 uses 
29     Pnt from gp, 
30     Dir from gp, 
31     Ax2 from gp, 
32     Ax3 from gp, 
33     
34     ShapeEnum from TopAbs, 
35     Shape from TopoDS, 
36      
37     KindOfShape   from GEOMAlgo,
38     KindOfBounds  from GEOMAlgo, 
39     KindOfClosed  from GEOMAlgo, 
40     KindOfName from GEOMAlgo
41 --raises
42
43 is 
44     Create 
45         returns ShapeInfo from GEOMAlgo;   
46     ---C++: alias "Standard_EXPORT virtual ~GEOMAlgo_ShapeInfo();" 
47      
48     Reset(me:out); 
49      
50     SetType(me:out; 
51             aType:ShapeEnum from TopAbs); 
52          
53     Type(me) 
54         returns ShapeEnum from TopAbs; 
55          
56     SetNbSubShapes(me:out; 
57             aType:ShapeEnum from TopAbs; 
58             aNb  :Integer from Standard); 
59      
60     NbSubShapes(me; 
61             aType:ShapeEnum from TopAbs) 
62         returns Integer from Standard; 
63          
64     SetKindOfShape (me:out; 
65             aT:KindOfShape from GEOMAlgo); 
66          
67     KindOfShape (me) 
68          returns KindOfShape from GEOMAlgo;      
69
70     SetKindOfName (me:out; 
71             aT: KindOfName from GEOMAlgo); 
72          
73     KindOfName(me) 
74          returns KindOfName from GEOMAlgo; 
75
76     SetKindOfBounds (me:out; 
77             aT:KindOfBounds from GEOMAlgo); 
78              
79     KindOfBounds (me) 
80          returns KindOfBounds from GEOMAlgo;    
81           
82     SetKindOfClosed (me:out; 
83             aT:KindOfClosed from GEOMAlgo); 
84              
85     KindOfClosed(me) 
86          returns KindOfClosed from GEOMAlgo;   
87          
88     SetLocation (me:out; 
89             aP: Pnt from gp); 
90              
91     Location (me) 
92          returns Pnt from gp; 
93     ---C++: return const&  
94          
95     SetDirection  (me:out; 
96             aD:Dir from gp); 
97              
98     Direction  (me) 
99          returns Dir from gp; 
100     ---C++: return const&      
101       
102     SetPosition (me:out;  
103             aAx2 : Ax2 from gp);
104      
105     SetPosition (me:out;  
106             aAx3 : Ax3 from gp); 
107          
108     Position (me)  
109         returns Ax3 from gp; 
110     ---C++: return const&          
111         
112     SetPnt1 (me:out; 
113             aP: Pnt from gp); 
114              
115     Pnt1 (me) 
116          returns Pnt from gp; 
117     ---C++: return const& 
118      
119     SetPnt2 (me:out; 
120             aP: Pnt from gp); 
121              
122     Pnt2 (me) 
123          returns Pnt from gp; 
124     ---C++: return const& 
125      
126     SetRadius1 (me:out; 
127             aR: Real from Standard); 
128              
129     Radius1(me) 
130          returns Real from Standard;    
131
132     SetRadius2 (me:out; 
133             aR: Real from Standard); 
134              
135     Radius2(me) 
136          returns Real from Standard;   
137       
138     SetLength(me:out; 
139             aL: Real from Standard); 
140              
141     Length(me) 
142          returns Real from Standard;  
143           
144     SetWidth(me:out; 
145             aW: Real from Standard); 
146              
147     Width(me) 
148          returns Real from Standard;  
149            
150     SetHeight(me:out; 
151             aH: Real from Standard); 
152              
153     Height(me) 
154          returns Real from Standard; 
155     --
156     -- Dump
157     --               
158     Dump(me); 
159         
160     DumpVertex(me) 
161         is protected; 
162          
163     DumpEdge(me) 
164         is protected; 
165          
166     DumpWire(me) 
167         is protected;
168   
169     DumpFace(me) 
170         is protected;
171   
172     DumpShell(me) 
173         is protected; 
174      
175     DumpSolid(me) 
176         is protected; 
177          
178     DumpCompSolid(me) 
179         is protected; 
180          
181     DumpCompound(me) 
182         is protected;
183  
184 fields 
185     myType          : ShapeEnum from TopAbs      is protected; 
186     myNbSubShapes   : Integer from Standard[9]   is protected; 
187     myKindOfShape   : KindOfShape from GEOMAlgo  is protected;  
188     myKindOfName    : KindOfName from GEOMAlgo   is protected;  
189     myKindOfBounds  : KindOfBounds from GEOMAlgo is protected;  
190     myKindOfClosed  : KindOfClosed from GEOMAlgo is protected;  
191     --
192     myLocation      : Pnt from gp is protected;  
193     myDirection     : Dir from gp is protected; 
194     myPosition      : Ax3 from gp is protected; 
195     -- 
196     myRadius1       : Real from Standard is protected;    
197     myRadius2       : Real from Standard is protected;    
198     myLength        : Real from Standard is protected;    
199     myWidth         : Real from Standard is protected;    
200     myHeight        : Real from Standard is protected;    
201     -- 
202     myPnt1          : Pnt from gp is protected;   
203     myPnt2          : Pnt from gp is protected;    
204     -- 
205     myNbTypes       : Integer from Standard is protected;
206 end ShapeInfo;