69 int *profnvertices = NULL;
70 doubletype **pprofx = NULL;
71 doubletype **pprofy = NULL;
81 if ((fid=fopen(domainname,
"r"))==NULL){
82 _error_(
"could not find file \"" << domainname<<
"\". Make sure that the file and path provided exist.");
89 if(fscanf(fid,
"%255s %255s\n",chardummy,chardummy)!=2)
_error_(
"Could not read " << domainname);
91 if(fscanf(fid,
"%255s %255s\n",chardummy,chardummy)!=2)
_error_(
"Could not read " << domainname<<
"(Expecting ## Icon:0 and read "<<chardummy<<
")");
93 if(fscanf(fid,
"%255s %255s %255s %255s\n",chardummy,chardummy,chardummy,chardummy)!=4)
_error_(
"Could not read " << domainname);
94 if(fscanf(fid,
"%20i %255s\n",&n,chardummy)!=2)
_error_(
"Could not read number of points in "<<domainname);
96 if(fscanf(fid,
"%255s %255s %255s %255s %255s\n",chardummy,chardummy,chardummy,chardummy,chardummy)!=5)
_error_(
"Could not read " << domainname);
98 if(fscanf(fid,
"%30lf %30lf\n",&ddummy,&ddummy)!=2){
99 _error_(
"Could not read coordinate of vertex "<< i <<
" of "<<domainname);
108 profnvertices = xNew<int>(nprof);
109 pprofx = xNew<doubletype*>(nprof);
110 pprofy = xNew<doubletype*>(nprof);
111 for (i=0;i<nprof;i++){
115 closed=xNew<bool>(nprof);
118 fseek(fid,0,SEEK_SET);
121 for(counter=0;counter<nprof;counter++){
125 if(fscanf(fid,
"%255s %255s\n",chardummy,chardummy)!=2)
_error_(
"Could not read " << domainname);
127 if(fscanf(fid,
"%255s %255s\n",chardummy,chardummy)!=2)
_error_(
"Could not read " << domainname);
129 if(fscanf(fid,
"%255s %255s %255s %255s\n",chardummy,chardummy,chardummy,chardummy)!=4)
_error_(
"Could not read " << domainname);
132 if(fscanf(fid,
"%20i %255s\n",&n,chardummy)!=2)
_error_(
"Could not read number of points in "<<domainname);
136 if(fscanf(fid,
"%255s %255s %255s %255s %255s\n",chardummy,chardummy,chardummy,chardummy,chardummy)!=5)
_error_(
"Could not read " << domainname);
139 x=xNew<doubletype>(n);
140 y=xNew<doubletype>(n);
144 if(fscanf(fid,
"%30lf %30lf\n",&x[i],&y[i])!=2){
145 _error_(
"Could not read coordinate of vertex "<<i<<
" of "<<domainname);
151 if((x[0]==x[n-1]) && (y[0]==y[n-1])){
156 profnvertices[counter]=n;
167 *pprofnvertices=profnvertices;
170 if(pclosed) *pclosed=closed;
171 else xDelete<bool>(closed);