
저는 2개의 디스플레이를 사용합니다(왼쪽은 1920x1080 터치스크린, 오른쪽은 1440x900). 내가 혹시 사용한다면
xinput set-prop "Acer T230H" "Coordinate Transformation Matrix" 0.566 0 0 0 .71111 0 0 0 1
(행렬 값으로)
0.566 0 0
0 0.71111 0
0 0 1
x 좌표는 올바르게 계산되지만 y 좌표는 ~1.2를 곱해야 정확합니다.
1.2는 어디에 배치해야 하나요?
답변1
y 좌표의 크기를 조정하려면 0.71111에 배율 인수 1.2를 곱해야 합니다. 일반 공식은 다음과 같습니다.
행렬이
a b c
d e f
g h i
그러면 공식은
new_x = (a * old_x + b * old_y + c) / (g * old_x + h * old_y + i)
new_y = (d * old_x + e * old_y + f) / (g * old_x + h * old_y + i)
이것은 투영적 변환입니다. 거의 모든 경우(즉, 디스플레이가 벽에 비스듬히 투사되는 비머가 아닌 경우)에는 선형 변환만 필요하므로 로 설정 g h i
합니다 0 0 1
.
더 고급 작업을 수행하려는 경우 이 계산을 위해 old_x/new_x 등이 0과 1 사이의 범위에 있다는 것을 알아야 합니다.