Salome HOME
yfr : Merge with v1.2
[modules/smesh.git] / src / SMDS / SMDS_MeshPyramid.cdl
1 -- File:        SMDS_MeshPyramid.cdl
2 -- Created:     Wed Jan 23 16:17:22 2002
3 -- Author:      Jean-Michel BOULCOURT
4 --              <jmb@coulox.paris1.matra-dtv.fr>
5 ---Copyright:    Matra Datavision 2002
6
7
8 class MeshPyramid from SMDS inherits MeshVolume from SMDS
9
10         ---Purpose: 
11
12 uses
13   MeshElement from SMDS
14     
15 raises 
16   ConstructionError   from Standard
17
18 is
19
20     Create (ID,idnode1,idnode2,idnode3,idnode4,idnode5: Integer) returns mutable MeshPyramid;
21         ---Purpose: constructor for a pyramid
22
23
24     GetFaceDefinedByNodes(me; rank: Integer; idnode : Address; nb: out Integer) 
25     is redefined static;
26     ---Purpose: returns the idnodes of the ith face (rank) of the volume
27     --          rank must be comprised between 1 and myNbConnections included.
28     
29     GetEdgeDefinedByNodes(me; rank: Integer; idnode1 : out Integer; idnode2: out Integer) 
30     is redefined static;
31     ---Purpose: returns the idnodes of the ith edge (rank) of the volume
32     --          rank must be comprised between 1 and myNbConnections included.
33     
34     ComputeKey(me: mutable);
35     ---Purpose: compute the  ID of the volume  based on the  id's of its
36     --          bounding nodes
37     ---C++: inline
38
39
40     SetConnections(me: mutable; idnode1,idnode2,idnode3,idnode4,idnode5: Integer) is private;
41
42     GetConnections(me) returns Address is redefined static;
43     ---C++: inline
44
45     GetConnection(me; rank: Integer) returns Integer is redefined static;
46     ---C++: inline
47
48     NbEdges(me) returns Integer
49     is redefined static;
50     ---C++: inline
51
52     NbFaces(me) returns Integer
53     is redefined static;
54     ---C++: inline
55
56     NodesOfFace(myclass; rankface,ranknode: Integer) 
57     returns Integer;
58     ---Purpose: returns the rank node in mynodes. Useful to extract faces from volume
59     --          
60
61     NodesOfEdge(me;  rankedge: Integer; ranknode: Integer) returns Integer;
62
63     
64 fields
65     
66     myNodes : Integer [5];
67
68 end MeshPyramid;