@@ -49,17 +49,19 @@ THMD = HMD;
4949
5050| Тип | Описание | Значения |
5151| ------------- | ------------- | ------------- |
52- | X, Y, Z | Отслеживание позиции | От -1 .000 до 1.000 |
53- | Yaw, Pitch, Roll | Отслеживание вращения | От -180 до 180 |
52+ | X, Y, Z | Отслеживание позиции | 0 .000 (в метрах) |
53+ | Yaw, Pitch, Roll | Отслеживание вращения | От -180 до 180 (в градусах) |
5454
55-
56- Если вам удобнее использовать кватернион, его можно получить из Yaw, Pitch, Roll.
55+ Если вы предпочитаете использовать кватернион, вы можете получить его из Yaw, Pitch, Roll.
5756``` c
5857double qW, qX, qY, qZ;
59- qW = cos(DegToRad(yaw) * 0.5 ) * cos (DegToRad(roll) * 0.5) * cos(DegToRad(pitch) * 0.5) + sin(DegToRad(yaw) * 0.5) * sin(DegToRad(roll) * 0.5) * sin(DegToRad(pitch) * 0.5);
60- qX = cos(DegToRad(yaw) * 0.5) * sin(DegToRad(roll) * 0.5) * cos(DegToRad(pitch) * 0.5) - sin(DegToRad(yaw) * 0.5) * cos(DegToRad(roll) * 0.5) * sin(DegToRad(pitch) * 0.5);
61- qY = cos(DegToRad(yaw) * 0.5) * cos(DegToRad(roll) * 0.5) * sin(DegToRad(pitch) * 0.5) + sin(DegToRad(yaw) * 0.5) * sin(DegToRad(roll) * 0.5) * cos(DegToRad(pitch) * 0.5);
62- qZ = sin(DegToRad(yaw) * 0.5) * cos(DegToRad(roll) * 0.5) * cos(DegToRad(pitch) * 0.5) - cos(DegToRad(yaw) * 0.5) * sin(DegToRad(roll) * 0.5) * sin(DegToRad(pitch) * 0.5);
58+ myYaw = yaw * (3.14159265358979323846 / 180 ); // градусы в радианы
59+ myRoll = roll * (3.14159265358979323846 / 180 ); // градусы в радианы
60+ myPitch = pitch * (3.14159265358979323846 / 180 ); // градусы в радианы
61+ qW = cos(myYaw * 0.5 ) * cos (myRoll * 0.5) * cos(myPitch * 0.5) + sin(myYaw * 0.5) * sin(myRoll * 0.5) * sin(myPitch * 0.5);
62+ qX = cos(myYaw * 0.5) * sin(myRoll * 0.5) * cos(myPitch * 0.5) - sin(myYaw * 0.5) * cos(myRoll * 0.5) * sin(myPitch * 0.5);
63+ qY = cos(myYaw * 0.5) * cos(myRoll * 0.5) * sin(myPitch * 0.5) + sin(myYaw * 0.5) * sin(myRoll * 0.5) * cos(myPitch * 0.5);
64+ qZ = sin(myYaw * 0.5) * cos(myRoll * 0.5) * cos(myPitch * 0.5) - cos(myYaw * 0.5) * sin(myRoll * 0.5) * sin(myPitch * 0.5);
6365```
6466
6567#### Возвращаемое значение
0 commit comments