Page 1 of 1

Corrections to DCAL routines

PostPosted: Mon Nov 20, 2006 9:37 am
by devinder
Some of the DCAL routines have been incorrectly mentioned in UInterfaces.pas and can cause Internal Diagnostics error on its use. The correct function calls for these are as follow:

Code: Select allPROCEDURE menuArcCentChrd (VAR iwant : wantType; VAR arg : CircMenuArg; doPolyline : boolean;
                                                        docovervar, doclosedvar : pboolean);stdcall; external AppName;
PROCEDURE menuArc2pt (VAR iwant : wantType; VAR arg : CircMenuArg; doPolyline : boolean;
                                                        docovervar, doclosedvar : pboolean);stdcall; external AppName;
PROCEDURE menuArc3pt (VAR iwant : wantType; VAR arg : CircMenuArg; doPolyline : boolean;
                                                        docovervar, doclosedvar : pboolean);stdcall; external AppName;
PROCEDURE menuArcCentAng (VAR iwant : wantType; VAR arg : CircMenuArg; doPolyline : boolean;
                                                        docovervar, doclosedvar : pboolean);stdcall; external AppName;
PROCEDURE menuArcCentArc (VAR iwant : wantType; VAR arg : CircMenuArg; doPolyline : boolean;
                                                        docovervar, doclosedvar : pboolean);stdcall; external AppName;
PROCEDURE menuCrcRad (VAR iwant : wantType; VAR arg : CircMenuArg; doPolyline : boolean;
                                                        docovervar : pboolean);stdcall; external AppName;
PROCEDURE menuCrcDia (VAR iwant : wantType; VAR arg : CircMenuArg; doPolyline : boolean;
                                                        docovervar : pboolean);stdcall; external AppName;
PROCEDURE menuCrc3pt (VAR iwant : wantType; VAR arg : CircMenuArg; doPolyline : boolean;
                                                        docovervar : pboolean);stdcall; external AppName;
PROCEDURE menuArcTan (VAR iwant : wantType; VAR arg : CircMenuArg; doPolyline : boolean;
                                                        docovervar, doclosedvar : pboolean);stdcall; external AppName;


NOTES:
doPolyline tells to generate a polyline entity Vs arc/circle entity defined with closed (doclosedvar) and cover (docovervar) flag.

We are thankful to Pietro Moras for bringing these to our attention and I apologize for the errors.

PostPosted: Mon Nov 27, 2006 10:07 am
by devinder
All the previously mentioned DCAL functions need further investigation and may not work completely for now. It seems to be byte alignment problems with this function which is causing docovervar and doclosedvar not to work as desired. The CircOptions record may have to packed in future version to fix the problem in both DataCAD and DCAL units. Doing so only in DCAL will not work.