Re: ELO touchscreen

Top Page

Reply to this message
Author: Frédéric
Date:  
To: Guilde
Subject: Re: ELO touchscreen
Le mardi 22 août 2017, Frédéric a écrit :

> [...] il faudrait modifier les matrices de transformation et de
> coordonnées :
>
> https://wiki.ubuntu.com/X/InputCoordinateTransformation
>
> Mais bon, à la mano, c'est un peu merdique. Y'a pas d'autres outils
> capables de générer ces matrices, en pointant des cibles ?


Bon, rien trouvé. Du coup, je me les suis paluchées à la main ! Voici ce
que ça donne. À l'aide de :

https://en.wikipedia.org/wiki/Transformation_matrix#Affine_transformations

on écrit la matrice de transformation :

      [ ScaleX       0  ShiftX ]
      [                        ]
  M = [      0  ScaleY  ShiftY ]
      [                        ]
      [      0       0       0 ]


et on calcule les coefs avec :

ScaleX = 65535 / (MaxX - MinX)
ScaleY = 65535 / (MaxY - MinY)
ShiftX = MinX / (MinX - MaxX)
ShiftY = MinY / (MinY - MaxY)

où MinX/Y et MaxX/Y sont les valeurs retournées par xinput_calibrator. Ça
tient compte de l'inversion d'un ou de plusieurs axes. Par contre, si X et
Y sont croisés, il doit falloir croiser ScaleX <-> ScaleY d'une part, et
ShiftX <-> ShiftY d'autre part.

Voili-voilou. Si ça peut servir à d'autres...

-- 
    Frédéric