diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2016-01-05 12:35:49 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2016-01-05 12:35:49 +1000 |
commit | 665daba9a9c79b832b9b82e6f09cf0742f0e5446 (patch) | |
tree | b8ab864c8267733b950c64a3d390b9d6bbeb0758 /doc | |
parent | 9114054fa29084d69784c09e2f811325e0520a14 (diff) |
doc: improve absolute axis documentation a bit
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'doc')
-rw-r--r-- | doc/absolute-axes.dox | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/doc/absolute-axes.dox b/doc/absolute-axes.dox index 664c616..0e1a21b 100644 --- a/doc/absolute-axes.dox +++ b/doc/absolute-axes.dox @@ -10,7 +10,7 @@ libinput supports three types of devices with absolute axes: - multi-touch screens - single-touch screens - - graphics tablets (currently WIP) + - @ref tablet-support "graphics tablets" Touchpads are technically absolute devices but libinput converts the axis values to directional motion and posts events as relative events. Touchpads do not count @@ -18,7 +18,10 @@ as absolute devices in libinput. For all absolute devices in libinput, the default unit for x/y coordinates is in mm off the top left corner on the device, or more specifically off the -device's sensor. +device's sensor. If the device is physically rotated from its natural +position and this rotation was communicated to libinput (e.g. +@ref libinput_device_config_left_handed_set "by setting the device left-handed"), +the coordinate origin is the top left corner of in the current rotation. @section absolute_axes_handling Handling of absolute coordinates @@ -40,7 +43,7 @@ coordinate. @section absolute_axes_nores Devices without x/y resolution An absolute device that does not provide a valid resolution is considered -buggy and must be fixed in the kernel. Some touchpad devices that do not +buggy and must be fixed in the kernel. Some touchpad devices do not provide resolution, those devices are correctly handled within libinput (touchpads are not absolute devices, as mentioned above). @@ -107,11 +110,14 @@ The most common matrices are: See Wikipedia's <a href="http://en.wikipedia.org/wiki/Transformation_matrix">Transformation -Matrix article</a> for more information on the matrix maths. - -See libinput_device_config_calibration_get_default_matrix() for how these +Matrix article</a> for more information on the matrix maths. See +libinput_device_config_calibration_get_default_matrix() for how these matrices must be supplied to libinput. +Once applied, any x and y axis value has the calibration applied before it +is made available to the caller. libinput does not provide access to the +raw coordinates before the calibration is applied. + @section absolute_axes_nonorm Why x/y coordinates are not normalized x/y are not given in @ref motion_normalization "normalized coordinates" |