V Xkách se dají souřadnice na vstupu i výstupu vynásobit libovolnou maticí (homogenní souřadnice). Hledej Coordinate Transformation Matrix. Nepomohlo by to?
https://wiki.ubuntu.com/X/InputCoordinateTransformationhttps://wiki.archlinux.org/index.php/Calibrating_Touchscreen#Calculate_the_Coordinate_Transformation_MatrixZ
moudra.txt:
v man xrandr u parametru --transform jsou vysvětlené homogenous coordinates
--transform a,b,c,d,e,f,g,h,i
Specifies a transformation matrix to apply on the output. Automatically a bilinear filter is selected. The mathematical form corresponds
to:
a b c
d e f
g h i
The transformation is based on homogeneous coordinates. The matrix multiplied by the coordinate vector of a pixel of the output gives the
transformed coordinate vector of a pixel in the graphic buffer. More precisely, the vector (x y) of the output pixel is extended to 3 val‐
ues (x y w), with 1 as the w coordinate and multiplied against the matrix. The final device coordinates of the pixel are then calculated
with the so-called homogenic division by the transformed w coordinate. In other words, the device coordinates (x' y') of the transformed
pixel are:
x' = (ax + by + c) / w' and
y' = (dx + ey + f) / w' ,
with w' = (gx + hy + i) .
Typically, a and e corresponds to the scaling on the X and Y axes, c and f corresponds to the translation on those axes, and g, h, and i
are respectively 0, 0 and 1. The matrix can also be used to express more complex transformations such as keystone correction, or rotation.
For a rotation of an angle T, this formula can be used:
cos T -sin T 0
sin T cos T 0
0 0 1
As a special argument, instead of passing a matrix, one can pass the string none, in which case the default values are used (a unit matrix
without filter).
Good luck!