main() { int FixtureIndex; double NewOriginOffset,OriginOffsetY,AxisOffsetY; double Machinex,Machiney,Machinez,Machinea,Machineb,Machinec; GetFixtureIndex(&FixtureIndex); GetOriginOffset(&OriginOffsetY, FixtureIndex, Yaxis); GetAxisOffset(&AxisOffsetY, Yaxis); GetMachine(&Machinex,&Machiney,&Machinez,&Machinea,&Machineb,&Machinec); // Compute Origin Offset to make DRO zero // // Since Machine = DRO + OriginOffset + AxisOffset // // Set DRO = 0 and solve for OriginOffset // NewOriginOffset = Machiney - AxisOffsetY; SetUserDataDouble(TMP,NewOriginOffset); SetVars(5201+FixtureIndex*20+1, 1, TMP); DoPC(PC_COMM_UPDATE_FIXTURE); }
main() { int FixtureIndex; double NewOriginOffset,OriginOffsetX,AxisOffsetX; double Machinex,Machiney,Machinez,Machinea,Machineb,Machinec; GetFixtureIndex(&FixtureIndex); GetOriginOffset(&OriginOffsetX, FixtureIndex, Xaxis); GetAxisOffset(&AxisOffsetX, Xaxis); GetMachine(&Machinex,&Machiney,&Machinez,&Machinea,&Machineb,&Machinec); // Compute Origin Offset to make DRO zero // // Since Machine = DRO + OriginOffset + AxisOffset // // Set DRO = 0 and solve for OriginOffset // NewOriginOffset = Machinex - AxisOffsetX; pD[TMP]=NewOriginOffset; SetVars(5201+FixtureIndex*20+0, 1, TMP); DoPC(PC_COMM_UPDATE_FIXTURE); }
// Put an integer as a parameter and pass the command to the App int DoPCInt(int cmd, int i) { int result; persist.UserData[PC_COMM_PERSIST+1] = i; return DoPC(cmd); }
// Put a Float as a parameter and pass the command to the App int DoPCFloat(int cmd, float f) { int result; persist.UserData[PC_COMM_PERSIST+1] = *(int*)&f; return DoPC(cmd); }