00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 #include <med.h>
00026 #define MESGERR 1
00027 #include "med_utils.h"
00028 #include <string.h>
00029 
00030 #ifdef DEF_LECT_ECR
00031 #define MODE_ACCES MED_LECTURE_ECRITURE
00032 #elif DEF_LECT_AJOUT
00033 #define MODE_ACCES MED_LECTURE_AJOUT
00034 #else
00035 #define MODE_ACCES MED_CREATION
00036 #endif
00037 
00038 int main (int argc, char **argv)
00039 
00040 
00041 {
00042   med_idt fid;
00043   char maa[MED_TAILLE_NOM+1] = "maillage_test19";
00044   char desc[MED_TAILLE_DESC+1]="un maillage pour test19.med";
00045   med_int mdim=2;
00046   
00047 
00048 
00049 
00050 
00051 
00052 
00053 
00054 
00055 
00056 
00057 
00058 
00059 
00060 
00061   med_int ngroup = 3;
00062   med_int nent = 6;
00063   char nom_groupes[MED_TAILLE_LNOM*3+1];
00064   
00065   med_int entites[7] = { 1,2, 3,4,6, 1,4};
00066   med_int index[4] =   { 1,   3,     6,   8};
00067   int i;
00068   char nom_famille0[MED_TAILLE_NOM+1] = "FAMILLE0";
00069   
00070   med_int ngeo = 3;
00071   med_geometrie_element geo[3] = {MED_SEG2,MED_TRIA3,MED_TETRA4};
00072   
00073   med_int index_geo[4] = {1,4,6,7};
00074 
00075   
00076   if ((fid = MEDouvrir("test19.med",MODE_ACCES)) < 0) {
00077     MESSAGE("Erreur a la creation du fichier test19.med");
00078     return -1;
00079   }
00080   printf("Creation du fichier test19.med \n");
00081 
00082   
00083   if (MEDmaaCr(fid,maa,mdim,MED_NON_STRUCTURE,desc) < 0) {
00084     MESSAGE("Erreur a la creation du maillage");
00085     return -1;
00086   }
00087   printf("Creation du maillage \n");
00088 
00089   
00090   
00091   strcpy(nom_groupes,"GROUPE 1");
00092   for (i=8;i<MED_TAILLE_LNOM;i++)
00093     nom_groupes[i] = ' ';
00094   nom_groupes[MED_TAILLE_LNOM] = '\0';
00095   strcat(nom_groupes,"GROUPE 2");
00096   for (i=8;i<MED_TAILLE_LNOM;i++)
00097     nom_groupes[MED_TAILLE_LNOM+i] = ' ';
00098   nom_groupes[2*MED_TAILLE_LNOM] = '\0';
00099   strcat(nom_groupes,"GROUPE 3");
00100   for (i=8;i<MED_TAILLE_LNOM;i++)
00101     nom_groupes[2*MED_TAILLE_LNOM+i] = ' ';
00102   nom_groupes[3*MED_TAILLE_LNOM] = '\0';
00103 
00104   
00105   if (MEDfamCr(fid,maa,nom_famille0,0,NULL,NULL,NULL,0,NULL,0) < 0) {
00106     MESSAGE("Erreur a la creation de la famille 0");
00107     return -1;
00108   }
00109   printf("Creation de la famille 0 \n");
00110 
00111   
00112 
00113 
00114   if (MEDgro2famCr(fid,maa,nom_groupes,index,ngroup,entites,nent,
00115                    MED_NOEUD,NULL,NULL,0) < 0) {
00116     MESSAGE("Erreur a la creation des familles de noeuds ");
00117     return -1;
00118   }
00119   printf("On constuit les familles de noeuds et on les stocke dans test19.med \n");
00120 
00121   
00122 
00123 
00124   if (MEDgro2famCr(fid,maa,nom_groupes,index,ngroup,entites,nent,
00125                    MED_MAILLE,geo,index_geo,ngeo) < 0) {
00126     MESSAGE("Erreur a la creation des familles d'elements ");
00127     return -1;
00128   }
00129   printf("On constuit les familles d'elements et on les stocke dans test19.med \n");  
00130 
00131   
00132   if (MEDfermer(fid) <0) {
00133     MESSAGE("Erreur a la fermeture du fichier");
00134     return -1;
00135   }
00136   printf("Fermeture du fichier \n");
00137   
00138   return 0;
00139 }