Skip to content
Snippets Groups Projects
Commit bc3a6a69 authored by Christophe Geuzaine's avatar Christophe Geuzaine
Browse files

Bug dans le printmsh (oubli de certains physical trucs)

parent e6b59c6d
No related branches found
No related tags found
No related merge requests found
/* $Id: Print_Mesh.cpp,v 1.8 2000-11-26 15:43:47 geuzaine Exp $ */ /* $Id: Print_Mesh.cpp,v 1.9 2000-11-30 10:14:09 geuzaine Exp $ */
#include "Gmsh.h" #include "Gmsh.h"
#include "Const.h" #include "Const.h"
...@@ -218,34 +218,21 @@ void add_msh_elements (Mesh * M){ ...@@ -218,34 +218,21 @@ void add_msh_elements (Mesh * M){
for (i = 0; i < List_Nbr (M->PhysicalGroups); i++){ for (i = 0; i < List_Nbr (M->PhysicalGroups); i++){
List_Read (M->PhysicalGroups, i, &p); List_Read (M->PhysicalGroups, i, &p);
MSH_PHYSICAL_NUM = p->Num; MSH_PHYSICAL_NUM = p->Num;
MSH_VOL_NUM = 0;
switch (p->Typ){ switch (p->Typ){
case MSH_PHYSICAL_VOLUME: case MSH_PHYSICAL_POINT:
for (k = 0; k < List_Nbr (ListVolumes); k++){
List_Read (ListVolumes, k, &pV);
for (j = 0; j < List_Nbr (p->Entities); j++){
List_Read (p->Entities, j, &Num);
MSH_VOL_NUM = abs (Num);
MSH_PHYSICAL_ORI = sign (Num);
Tree_Action (pV->Simplexes, add_msh_simplex);
Tree_Action (pV->Hexahedra, add_msh_hexahedron);
Tree_Action (pV->Prisms, add_msh_prism);
}
}
break;
case MSH_PHYSICAL_SURFACE:
for (j = 0; j < List_Nbr (p->Entities); j++){ for (j = 0; j < List_Nbr (p->Entities); j++){
ps = &s; pv = &v;
List_Read (p->Entities, j, &Num); List_Read (p->Entities, j, &Num);
ps->Num = abs (Num); pv->Num = abs (Num);
MSH_PHYSICAL_ORI = sign (Num); MSH_PHYSICAL_ORI = sign (Num);
if (Tree_Query (M->Surfaces, &ps)) if (Tree_Query (M->Vertices, &pv))
Tree_Action (ps->Simplexes, add_msh_simplex); add_msh_point (pv);
} }
break; break;
case MSH_PHYSICAL_LINE: case MSH_PHYSICAL_LINE:
for (j = 0; j < List_Nbr (p->Entities); j++){ for (j = 0; j < List_Nbr (p->Entities); j++){
pc = &c; pc = &c;
...@@ -256,20 +243,40 @@ void add_msh_elements (Mesh * M){ ...@@ -256,20 +243,40 @@ void add_msh_elements (Mesh * M){
Tree_Action (pc->Simplexes, add_msh_simplex); Tree_Action (pc->Simplexes, add_msh_simplex);
} }
break; break;
case MSH_PHYSICAL_POINT: case MSH_PHYSICAL_SURFACE:
for (j = 0; j < List_Nbr (p->Entities); j++){ for (j = 0; j < List_Nbr (p->Entities); j++){
pv = &v; ps = &s;
List_Read (p->Entities, j, &Num); List_Read (p->Entities, j, &Num);
pv->Num = abs (Num); ps->Num = abs (Num);
MSH_PHYSICAL_ORI = sign (Num); MSH_PHYSICAL_ORI = sign (Num);
if (Tree_Query (M->Vertices, &pv)) if (Tree_Query (M->Surfaces, &ps)){
add_msh_point (pv); Tree_Action (ps->Simplexes, add_msh_simplex);
}
}
break;
case MSH_PHYSICAL_VOLUME:
for (k = 0; k < List_Nbr (ListVolumes); k++){
List_Read (ListVolumes, k, &pV);
for (j = 0; j < List_Nbr (p->Entities); j++){
List_Read (p->Entities, j, &Num);
MSH_VOL_NUM = abs (Num);
MSH_PHYSICAL_ORI = sign (Num);
Tree_Action (pV->Simplexes, add_msh_simplex);
Tree_Action (pV->Hexahedra, add_msh_hexahedron);
Tree_Action (pV->Prisms, add_msh_prism);
}
} }
break; break;
default :
Msg(ERROR, "Unknown Type of Physical Group");
break;
} }
} }
} }
void process_msh_elements (Mesh * M){ void process_msh_elements (Mesh * M){
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment