Zum Hauptinhalt springen

Gängige Typen

Alle JSON-Nutzdaten verwenden diese Typen in den WebSocket- und HTTP-Schnittstellen einheitlich.

vec3​

Ein 3D-Vektor. Wird für Positionen (in Metern), Geschwindigkeiten (m/s), Kräfte (N) und Skalierungsfaktoren verwendet.

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

Quaternion​

Ein unitäres Quaternion, das eine Drehung darstellt. w kommt an erster Stelle in der internen Darstellung des Dienstes, aber in JSON sind die vier Komponenten benannte Schlüssel, daher spielt die Reihenfolge keine Rolle.

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

Ein Identitätsquaternion (w=1, x=y=z=0) bedeutet „keine Drehung“.

Winkel3​

Gelenkwinkel in Grad (nicht in Radianten). Wird für die Winkelposition und die Winkelgeschwindigkeit der drei Gelenke von Inverse3 verwendet.

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

umwandeln​

Eine Kombination aus Position, Drehung und Skalierung. Wird für Schnitttransformationen, Transformationen im Arbeitsbereich und die Platzierung von SDF-Effekten verwendet.

{
"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 }
}

Die Identitätstransformation (siehe Abbildung oben) bewirkt keine Veränderung: Position Null, keine Drehung, Skalierung gleich Eins.

Anmerkung
Befehlsform und Form der Momentaufnahme für mount

Während derVersand aus einer Montage via configure.mount, die Transformation ist in einen Schlüssel "transform" : { "mount": { "transform": { … } } }. Während der Vorlesung Bei der Bearbeitung eines Kamera-Schnappschusses erscheint das Bild flach: { "mount": { "position": …, "rotation": …, "scale": … } }. Diese Asymmetrie ist beabsichtigt – siehe Montage und Arbeitsbereich.