83{
84 int i;
86 H3D_ID elem_id;
88
89
90
91 try {
92
93 unsigned int max_sims = 10;
94 unsigned int sub_count = 1;
95 float elem_result[6] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
96
97
98 unsigned int num_corners = 0;
99 unsigned int num_modes = 0;
101 float value[1] ;
102
104
105 char TRUSSPOOL[] = "TRUSS";
108
109 char BEAMPOOL[] = "BEAM";
112
113 char SPRINGPOOL[] = "SPRING";
116
117
118
119 if( *NUMELT != 0)
120 {
121
123 H3D_DS_TENSOR3D, num_corners, num_modes, *CPT_DATATYPE,
126
128
129 for( i = 0; i < *NUMELT + *NUMELP + *NUMELR; i++ )
130 {
131 if( ITY_ELEM[i] == 4 && IS_WRITTEN[i] == 1)
132 {
133 elem_id = ID_ELEM[i];
134 elem_result[0] =
FUNC[6*i];
135 elem_result[1] =
FUNC[6*i+1];
136 elem_result[2] =
FUNC[6*i+2];
137 elem_result[3] =
FUNC[6*i+3];
138 elem_result[4] =
FUNC[6*i+4];
139 elem_result[5] =
FUNC[6*i+5];
141 }
142 }
143
146 }
147
148 if( *NUMELP != 0)
149 {
150
152 H3D_DS_TENSOR3D, num_corners, num_modes, *CPT_DATATYPE,
155
156 for( i = 0; i < *NUMELT + *NUMELP + *NUMELR; i++ )
157 {
158 if( ITY_ELEM[i] == 5 && IS_WRITTEN[i] == 1)
159 {
160 elem_id = ID_ELEM[i];
161 elem_result[0] =
FUNC[6*i];
162 elem_result[1] =
FUNC[6*i+1];
163 elem_result[2] =
FUNC[6*i+2];
164 elem_result[3] =
FUNC[6*i+3];
165 elem_result[4] =
FUNC[6*i+4];
166 elem_result[5] =
FUNC[6*i+5];
168 }
169 }
172 }
173
174 if( *NUMELR != 0)
175 {
176
178 H3D_DS_TENSOR3D, num_corners, num_modes, *CPT_DATATYPE,
181
182 for( i = 0; i < *NUMELT + *NUMELP + *NUMELR; i++ )
183 {
184 if( ITY_ELEM[i] == 6 && IS_WRITTEN[i] == 1)
185 {
186 elem_id = ID_ELEM[i];
187 elem_result[0] =
FUNC[6*i];
188 elem_result[1] =
FUNC[6*i+1];
189 elem_result[2] =
FUNC[6*i+2];
190 elem_result[3] =
FUNC[6*i+3];
191 elem_result[4] =
FUNC[6*i+4];
192 elem_result[5] =
FUNC[6*i+5];
194 }
195 }
198 }
199
200 }
201
202 catch(...) {
204 }
205}
H3D_ID spring_poolname_id
bool Hyper3DAddString(H3DFileInfo *h3d_file, const char *const string, H3D_ID *const str_id)
bool Hyper3DDatasetBegin(H3DFileInfo *h3d_file, unsigned int count, H3D_SIM_IDX idx, H3D_ID subcase_id, H3D_DS_TYPE type, H3D_DS_FORMAT format, unsigned int num_corners, unsigned int num_modes, H3D_ID dt_id, int layer_idx, H3D_ID data_poolname_id, bool complex)
bool Hyper3DExportClearError(H3DFileInfo *h3d_file)
bool Hyper3DDatasetEnd(H3DFileInfo *h3d_file)
bool Hyper3DDatasetWrite(H3DFileInfo *h3d_file, H3D_ID id, const float *data)
integer, dimension(:), allocatable offset