1 -- Created on: 1993-01-11
2 -- Created by: CKY / Contract Toubro-Larsen ( Arun MENON )
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
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.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 class NodalDisplAndRot from IGESAppli inherits IGESEntity
19 ---Purpose: defines NodalDisplAndRot, Type <138> Form <0>
20 -- in package IGESAppli
21 -- Used to communicate finite element post processing
26 GeneralNote from IGESDimen,
28 HArray1OfGeneralNote from IGESDimen,
29 HArray1OfNode from IGESAppli,
30 HArray1OfReal from TColStd,
32 HArray1OfInteger from TColStd,
33 HArray1OfXYZ from TColgp,
34 HArray1OfHArray1OfXYZ from IGESBasic
36 raises DimensionMismatch, OutOfRange
40 Create returns NodalDisplAndRot;
42 -- Specific Methods pertaining to the class
45 allNotes : HArray1OfGeneralNote;
46 allIdentifiers : HArray1OfInteger;
47 allNodes : HArray1OfNode;
48 allRotParams : HArray1OfHArray1OfXYZ;
49 allTransParams : HArray1OfHArray1OfXYZ)
50 raises DimensionMismatch;
51 ---Purpose : This method is used to set the fields of the class
53 -- - allNotes : Used to store the general note describing
55 -- - allIdentifiers : Used to store the node number
56 -- identifier for the nodes
57 -- - allNodes : Used to store the nodes
58 -- - allRotParams : Used to store the rotation for the nodes
59 -- - allTransParams : Used to store the incremental
60 -- displacements for the nodes
61 -- raises exception if Lengths of allIdentifiers, allNodes,
62 -- allRotParams, and allTransParams are not same
63 -- or if length of allNotes and size of each element of allRotParams
64 -- and allTransParam are not same
66 NbCases (me) returns Integer;
67 ---Purpose : returns the number of analysis cases
69 NbNodes (me) returns Integer;
70 ---Purpose : returns the number of nodes
72 Note (me; Index : Integer) returns GeneralNote
74 ---Purpose : returns the General Note that describes the Index analysis case
75 -- raises exception if Index <= 0 or Index > NbCases
77 NodeIdentifier (me; Index : Integer) returns Integer
79 ---Purpose : returns the node identifier as specified by the Index
80 -- raises exception if Index <= 0 or Index > NbNodes
82 Node (me; Index : Integer) returns Node
84 ---Purpose : returns the node as specified by the Index
85 -- raises exception if Index <= 0 or Index > NbNodes
87 TranslationParameter (me; NodeNum, CaseNum : Integer) returns XYZ
89 ---Purpose : returns the Translational Parameters for the particular Index
90 -- Exception raised if NodeNum <= 0 or NodeNum > NbNodes()
91 -- or CaseNum <= 0 or CaseNum > NbCases()
93 RotationalParameter (me; NodeNum, CaseNum : Integer) returns XYZ
95 ---Purpose : returns the Rotational Parameters for Index
96 -- Exception raised if NodeNum <= 0 or NodeNum > NbNodes()
97 -- or CaseNum <= 0 or CaseNum > NbCases()
102 -- Class : IGESAppli_NodalDisplAndRot
104 -- Purpose : Declaration of variables specific to the definition
105 -- of the Class NodalDisplAndRot.
107 -- Reminder : A NodalDisplAndRot instance is defined by :
108 -- - the general note describing the analysis cases
109 -- - the node number identifier for the nodes
111 -- - the incremental displacements and rotation for the nodes
113 theNotes : HArray1OfGeneralNote;
114 theNodeIdentifiers : HArray1OfInteger;
115 theNodes : HArray1OfNode;
116 theTransParam : HArray1OfHArray1OfXYZ;
117 theRotParam : HArray1OfHArray1OfXYZ;
119 end NodalDisplAndRot;