Skip to main content
Version : 3.5.x

Types courants

Toutes les charges utiles JSON utilisent ces types de manière cohérente, tant pour l'interface WebSocket que pour l'interface HTTP.

vec3

Un vecteur 3D. Utilisé pour les positions (en mètres), les vitesses (en m/s), les forces (en N) et les facteurs d'échelle.

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

quaternion

Un quaternion unitaire représentant une rotation. w c'est la priorité dans la représentation interne du service, mais en JSON, ces quatre éléments sont des clés nommées ; leur ordre n'a donc aucune importance.

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

Un quaternion identitaire (w=1, x=y=z=0) signifie « pas de rotation ».

angles3

Angles des articulations en degrés (et non en radians). Utilisés pour la position angulaire et la vitesse angulaire des trois articulations Inverse3.

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

transformer

Une combinaison de position, de rotation et d'échelle. Utilisée pour les transformations de montage, les transformations de l'espace de travail et le placement des effets SDF.

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

La transformation d'identité (illustrée ci-dessus) ne modifie rien : position nulle, aucune rotation, échelle unitaire.

Forme de commande ou forme instantanée pour mount

Quand envoi un support via configure.mount, la transformation est encapsulée dans un "transform" clé : { "mount": { "transform": { … } } }. Quand lecture Lorsqu'on monte un instantané de périphérique, il apparaît comme un dossier plat : { "mount": { "position": …, "rotation": …, "scale": … } }. Cette asymétrie est voulue — voir Support et espace de travail.