ScanDeviceManager SendCorrectionData

Sends a new correction table to the specified device.

The correction tables are automatically loaded for use when the SMC powers up. This method allows overriding the default tables with new ones, which can be further fine-tuned using the adjustment parameters. The new correction data will be available immediately for use. The command also provides support for manipulating all three-axis correction files.

Note that tables loaded using this method are not permanent and will be lost after an SMC power-cycle.

 

Overloads

public void SendCorrectionData(string deviceName, uint uiTableId, string strCorrTableFileName, double dScaleX, double dScaleY, double dRotation, double dDx, double dDy, uint uiTimeout, bool bWaitForAck) 
public void SendCorrectionData(string deviceName, uint uiTableId, string pstrCorrTableFileName, double dM00, double dM01, double dM10, double dM11, double dDx, double dDy, uint uiTimeout, bool bWait)
public void SendCorrectionData(string deviceName, uint uiTableId, string strCorrTableFileName, double dScaleX, double dScaleY, double dRotationX, double dRotationY, double dRotationZ, double dDx, double dDy, double dDz, uint uiTimeout, bool bWaitForAck)

 

Return value

 

void  

 

Parameters

string deviceName The unique name of the device.
uint uiTableId Correction Table ID: 1, 2, 3, 4
string strCorrTableFileName Full path to Correction table data file on the PC
string pstrCorrTableFileName Full path to Correction table data file on the PC
double dRotation Rotation in degrees XY plane (Positive is counter-clockwise)
double dM00 2x2 transformation Matrix coefficient
double dM01 2x2 transformation Matrix coefficient
double dM10 2x2 transformation Matrix coefficient
double dM11 2x2 transformation Matrix coefficient
double dDx X offset (mm)
double dDy Y offset (mm)
double dDz Z offset (mm)
double dScaleX X scale factor
double dScaleY Y scale factor
double dRotationX Rotation in degrees about the X axis (Tip) (Positive is counter-clockwise)
double dRotationY Rotation in degrees about the Y axis (Tilt) (Positive is counter-clockwise)
double dRotationZ Rotation in degrees about the Z axis (Theta) (Positive is counter-clockwise)
uint uiTimeout Duration for attempting call in seconds. The special case of zero means to wait an infinite duration.
bool bWaitForAck If set to TRUE, the function does not return until a reception acknowlegement is received from the SMC. Otherwise, data packets are queued for execution.

 

Exceptions

   

 

Example

Copy
 string deviceName = GetselectedDeviceUniqueName();
 uint uiTableId = 1;
 string correctionfile = @"D:\100mmField.xml"; // update to your file
 double dScaleX = 1;
 double dScaleY = 1;
 double dRotation = 0;
 double dDx = 0;
 double dDy = 0;
 uint uiTimeout = 500;
 bool waitforAck = false;

 scanDeviceManager.SendCorrectionData(deviceName, uiTableId, correctionfile, dScaleX, dScaleY, dRotation, dDx, dDy, uiTimeout, waitforAck);