OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
c_h3d_create_solid8n.cpp File Reference
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <fcntl.h>
#include <sys/resource.h>
#include <sys/types.h>
#include <time.h>
#include <sys/stat.h>
#include <unistd.h>
#include <dlfcn.h>
#include <stdbool.h>
#include "h3dpublic_defs.h"
#include "h3dpublic_export.h"
#include "h3d_values.h"

Go to the source code of this file.

Macros

#define _FCALL
#define _FCALL

Functions

void c_h3d_create_solid8n_ (int *ITAB, int *NUMNOD, int *IXS, int *NIXS, int *NUMELS, int *IPARTS, int *IPART, int *LIPART1, int *H3D_PART, int *NUMELS10, int *IXS10, int *IPARTS10, int *NUMELS16, int *IXS16, int *IPARTS16, int *NUMELS20, int *IXS20, int *IPARTS20)
void _FCALL C_H3D_CREATE_SOLID8N (int *ITAB, int *NUMNOD, int *IXS, int *NIXS, int *NUMELS, int *IPARTS, int *IPART, int *LIPART1, int *H3D_PART, int *NUMELS10, int *IXS10, int *IPARTS10, int *NUMELS16, int *IXS16, int *IPARTS16, int *NUMELS20, int *IXS20, int *IPARTS20)
void c_h3d_create_solid8n__ (int *ITAB, int *NUMNOD, int *IXS, int *NIXS, int *NUMELS, int *IPARTS, int *IPART, int *LIPART1, int *H3D_PART, int *NUMELS10, int *IXS10, int *IPARTS10, int *NUMELS16, int *IXS16, int *IPARTS16, int *NUMELS20, int *IXS20, int *IPARTS20)
void c_h3d_create_solid8n (int *ITAB, int *NUMNOD, int *IXS, int *NIXS, int *NUMELS, int *IPARTS, int *IPART, int *LIPART1, int *H3D_PART, int *NUMELS10, int *IXS10, int *IPARTS10, int *NUMELS16, int *IXS16, int *IPARTS16, int *NUMELS20, int *IXS20, int *IPARTS20)

Macro Definition Documentation

◆ _FCALL [1/2]

#define _FCALL

Definition at line 50 of file c_h3d_create_solid8n.cpp.

◆ _FCALL [2/2]

#define _FCALL

Definition at line 50 of file c_h3d_create_solid8n.cpp.

Function Documentation

◆ C_H3D_CREATE_SOLID8N()

void _FCALL C_H3D_CREATE_SOLID8N ( int * ITAB,
int * NUMNOD,
int * IXS,
int * NIXS,
int * NUMELS,
int * IPARTS,
int * IPART,
int * LIPART1,
int * H3D_PART,
int * NUMELS10,
int * IXS10,
int * IPARTS10,
int * NUMELS16,
int * IXS16,
int * IPARTS16,
int * NUMELS20,
int * IXS20,
int * IPARTS20 )

Definition at line 737 of file c_h3d_create_solid8n.cpp.

740{c_h3d_create_solid8n_ (ITAB,NUMNOD,IXS,NIXS,NUMELS,IPARTS,IPART,LIPART1,H3D_PART,
741 NUMELS10,IXS10,IPARTS10,NUMELS16,IXS16,IPARTS16,NUMELS20,IXS20,
742 IPARTS20);}
void c_h3d_create_solid8n_(int *ITAB, int *NUMNOD, int *IXS, int *NIXS, int *NUMELS, int *IPARTS, int *IPART, int *LIPART1, int *H3D_PART, int *NUMELS10, int *IXS10, int *IPARTS10, int *NUMELS16, int *IXS16, int *IPARTS16, int *NUMELS20, int *IXS20, int *IPARTS20)

◆ c_h3d_create_solid8n()

void c_h3d_create_solid8n ( int * ITAB,
int * NUMNOD,
int * IXS,
int * NIXS,
int * NUMELS,
int * IPARTS,
int * IPART,
int * LIPART1,
int * H3D_PART,
int * NUMELS10,
int * IXS10,
int * IPARTS10,
int * NUMELS16,
int * IXS16,
int * IPARTS16,
int * NUMELS20,
int * IXS20,
int * IPARTS20 )

Definition at line 751 of file c_h3d_create_solid8n.cpp.

754{c_h3d_create_solid8n_ (ITAB,NUMNOD,IXS,NIXS,NUMELS,IPARTS,IPART,LIPART1,H3D_PART,
755 NUMELS10,IXS10,IPARTS10,NUMELS16,IXS16,IPARTS16,NUMELS20,IXS20,
756 IPARTS20);}

◆ c_h3d_create_solid8n_()

void c_h3d_create_solid8n_ ( int * ITAB,
int * NUMNOD,
int * IXS,
int * NIXS,
int * NUMELS,
int * IPARTS,
int * IPART,
int * LIPART1,
int * H3D_PART,
int * NUMELS10,
int * IXS10,
int * IPARTS10,
int * NUMELS16,
int * IXS16,
int * IPARTS16,
int * NUMELS20,
int * IXS20,
int * IPARTS20 )

Definition at line 70 of file c_h3d_create_solid8n.cpp.

73{
74 unsigned int * nbelems = new unsigned int [*NUMELS];
75 try {
76
77
78 // create Elements
79 unsigned int conn4[4] ;
80 unsigned int conn5[5] ;
81 unsigned int conn6[6] ;
82 unsigned int conn8[8] ;
83 unsigned int conn10[10] ;
84 unsigned int conn16[16] ;
85 unsigned int conn20[20] ;
86 int node[8] ;
87 int node_ok[8] ;
88 H3D_ID elem_id ;
89 int i,n1,n2,n3,n4,n5,n6,n7,n8,n9,n10;
90 int cpt_elem,nbelemwrite;
91 int elem_nodes = 0;
92 int elem_nodes_m1 = 0;
93 int j = 0;
94 int k = 0;
95 int NUMELS8 = *NUMELS - *NUMELS10 - *NUMELS20 - *NUMELS16 ;
96 int NIXS10 = 11;
97 int NIXS16 = 17;
98 int NIXS20 = 21;
99
100 char SOLID4NPOOL[] = "TETRA4";
102 if( !rc ) throw rc;
103
104 char SOLID10NPOOL[] = "TETRA10";
106 if( !rc ) throw rc;
107
108 char SOLID5NPOOL[] = "PENTA5";
110 if( !rc ) throw rc;
111
112 char SOLID6NPOOL[] = "PENTA6";
114 if( !rc ) throw rc;
115
116 char SOLID8NPOOL[] = "BRICK";
118 if( !rc ) throw rc;
119
120 char SOLID16NPOOL[] = "BRICK16";
122 if( !rc ) throw rc;
123
124 char SOLID20NPOOL[] = "BRICK20";
126 if( !rc ) throw rc;
127
128 char SOLIDPOOL[] = "Solid";
130 if( !rc ) throw rc;
131
132 unsigned int elem_count = 1;
133
134
135
136// SOLID8
137
138 comp_id = 0;
139 j = 0;
140
141 for(i=0;i<NUMELS8;i++) nbelems[i] = 0;
142
143 for(i=0;i<NUMELS8;i++)
144 {
145 if(H3D_PART[IPARTS[i] - 1] == 1)
146 {
147 n1 = IXS[*NIXS * i + 1];
148 n2 = IXS[*NIXS * i + 2];
149 n3 = IXS[*NIXS * i + 3];
150 n4 = IXS[*NIXS * i + 4];
151 n5 = IXS[*NIXS * i + 5];
152 n6 = IXS[*NIXS * i + 6];
153 n7 = IXS[*NIXS * i + 7];
154 n8 = IXS[*NIXS * i + 8];
155
156 node[0] = n1;
157 node[1] = n2;
158 node[2] = n3;
159 node[3] = n4;
160 node[4] = n5;
161 node[5] = n6;
162 node[6] = n7;
163 node[7] = n8;
164
165 for(k=0;k<8;k++)
166 {
167 for(int l=k+1;l<8;l++)
168 {
169 if(node[k] == node[l]) node[l] = 0;
170 }
171 }
172
173 elem_nodes = 0;
174 for(k=0;k<8;k++)
175 {
176 if(node[k] != 0) elem_nodes = elem_nodes + 1;
177 }
178
179 if(elem_nodes_m1 != 4 && elem_nodes == 4)
180 {
181 if(IPART[*LIPART1 * (IPARTS[i] - 1) + 3] != comp_id)
182 {
183 comp_id = IPART[*LIPART1 * (IPARTS[i] - 1) + 3];
184 }
185 j = i;
186 elem_nodes_m1 = 4;
187 }
188 else if(elem_nodes_m1 != 6 && elem_nodes == 6)
189 {
190 if(IPART[*LIPART1 * (IPARTS[i] - 1) + 3] != comp_id)
191 {
192 comp_id = IPART[*LIPART1 * (IPARTS[i] - 1) + 3];
193 }
194 j = i;
195 elem_nodes_m1 = 6;
196 }
197 else if(elem_nodes_m1 != 5 && elem_nodes == 5 )
198 {
199 if(IPART[*LIPART1 * (IPARTS[i] - 1) + 3] != comp_id)
200 {
201 comp_id = IPART[*LIPART1 * (IPARTS[i] - 1) + 3];
202 }
203 j = i;
204 elem_nodes_m1 = 5;
205 }
206 else if(elem_nodes_m1 != 8 && elem_nodes == 8 )
207 {
208 if(IPART[*LIPART1 * (IPARTS[i] - 1) + 3] != comp_id)
209 {
210 comp_id = IPART[*LIPART1 * (IPARTS[i] - 1) + 3];
211 }
212 j = i;
213 elem_nodes_m1 = 8;
214 }
215 else if(i == 0)
216 {
217 comp_id = IPART[*LIPART1 * (IPARTS[i] - 1) + 3];
218 elem_nodes_m1 = elem_nodes;
219 j = i;
220 }
221 else
222 {
223 if(IPART[*LIPART1 * (IPARTS[i] - 1) + 3] != comp_id)
224 {
225 comp_id = IPART[*LIPART1 * (IPARTS[i] - 1) + 3];
226 j = i;
227 }
228 }
229
230
231 nbelems[j] = nbelems[j] + 1;
232 }
233 }
234
235 comp_id = 0;
236 cpt_elem = 0;
237 nbelemwrite = 0;
238
239
240
241
242 for(i=0;i<NUMELS8;i++)
243 {
244 if(H3D_PART[IPARTS[i] - 1] == 1)
245 {
246 elem_id = IXS[*NIXS * i + *NIXS - 1];
247 comp_id = IPART[*LIPART1 * (IPARTS[i] - 1) + 3];
248
249 n1 = IXS[*NIXS * i + 1];
250 n2 = IXS[*NIXS * i + 2];
251 n3 = IXS[*NIXS * i + 3];
252 n4 = IXS[*NIXS * i + 4];
253 n5 = IXS[*NIXS * i + 5];
254 n6 = IXS[*NIXS * i + 6];
255 n7 = IXS[*NIXS * i + 7];
256 n8 = IXS[*NIXS * i + 8];
257
258 node[0] = n1;
259 node[1] = n2;
260 node[2] = n3;
261 node[3] = n4;
262 node[4] = n5;
263 node[5] = n6;
264 node[6] = n7;
265 node[7] = n8;
266
267 for(k=0;k<8;k++)
268 {
269 for(int l=k+1;l<8;l++)
270 {
271 if(node[k] == node[l]) node[l] = 0;
272 }
273 }
274
275 for(k=0;k<8;k++) node_ok[k] = 0;
276 elem_nodes = 0;
277 for(k=0;k<8;k++)
278 {
279 if(node[k] != 0)
280 {
281 node_ok[elem_nodes] = node[k];
282 elem_nodes = elem_nodes + 1;
283 }
284 }
285
286 if( elem_nodes == 4)
287 {
288 conn4[0] = node_ok[0];
289 conn4[1] = node_ok[1];
290 conn4[2] = node_ok[2];
291 conn4[3] = node_ok[3];
292 if(nbelems[i] != 0)
293 {
294 cpt_elem = 0;
295 nbelemwrite = nbelems[i];
296 comp_id = IPART[*LIPART1 * (IPARTS[i] - 1) + 3];
297
299 H3D_ELEM_CONFIG_TETRA4, comp_id,
301 if( !rc ) throw rc;
302 }
303
304
305 cpt_elem++;
306 rc = Hyper3DElementWrite(h3d_file, elem_id, conn4);
307 if( !rc ) throw rc;
308
309 if (cpt_elem == nbelemwrite)
310 {
312 if( !rc ) throw rc;
313 }
314 }
315 else if(elem_nodes == 5)
316 {
317 conn5[0] = node_ok[0];
318 conn5[1] = node_ok[1];
319 conn5[2] = node_ok[2];
320 conn5[3] = node_ok[3];
321 conn5[4] = node_ok[4];
322 if(nbelems[i] != 0)
323 {
324 cpt_elem = 0;
325 nbelemwrite = nbelems[i];
326 comp_id = IPART[*LIPART1 * (IPARTS[i] - 1) + 3];
327
329 H3D_ELEM_CONFIG_PENTA5, comp_id,
331 if( !rc ) throw rc;
332 }
333
334
335 cpt_elem++;
336 rc = Hyper3DElementWrite(h3d_file, elem_id, conn5);
337 if( !rc ) throw rc;
338
339
340
341 if (cpt_elem == nbelemwrite)
342 {
344 if( !rc ) throw rc;
345 }
346 }
347
348 else if(elem_nodes == 6)
349 {
350 if(n1 == n2 && n3 == n4 && n1 != n3)
351 {
352 conn6[0] = n1;
353 conn6[1] = n5;
354 conn6[2] = n6;
355 conn6[3] = n4;
356 conn6[4] = n8;
357 conn6[5] = n7;
358 }
359 else if(n5 == n6 && n7 == n8 && n5 != n7)
360 {
361 conn6[0] = n1;
362 conn6[1] = n5;
363 conn6[2] = n2;
364 conn6[3] = n4;
365 conn6[4] = n7;
366 conn6[5] = n3;
367 }
368 else if(n4 == n3 && n7 == n8 && n3 != n8)
369 {
370 conn6[0] = n1;
371 conn6[1] = n2;
372 conn6[2] = n3;
373 conn6[3] = n5;
374 conn6[4] = n6;
375 conn6[5] = n7;
376 }
377 else if(n1 == n2 && n5 == n6 && n1 != n5)
378 {
379 conn6[0] = n1;
380 conn6[1] = n3;
381 conn6[2] = n4;
382 conn6[3] = n5;
383 conn6[4] = n7;
384 conn6[5] = n8;
385 }
386 else if(n7 == n6 && n8 == n5 && n7 != n8)
387 {
388 conn6[0] = n1;
389 conn6[1] = n4;
390 conn6[2] = n5;
391 conn6[3] = n2;
392 conn6[4] = n3;
393 conn6[5] = n6;
394 }
395 else if(n4 == n1 && n8 == n5 && n4 != n8)
396 {
397 conn6[0] = n1;
398 conn6[1] = n2;
399 conn6[2] = n3;
400 conn6[3] = n5;
401 conn6[4] = n6;
402 conn6[5] = n7;
403 }
404 else if(n1 == n4 && n2 == n3 && n1 != n2)
405 {
406 conn6[0] = n1;
407 conn6[1] = n8;
408 conn6[2] = n5;
409 conn6[3] = n2;
410 conn6[4] = n7;
411 conn6[5] = n6;
412 }
413 else if(n2 == n3 && n6 == n7 && n2 != n6)
414 {
415 conn6[0] = n1;
416 conn6[1] = n3;
417 conn6[2] = n4;
418 conn6[3] = n5;
419 conn6[4] = n7;
420 conn6[5] = n8;
421 }
422 else
423 {
424 conn6[0] = node_ok[0];
425 conn6[1] = node_ok[1];
426 conn6[2] = node_ok[2];
427 conn6[3] = node_ok[3];
428 conn6[4] = node_ok[4];
429 conn6[5] = node_ok[5];
430 }
431 if(nbelems[i] != 0)
432 {
433 cpt_elem = 0;
434 nbelemwrite = nbelems[i];
435 comp_id = IPART[*LIPART1 * (IPARTS[i] - 1) + 3];
436
438 H3D_ELEM_CONFIG_PENTA6, comp_id,
440 if( !rc ) throw rc;
441 }
442
443
444 cpt_elem++;
445 rc = Hyper3DElementWrite(h3d_file, elem_id, conn6);
446 if( !rc ) throw rc;
447
448
449
450 if (cpt_elem == nbelemwrite)
451 {
453 if( !rc ) throw rc;
454 }
455 }
456 else
457 {
458 conn8[0] = n1;
459 conn8[1] = n2;
460 conn8[2] = n3;
461 conn8[3] = n4;
462 conn8[4] = n5;
463 conn8[5] = n6;
464 conn8[6] = n7;
465 conn8[7] = n8;
466
467 if(nbelems[i] != 0)
468 {
469 cpt_elem = 0;
470 nbelemwrite = nbelems[i];
471 comp_id = IPART[*LIPART1 * (IPARTS[i] - 1) + 3];
472
474 H3D_ELEM_CONFIG_HEX8, comp_id,
476 if( !rc ) throw rc;
477 }
478
479 cpt_elem++;
480 rc = Hyper3DElementWrite(h3d_file, elem_id, conn8);
481 if( !rc ) throw rc;
482
483
484
485 if (cpt_elem == nbelemwrite)
486 {
488 if( !rc ) throw rc;
489 }
490 }
491 }
492 }
493
494
495// TETRA10
496
497 for(i=0;i<*NUMELS10;i++) nbelems[i] = 0;
498
499 comp_id = 0;
500
501 for(i=0;i<*NUMELS10;i++)
502 {
503 if(H3D_PART[IPARTS10[i] - 1] == 1)
504 {
505 elem_nodes = 10;
506
507 if(IPART[*LIPART1 * (IPARTS10[i] - 1) + 3] != comp_id)
508 {
509 comp_id = IPART[*LIPART1 * (IPARTS10[i] - 1) + 3];
510 j = i;
511 }
512 nbelems[j] = nbelems[j] + 1;
513 }
514 }
515
516 comp_id = 0;
517 cpt_elem = 0;
518 nbelemwrite = 0;
519
520 for(i=0;i<*NUMELS10;i++)
521 {
522 if(H3D_PART[IPARTS10[i] - 1] == 1)
523 {
524 elem_id = IXS10[NIXS10 * i + NIXS10 - 1];
525 comp_id = IPART[*LIPART1 * (IPARTS10[i] - 1) + 3];
526
527 conn10[0] = IXS10[NIXS10 * i ];
528 conn10[1] = IXS10[NIXS10 * i + 1];
529 conn10[2] = IXS10[NIXS10 * i + 2];
530 conn10[3] = IXS10[NIXS10 * i + 3];
531 conn10[4] = IXS10[NIXS10 * i + 4];
532 conn10[5] = IXS10[NIXS10 * i + 5];
533 conn10[6] = IXS10[NIXS10 * i + 6];
534 conn10[7] = IXS10[NIXS10 * i + 7];
535 conn10[8] = IXS10[NIXS10 * i + 8];
536 conn10[9] = IXS10[NIXS10 * i + 9];
537
538
539
540 if(nbelems[i] != 0)
541 {
542 cpt_elem = 0;
543 nbelemwrite = nbelems[i];
544 comp_id = IPART[*LIPART1 * (IPARTS10[i] - 1) + 3];
545
547 H3D_ELEM_CONFIG_TETRA10, comp_id,
549 if( !rc ) throw rc;
550 }
551
552
553 cpt_elem++;
554 rc = Hyper3DElementWrite(h3d_file, elem_id, conn10);
555 if( !rc ) throw rc;
556
557
558 if (cpt_elem == nbelemwrite)
559 {
561 if( !rc ) throw rc;
562 }
563
564 }
565 }
566
567// SHELL16
568
569
570 for(i=0;i<*NUMELS16;i++) nbelems[i] = 0;
571
572 comp_id = 0;
573
574 for(i=0;i<*NUMELS16;i++)
575 {
576 if(H3D_PART[IPARTS16[i] - 1] == 1)
577 {
578 elem_nodes = 10;
579
580 if(IPART[*LIPART1 * (IPARTS16[i] - 1) + 3] != comp_id)
581 {
582 comp_id = IPART[*LIPART1 * (IPARTS16[i] - 1) + 3];
583 j = i;
584 }
585 nbelems[j] = nbelems[j] + 1;
586 }
587 }
588
589 comp_id = 0;
590 cpt_elem = 0;
591 nbelemwrite = 0;
592
593 for(i=0;i<*NUMELS16;i++)
594 {
595 if(H3D_PART[IPARTS16[i] - 1] == 1)
596 {
597 elem_id = IXS16[NIXS16 * i + NIXS16 - 1];
598 comp_id = IPART[*LIPART1 * (IPARTS16[i] - 1) + 3];
599
600 conn8[0] = IXS16[NIXS16 * i ];
601 conn8[1] = IXS16[NIXS16 * i + 1];
602 conn8[2] = IXS16[NIXS16 * i + 2];
603 conn8[3] = IXS16[NIXS16 * i + 3];
604 conn8[4] = IXS16[NIXS16 * i + 4];
605 conn8[5] = IXS16[NIXS16 * i + 5];
606 conn8[6] = IXS16[NIXS16 * i + 6];
607 conn8[7] = IXS16[NIXS16 * i + 7];
608
609
610
611
612
613
614 if(nbelems[i] != 0)
615 {
616 cpt_elem = 0;
617 nbelemwrite = nbelems[i];
618 comp_id = IPART[*LIPART1 * (IPARTS16[i] - 1) + 3];
619
621 H3D_ELEM_CONFIG_HEX8, comp_id,
623 if( !rc ) throw rc;
624 }
625
626
627 cpt_elem++;
628 rc = Hyper3DElementWrite(h3d_file, elem_id, conn8);
629 if( !rc ) throw rc;
630
631
632
633 if (cpt_elem == nbelemwrite)
634 {
636 if( !rc ) throw rc;
637 }
638
639 }
640 }
641
642
643// BRICK20
644
645 for(i=0;i<*NUMELS20;i++) nbelems[i] = 0;
646
647 comp_id = 0;
648
649 for(i=0;i<*NUMELS20;i++)
650 {
651 if(H3D_PART[IPARTS20[i] - 1] == 1)
652 {
653 elem_nodes = 10;
654
655 if(IPART[*LIPART1 * (IPARTS20[i] - 1) + 3] != comp_id)
656 {
657 comp_id = IPART[*LIPART1 * (IPARTS20[i] - 1) + 3];
658 j = i;
659 }
660 nbelems[j] = nbelems[j] + 1;
661 }
662 }
663
664 comp_id = 0;
665 cpt_elem = 0;
666 nbelemwrite = 0;
667
668 for(i=0;i<*NUMELS20;i++)
669 {
670 if(H3D_PART[IPARTS20[i] - 1] == 1)
671 {
672 elem_id = IXS20[NIXS20 * i + NIXS20 - 1];
673 comp_id = IPART[*LIPART1 * (IPARTS20[i] - 1) + 3];
674
675 conn20[0] = IXS20[NIXS20 * i ];
676 conn20[1] = IXS20[NIXS20 * i + 1];
677 conn20[2] = IXS20[NIXS20 * i + 2];
678 conn20[3] = IXS20[NIXS20 * i + 3];
679 conn20[4] = IXS20[NIXS20 * i + 4];
680 conn20[5] = IXS20[NIXS20 * i + 5];
681 conn20[6] = IXS20[NIXS20 * i + 6];
682 conn20[7] = IXS20[NIXS20 * i + 7];
683 conn20[8] = IXS20[NIXS20 * i + 8];
684 conn20[9] = IXS20[NIXS20 * i + 9];
685 conn20[10] = IXS20[NIXS20 * i + 10];
686 conn20[11] = IXS20[NIXS20 * i + 11];
687 conn20[12] = IXS20[NIXS20 * i + 12];
688 conn20[13] = IXS20[NIXS20 * i + 13];
689 conn20[14] = IXS20[NIXS20 * i + 14];
690 conn20[15] = IXS20[NIXS20 * i + 15];
691 conn20[16] = IXS20[NIXS20 * i + 16];
692 conn20[17] = IXS20[NIXS20 * i + 17];
693 conn20[18] = IXS20[NIXS20 * i + 18];
694 conn20[19] = IXS20[NIXS20 * i + 19];
695
696
697 if(nbelems[i] != 0)
698 {
699 cpt_elem = 0;
700 nbelemwrite = nbelems[i];
701 comp_id = IPART[*LIPART1 * (IPARTS20[i] - 1) + 3];
702
704 H3D_ELEM_CONFIG_HEX20, comp_id,
706 if( !rc ) throw rc;
707 }
708
709
710 cpt_elem++;
711 rc = Hyper3DElementWrite(h3d_file, elem_id, conn20);
712 if( !rc ) throw rc;
713
714
715
716 if (cpt_elem == nbelemwrite)
717 {
719 if( !rc ) throw rc;
720 }
721
722 }
723 }
724
725
726
727 } // end of try
728
729 catch(...) {
731 }
732 delete [] nbelems;
733
734//
735}
H3D_ID solid4n_poolname_id
H3D_ID solid16n_poolname_id
H3DFileInfo * h3d_file
H3D_ID node_poolname_id
bool rc
H3D_ID solid5n_poolname_id
H3D_ID comp_id
H3D_ID solid6n_poolname_id
H3D_ID solid_poolname_id
H3D_ID solid8n_poolname_id
H3D_ID solid20n_poolname_id
H3D_ID solid10n_poolname_id
bool Hyper3DAddString(H3DFileInfo *h3d_file, const char *const string, H3D_ID *const str_id)
Definition h3d_dl.c:955
bool Hyper3DExportClearError(H3DFileInfo *h3d_file)
Definition h3d_dl.c:939
bool Hyper3DElementWrite(H3DFileInfo *h3d_file, H3D_ID id, H3D_ID *connectivity)
Definition h3d_dl.c:1147
bool Hyper3DElementEnd(H3DFileInfo *h3d_file)
Definition h3d_dl.c:1154
bool Hyper3DElementBegin(H3DFileInfo *h3d_file, unsigned int count, H3D_ID poolname_id, H3D_ElementConfig config, H3D_ID parent_id, H3D_ID parent_poolname_id, H3D_ID node_poolname_id)
Definition h3d_dl.c:1137

◆ c_h3d_create_solid8n__()

void c_h3d_create_solid8n__ ( int * ITAB,
int * NUMNOD,
int * IXS,
int * NIXS,
int * NUMELS,
int * IPARTS,
int * IPART,
int * LIPART1,
int * H3D_PART,
int * NUMELS10,
int * IXS10,
int * IPARTS10,
int * NUMELS16,
int * IXS16,
int * IPARTS16,
int * NUMELS20,
int * IXS20,
int * IPARTS20 )

Definition at line 744 of file c_h3d_create_solid8n.cpp.

747{c_h3d_create_solid8n_ (ITAB,NUMNOD,IXS,NIXS,NUMELS,IPARTS,IPART,LIPART1,H3D_PART,
748 NUMELS10,IXS10,IPARTS10,NUMELS16,IXS16,IPARTS16,NUMELS20,IXS20,
749 IPARTS20);}