Types génériques
Toutes les charges JSON utilisent ces types de manière uniforme dans les interfaces WebSocket et HTTP.
vec3
Vecteur à trois dimensions. Utilisé pour représenter la position (en mètres), la vitesse (en m/s), la force (en N) ainsi que le facteur d'échelle.
{ "x": 0.0, "y": 0.0, "z": 0.0 }
quaternion
Quadruplet représentant la rotation. Dans la représentation interne du service,w En tête du classement, mais dans le JSON, les quatre éléments sont tous des clés nommées ; leur ordre n'a donc aucune 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
Angles articulaires, exprimés endegrés(et non en radians). Ils servent à décrire les positions angulaires et les vitesses angulaires des trois articulations : Inverse3 .
{ "a0": 0.0, "a1": 0.0, "a2": 0.0 }
transformer
Combinaison de position, de rotation et de mise à l'échelle. Utilisée pour le placement des transformations de montage, des transformations de zone de travail et 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 }
}
La transformation identique(voir ci-dessus) n'entraîne aucune modification : position nulle, aucune rotation, échelle égale à 1.
mount Format des commandes et format des instantanéspar configure.mount Envoyer Lors du montage, la transformation doit être encapsulée dans "transform" Dans le clavier :{ "mount": { "transform": { … } } }。
À partir d'un instantané de l'appareilLire Lors du montage, sa structure est plate :
{ "mount": { "position": …, "rotation": …, "scale": … } }。
Cette asymétrie est voulue ; voir Montage et espace de travail。