first update of those files to administrate the integration of Netgen in the

SMESH Engine.
This commit is contained in:
nadir 2003-10-16 13:24:21 +00:00
parent bf3481306b
commit 97f7fad1d3
12 changed files with 119 additions and 11 deletions

View File

@ -1,3 +1,16 @@
2003-10-16 15:04 Nadir Bouhamou <nadir.bouhamou@cea.fr>
* adm_local/unix/config_files/: check_Netgen.m4
* resources/: mesh_algo_tetra.png, mesh_tree_algo_tetra.png
* src/: NETGEN
* src/NETGEN/: Makefile.in
* src/SMESH/: SMESH_Tetra_3D.cxx, SMESH_Tetra_3D.hxx
* src/SMESH_I/: SMESH_Tetra_3D_i.cxx, SMESH_Tetra_3D_i.hxx
* src/SMESH_SWIG/: SMESH_box2_tetra.py, SMESH_box_tetra.py,
SMESH_mechanic_tetra.py
first version of those files needed for the Netgen integration in the
SMESH Engine.
2003-09-08 17:04 Jerome Robert <jerome.robert@eads.net>
* src/SMDS/: SMDS_Mesh.cxx, SMDS_VolumeOfNodes.cxx,

View File

@ -1,5 +1,6 @@
This is the version 1.2.2 of SMESH
This is the version 1.2.2 of SMESH in the branch nadir_1_2_2 dedicated to the
Netgen integration in the SMESH Engine
Compatible with :
- KERNEL 1.2.1
- GEOM 1.2.1
- MED 1.2.1
- MED 1.2.3

View File

@ -23,6 +23,7 @@ mesh_algo_hexa.png \
mesh_algo_mefisto.png \
mesh_algo_quad.png \
mesh_algo_regular.png \
mesh_algo_tetra.png \
mesh_angle.png \
mesh_area.png \
mesh_aspect.png \
@ -63,6 +64,7 @@ mesh_tree_algo_mefisto.png \
mesh_tree_algo.png \
mesh_tree_algo_quad.png \
mesh_tree_algo_regular.png \
mesh_tree_algo_tetra.png \
mesh_tree_hypo_area.png \
mesh_tree_hypo_length.png \
mesh_tree_hypo.png \

View File

@ -245,5 +245,9 @@ ac_cxx_typename.m4 check_pthreads.m4 check_cas.m4 \
ac_cc_warnings.m4 check_qt.m4 check_med2.m4 \
check_swig.m4
#ifeq (@WITHNETGEN@,yes)
# ACLOCAL_SRC += check_Netgen.m4
#endif
$(top_srcdir)/aclocal.m4: $(ACLOCAL_SRC:%=@KERNEL_ROOT_DIR@/salome_adm/unix/config_files/%)
cd $(top_srcdir) ; aclocal --acdir=adm_local/unix/config_files -I @KERNEL_ROOT_DIR@/salome_adm/unix/config_files

View File

@ -273,6 +273,14 @@ echo
CHECK_MED
echo
echo ---------------------------------------------
echo Testing Netgen
echo ---------------------------------------------
echo
CHECK_NETGEN
echo
echo ---------------------------------------------
echo Summary
@ -280,7 +288,7 @@ echo ---------------------------------------------
echo
echo Configure
variables="cc_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok med2_ok omniORB_ok occ_ok doxygen_ok graphviz_ok Kernel_ok Geom_ok Med_ok"
variables="cc_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok med2_ok omniORB_ok occ_ok doxygen_ok graphviz_ok Kernel_ok Geom_ok Med_ok Netgen_ok"
for var in $variables
do

View File

@ -78,6 +78,10 @@ module SMESH
interface SMESH_Hexa_3D : SMESH_3D_Algo
{
};
interface SMESH_Tetra_3D : SMESH_3D_Algo
{
};
};
#endif

View File

@ -40,12 +40,13 @@
<popup-item item-id="5030" pos-id="" label-id="Average length" icon-id="mesh_hypo_length.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5031" pos-id="" label-id="Nb. Segments" icon-id="mesh_hypo_segment.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5032" pos-id="" label-id="Max. Triangle Area" icon-id="mesh_hypo_area.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5033" pos-id="" label-id="Max. Hexahedron Volume" icon-id="mesh_hypo_volume.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5033" pos-id="" label-id="Max. Hexahedron or Tetrahedron Volume" icon-id="mesh_hypo_volume.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<separator pos-id=""/>
<popup-item item-id="5000" pos-id="" label-id="Wire discretisation" icon-id="mesh_algo_regular.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5010" pos-id="" label-id="Triangle (Mefisto)" icon-id="mesh_algo_mefisto.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5011" pos-id="" label-id="Quadrangle (Mapping)" icon-id="mesh_algo_quad.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5020" pos-id="" label-id="Hexaedron (i,j,k)" icon-id="mesh_algo_hexa.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5020" pos-id="" label-id="Hexahedron (i,j,k)" icon-id="mesh_algo_hexa.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5021" pos-id="" label-id="Tetrahedron (Netgen)" icon-id="mesh_algo_tetra.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
</menu-item>
<!-- ************************** Mesh (menubar) ************************************ -->
@ -196,12 +197,13 @@
<toolbutton-item item-id="5030" label-id="Average length" icon-id="mesh_hypo_length.png" tooltip-id="Avreage length Hypothesis" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5031" label-id="Segments" icon-id="mesh_hypo_segment.png" tooltip-id="Nb. Segments Hypothesis" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5032" label-id="Max. Triangle Area" icon-id="mesh_hypo_area.png" tooltip-id="Max. Triangle Area Hypothesis" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5033" label-id="Max. Hexaedron Volume" icon-id="mesh_hypo_volume.png" tooltip-id="Max. Hexaedron Volume Hypothesis" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5033" label-id="Max. Hexahedron or Tetrahedron Volume" icon-id="mesh_hypo_volume.png" tooltip-id="Max. Hexahedron or Tetrahedron Volume Hypothesis" accel-id="" toggle-id="" execute-action=""/>
<separatorTB/>
<toolbutton-item item-id="5000" label-id="Wire Discretisation" icon-id="mesh_algo_regular.png" tooltip-id="Wire Discratisation Algorithm" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5010" label-id="Triangle (Mefisto)" icon-id="mesh_algo_mefisto.png" tooltip-id="Triangle (Mefisto) Algorithm" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5011" label-id="Quadrangle (Mapping)" icon-id="mesh_algo_quad.png" tooltip-id="Quadrangle (Mapping) Algorithm" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5020" label-id="Hexaedron (i,j,k)" icon-id="mesh_algo_hexa.png" tooltip-id="Hexaedron (i,j,k) Algorithm" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5020" label-id="Hexahedron (i,j,k)" icon-id="mesh_algo_hexa.png" tooltip-id="Hexahedron (i,j,k) Algorithm" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5021" label-id="Tetrahedron (Netgen)" icon-id="mesh_algo_hexa.png" tooltip-id="Tetrahedron (Netgen) Delaunay Algorithm" accel-id="" toggle-id="" execute-action=""/>
</toolbar>
<toolbar label-id="Controls toolbar">

View File

@ -40,12 +40,13 @@
<popup-item item-id="5030" pos-id="" label-id="Average length" icon-id="mesh_hypo_length.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5031" pos-id="" label-id="Nb. Segments" icon-id="mesh_hypo_segment.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5032" pos-id="" label-id="Max. Triangle Area" icon-id="mesh_hypo_area.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5033" pos-id="" label-id="Max. Hexahedron Volume" icon-id="mesh_hypo_volume.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5033" pos-id="" label-id="Max. Hexahedron or Tetrahedron Volume" icon-id="mesh_hypo_volume.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<separator pos-id=""/>
<popup-item item-id="5000" pos-id="" label-id="Wire discretisation" icon-id="mesh_algo_regular.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5010" pos-id="" label-id="Triangle (Mefisto)" icon-id="mesh_algo_mefisto.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5011" pos-id="" label-id="Quadrangle (Mapping)" icon-id="mesh_algo_quad.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5020" pos-id="" label-id="Hexaedron (i,j,k)" icon-id="mesh_algo_hexa.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5020" pos-id="" label-id="Hexahedron (i,j,k)" icon-id="mesh_algo_hexa.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
<popup-item item-id="5021" pos-id="" label-id="Tetrahedron (Netgen)" icon-id="mesh_algo_tetra.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
</menu-item>
<!-- ************************** Mesh (menubar) ************************************ -->
@ -196,12 +197,13 @@
<toolbutton-item item-id="5030" label-id="Average length" icon-id="mesh_hypo_length.png" tooltip-id="Avreage length Hypothesis" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5031" label-id="Segments" icon-id="mesh_hypo_segment.png" tooltip-id="Nb. Segments Hypothesis" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5032" label-id="Max. Triangle Area" icon-id="mesh_hypo_area.png" tooltip-id="Max. Triangle Area Hypothesis" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5033" label-id="Max. Hexaedron Volume" icon-id="mesh_hypo_volume.png" tooltip-id="Max. Hexaedron Volume Hypothesis" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5033" label-id="Max. Hexahedron or Tetrahedron Volume" icon-id="mesh_hypo_volume.png" tooltip-id="Max. Hexahedron or Tetrahedron Volume Hypothesis" accel-id="" toggle-id="" execute-action=""/>
<separatorTB/>
<toolbutton-item item-id="5000" label-id="Wire Discretisation" icon-id="mesh_algo_regular.png" tooltip-id="Wire Discratisation Algorithm" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5010" label-id="Triangle (Mefisto)" icon-id="mesh_algo_mefisto.png" tooltip-id="Triangle (Mefisto) Algorithm" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5011" label-id="Quadrangle (Mapping)" icon-id="mesh_algo_quad.png" tooltip-id="Quadrangle (Mapping) Algorithm" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5020" label-id="Hexaedron (i,j,k)" icon-id="mesh_algo_hexa.png" tooltip-id="Hexaedron (i,j,k) Algorithm" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5020" label-id="Hexahedron (i,j,k)" icon-id="mesh_algo_hexa.png" tooltip-id="Hexahedron (i,j,k) Algorithm" accel-id="" toggle-id="" execute-action=""/>
<toolbutton-item item-id="5021" label-id="Tetrahedron (Netgen)" icon-id="mesh_algo_hexa.png" tooltip-id="Tetrahedron (Netgen) Delaunay Algorithm" accel-id="" toggle-id="" execute-action=""/>
</toolbar>
<toolbar label-id="Controls toolbar">

View File

@ -456,6 +456,36 @@ void DriverMED_R_SMDS_Mesh::Read()
}
break;
}
case MED_TETRA4:
{
if (inuele)
{
for (j = 0; j < nmailles[i]; j++)
{
elem_id = *(numele + j);
ok = myMesh->AddVolumeWithID(*(connectivite +
j * (taille)),
*(connectivite + j * (taille) + 1),
*(connectivite + j * (taille) + 2),
*(connectivite + j * (taille) + 3), elem_id);
//fprintf(Out,"%d %d %d %d\n",elem_id,*(connectivite+j*(taille-nsup)),*(connectivite+j*(taille-nsup)+1),*(connectivite+j*(taille-nsup)+2),*(connectivite+j*(taille-nsup)+3));
}
}
else
{
for (j = 0; j < nmailles[i]; j++)
{
cmpt++;
ok = myMesh->AddVolumeWithID(*(connectivite +
j * (taille)),
*(connectivite + j * (taille) + 1),
*(connectivite + j * (taille) + 2),
*(connectivite + j * (taille) + 3), cmpt);
//fprintf(Out,"%d %d %d %d\n",j,*(connectivite+j*(taille)),*(connectivite+j*(taille)+1),*(connectivite+j*(taille)+2),*(connectivite+j*(taille)+3));
}
}
break;
}
case MED_HEXA8:
{
if (inuele)

View File

@ -478,6 +478,37 @@ void DriverMED_R_SMESHDS_Mesh::ReadMySelf()
}
break;
}
case MED_TETRA4:
{
if (inuele)
{
for (j = 0; j < nmailles[i]; j++)
{
elem_id = *(numele + j);
ok = mySMESHDSMesh->AddVolumeWithID(*(connectivite +
j * (taille - nsup)),
*(connectivite + j * (taille - nsup) + 1),
*(connectivite + j * (taille - nsup) + 2),
*(connectivite + j * (taille - nsup) + 3),
elem_id);
//fprintf(Out,"%d %d %d %d\n",elem_id,*(connectivite+j*(taille-nsup)),*(connectivite+j*(taille-nsup)+1),*(connectivite+j*(taille-nsup)+2),*(connectivite+j*(taille-nsup)+3));
}
}
else
{
for (j = 0; j < nmailles[i]; j++)
{
cmpt++;
ok = mySMESHDSMesh->AddVolumeWithID(*(connectivite +
j * (taille)),
*(connectivite + j * (taille) + 1),
*(connectivite + j * (taille) + 2),
*(connectivite + j * (taille) + 3), cmpt);
//fprintf(Out,"%d %d %d %d\n",j,*(connectivite+j*(taille)),*(connectivite+j*(taille)+1),*(connectivite+j*(taille)+2),*(connectivite+j*(taille)+3));
}
}
break;
}
case MED_HEXA8:
{
if (inuele)

View File

@ -266,6 +266,12 @@ void DriverMED_W_SMDS_Mesh::Write()
nmailles[9]++;
break;
}
case 4 :
{
elem_Id[7].push_back(elem->GetID());
nmailles[7]++;
break;
}
}
}

View File

@ -35,5 +35,10 @@ SUBDIRS = OBJECT SMDS SMESHDS Driver DriverMED DriverDAT DriverUNV MEFISTO2 \
SMESH SMESH_I SMESHFiltersSelection SMESHGUI \
SMESH_SWIG
ifeq (@WITHNETGEN@,yes)
SUBDIRS = OBJECT SMDS SMESHDS Driver DriverMED DriverDAT DriverUNV MEFISTO2 \
NETGEN SMESH SMESH_I SMESHFiltersSelection SMESHGUI \
SMESH_SWIG
endif
@MODULE@