Can anybody tell me what's wrong in this code?
It fails when executing the line "mdlElement_extractRange(&vector,
&elDP->el);". The error is "Cancelation of MDL in line......."
What this function is trying to do is to obtain the yMax (the maximum
value "y" of a extern file).
Private double calculateYMax
(
FILE *f
)
{
Scanlist scanList;
ULong elemAddr[50], filePos;
int fileNum, i, j, numAddr, scanWords, currFile, numPoints;
int init_status, scan_status;
DPoint3d origin, end;
MSElement el;
double yMax = 0.0;
Dvector3d vector;
/*-----------------------------------------------------+
| initialize scan to start from begining of file |
+-----------------------------------------------------*/
mdlScan_initScanlist (&scanList);
mdlScan_setDrawnElements(&scanList);
mdlScan_noRangeCheck(&scanList);
for (i=0; i<4; i++)
scanList.levmask[i] = 0x0000;
scanList.typmask[0] = TMSK0_LINE|TMSK0_LINE_STRING|TMSK0_SHAPE;
scanList.typmask[1] = 0x0000;
scanList.typmask[2] = 0x0000;
scanList.typmask[3] = 0x0000;
scanList.typmask[4] = 0x0000;
scanList.typmask[5] = 0x0000;
scanList.typmask[6] = 0x0000;
scanList.typmask[7] = 0x0000;
scanList.scantype = ELEMTYPE;
scanList.extendedType = FILEPOS;
if (f!=NULL)
{
mdlScan_initOpenedFile (f, &scanList);
}
filePos = 0L;
fileNum = 0;
scanWords = 0;
if ((init_status = mdlScan_initialize (fileNum, &scanList)) ==
SUCCESS);
{
do
{
scan_status = mdlScan_file (elemAddr, &scanWords,
sizeof(elemAddr), &filePos);
numAddr = scanWords / sizeof(short);
for (i=0; i<numAddr; i++)
{
MSElementDescr *elDP=NULL;
mdlWorkDgn_read(&elDP,elemAddr[i],f,NULL,0);
mdlElmdscr_read (&elDP, elemAddr[i], f, FALSE, NULL);
/* THIS LINE IS THE ONE WHICH IS FAILING */
mdlElement_extractRange(&vector, &elDP->el);
origin = vector.org; end = vector.end; if
(origin.y > yMax)
yMax = origin.y; if (end.y > yMax)
yMax = end.y;
if(elDP) mdlElmdscr_freeAll(&elDP); }
} while (scan_status == BUFF_FULL);
}
return yMax;
}
Daniel MacNeil wrote:
> The only way to see multiple files in the view windows at the same time
> is to use refernce files.
>
> Dan
>
> grotero@[EMAIL PROTECTED]
wrote:
> > Is posible to open a new file and work with it while still seing the
> > actual one in the workspace?.
> > I hope you understand me.
> >
> > Thanks.
> >


|