Passer directement au contenu principal

Types communs

Qu'il s'agisse de l'interface WebSocket ou HTTP, toutes les charges utiles JSON utilisent systématiquement ces types.

vec3​

Il s'agit d'un vecteur à trois dimensions. Il est utilisé pour la position (en mètres), la vitesse (en m/s), la force (en N) et le coefficient d'échelle.

{ "x": 0.0, "y": 0.0, "z": 0.0 }

quaternion​

Il s'agit d'un quaternion représentant une rotation. Dans la représentation interne du service, w C'est le premierMais comme, en JSON, les quatre éléments sont tous des clés nommées, leur ordre n'a pas d'importance.

{ "w": 1.0, "x": 0.0, "y": 0.0, "z": 0.0 }

Quaternion identitaire (w=1, x=y=z=0) signifie « sans rotation ».

angles3​

Il s'agit de l'angle d'une articulation (expriméen degréset non en radians). Ces valeurs sont utilisées pour définir la position angulaire et la vitesse angulaire des trois articulations deInverse3 .

{ "a0": 0.0, "a1": 0.0, "a2": 0.0 }

transformer​

Il s'agit d'une combinaison de position, de rotation et d'échelle. Elle est utilisée pour la transformation des montures, la transformation de l'espace de travail et le positionnement des effets SDF.

{
"position": { "x": 0.0, "y": 0.0, "z": 0.0 },
"rotation": { "w": 1.0, "x": 0.0, "y": 0.0, "z": 0.0 },
"scale": { "x": 1.0, "y": 1.0, "z": 1.0 }
}

Même en appliquant la transformation identique(celle indiquée ci-dessus), rien ne change. La position est nulle, il n'y a pas de rotation et l'échelle est unitaire (1).

Remarque
mount Différences entre les commandes et les formats de snapshots

configure.mount pour monter leEnvoyerDans ce cas, la fonction `transform` est "transform" Entouré par des guillemets : { "mount": { "transform": { … } } }。 Monter à partir d'un instantané du périphériqueLireDans ce cas, le format devient plat : { "mount": { "position": …, "rotation": …, "scale": … } }。 Cette asymétrie est voulue par la conception. Pour plus de détails, Support et espace de travail Veuillez consulter [...].