diff -r ebc84c812384 -r 46218c8b8afa Symbian3/PDK/Source/GUID-009D71C6-481F-5EF1-B230-EB64F67047C8.dita --- a/Symbian3/PDK/Source/GUID-009D71C6-481F-5EF1-B230-EB64F67047C8.dita Thu Mar 11 15:24:26 2010 +0000 +++ b/Symbian3/PDK/Source/GUID-009D71C6-481F-5EF1-B230-EB64F67047C8.dita Thu Mar 11 18:02:22 2010 +0000 @@ -1,47 +1,47 @@ - - - - - -CalibrationCalibration of the Digitizer Driver is required to convert between -digitiser ADC values and screen coordinates. -

Calibration is done through a user-side calibration application.

-

The platform specific layer performs the following calculation to convert -between ADC values and co-ordinates:

- - - -

Where the R matrix determines the scaling and rotation, and the T vector -determines the translation.

-

This conversion is implemented by the platform specific layer's implementation -of DDigitiser::DigitiserToScreen() and DDigitiser::ScreenToDigitiser(). -Default implementations are provided by the template port. Note, however, -that in these implementations, the calculation is slightly more complex because -screen coordinate values are left shifted 16 bits. This allows the operations -to use integer divisions without loosing precision.

-

All that you need to do is to provide an initial set of values for R and T. -An example of how to set them up is included in the template port.

-

The principle is that the application draws cross hairs on the screen, -and then invites the user to touch these points. The digitiser ADC value is -used to calculate the digitiser to screen pixel value transformation.

-

Any calibration code will interface with the User-Side -Hardware Abstraction component using four UserHal functions.

-

On a cold restart, the calibration application goes through the following -steps:

- -

On a warm restart, the calibration application just restores calibration -data using UserHal::RestoreXYInputCalibration().

+ + + + + +CalibrationCalibration of the Digitizer Driver is required to convert between +digitiser ADC values and screen coordinates. +

Calibration is done through a user-side calibration application.

+

The platform specific layer performs the following calculation to convert +between ADC values and co-ordinates:

+ + + +

Where the R matrix determines the scaling and rotation, and the T vector +determines the translation.

+

This conversion is implemented by the platform specific layer's implementation +of DDigitiser::DigitiserToScreen() and DDigitiser::ScreenToDigitiser(). +Default implementations are provided by the template port. Note, however, +that in these implementations, the calculation is slightly more complex because +screen coordinate values are left shifted 16 bits. This allows the operations +to use integer divisions without loosing precision.

+

All that you need to do is to provide an initial set of values for R and T. +An example of how to set them up is included in the template port.

+

The principle is that the application draws cross hairs on the screen, +and then invites the user to touch these points. The digitiser ADC value is +used to calculate the digitiser to screen pixel value transformation.

+

Any calibration code will interface with the User-Side +Hardware Abstraction component using four UserHal functions.

+

On a cold restart, the calibration application goes through the following +steps:

+
    +
  • Gets the calibration +points by using UserHal::CalibrationPoints()

  • +
  • Sets calibration points +by using: UserHal::SetXYInputCalibration()

  • +
  • Saves calibration data +by using: UserHal::SaveXYInputCalibration()

  • +
+

On a warm restart, the calibration application just restores calibration +data using UserHal::RestoreXYInputCalibration().

\ No newline at end of file