이 항목에서는 Windows 10, 버전 1607 이상 운영 체제에서 방사형 컨트롤러 햅틱 피드백 지원에 사용되는 HID 입력 보고서에 대해 자세히 설명합니다.
호스트는 입력 보고서에서 데이터를 추출할 때 다음 사용법을 사용합니다.
| 멤버 | Description | 페이지 | ID | 필수/선택 |
|---|---|---|---|---|
| 단추 | 방사형 컨트롤러에 있는 단추의 상태 | 0x09 | 0x01 | 필수 |
| Dial | 방사형 컨트롤러의 상대 회전 | 0x01 | 0x37 | 필수 |
| X | 접점 위치의 X 좌표 | 0x01 | 0x30 | 선택 사항 |
| Y | 접점 위치의 Y 좌표 | 0x01 | 0x31 | 선택 사항 |
| 너비 | 접점 주위 경계 상자의 너비 | 0x0D | 0x48 | 선택 사항 |
| 높이 | 접점 주위 경계 상자의 높이 | 0x0D | 0x49 | 선택 사항 |
필수 사용법 및 Windows 지원 선택적 사용법
일부 필수 사용량을 보고하지 않는 모든 디바이스는 Windows 방사형 컨트롤러로 작동하지 않습니다. 필수 사용은 Windows 호스트에서 엄격하게 적용됩니다. 논리적 최댓값이 제한되지 않은 경우 설명자 크기를 줄이기 위해 최적화할 수 있습니다.
다음 섹션에서는 위의 표에 나와 있는 필수 사용법 및 Windows 지원 선택적 사용법에 대한 자세한 내용을 제공합니다.
단추
방사형 컨트롤러 디바이스의 기본 단추가 눌린 경우를 나타내는 데 사용됩니다. 이것은 보고서 크기가 1비트인 주 항목으로 표시됩니다. 입력 보고서를 전달하는 경우 이 단추를 누를 때 비트를 설정하고, 단추에서 떼면 비트를 지워야 합니다.
Dial
자체 주 축을 중심으로 방사형 컨트롤러의 시계 방향 회전을 나타내는 데 사용됩니다. 입력 보고서를 배달할 때 보고된 값은 이전 보고서를 기준으로 한 회전 크기여야 합니다. 이 값은 방사형 컨트롤러가 시계 방향으로 회전하는 경우 양수이고, 방사형 컨트롤러가 시계 반대 방향으로 회전하는 경우에는 음수입니다.
실제 범위와 논리적 범위를 지정해야 합니다. 도 또는 라디안은 실제 범위에 사용할 수 있습니다. 이 경우 논리적 범위는 소수점 이하 한 자리까지 정확한 값을 보고할 수 있을 만큼 커야 합니다.
X/Y
X 및 Y는 화면에 방사형 컨트롤러의 접점 좌표를 보고합니다. 이 좌표는 디스플레이를 기준으로 접점의 중심을 나타냅니다.
X 및 Y를 보고하는 디바이스는 너비 또는 높이 사용량도 보고해야 합니다. 호스트는 보고된 좌표를 사용하여 접점 주위에 경계 사각형을 작성합니다.
X 및 Y 사용에 대해 지정해야 하는 전역 항목은 다음과 같습니다.
- 논리적 최솟값
- 논리적 최댓값
- 실제 최솟값
- 실제 최댓값
- 단위
- 단위 지수
디바이스의 실제 범위 및 단위를 정확하게 보고해야 합니다. 정보가 정확하지 않으면 디바이스가 제대로 작동하지 않습니다. 또한 디바이스는 보고서 설명자에 지정된 논리적 범위 내에서 데이터를 보고해야 합니다.
X 및 Y는 보고된 논리 범위를 벗어난 값을 제공하고 사용량의 입력 보고서 (Bit 6 {No Null position (0) | Null state(1)})에 Null 지원을 추가하여 디바이스가 현재 디스플레이에 상대적인 위치에 없음을 의미하는 NULL 값을 시스템에 제공할 수 있습니다.
너비 및 높이
너비 및 높이 사용은 방사형 컨트롤러 접점 주위 경계 상자의 너비와 높이를 나타냅니다. 보고서 설명자에서 너비와 높이를 상수로 정의해야 합니다.
Windows 방사형 컨트롤러 디바이스는 시스템에 의해 순환되는 것으로 간주됩니다. 따라서 화면상 접점의 너비와 높이를 모두 보고할 필요는 없습니다. 높이 또는 너비가 지원되는 경우 시스템에서 접점의 경계를 올바르게 해석합니다. Windows는 너비와 높이에 대해 서로 다른 값을 가진 방사형 컨트롤러 디바이스에 대한 지원을 제공하지 않습니다.