Zum Inhalt springen
GET /v1/meta

Spec

Live testen

10 freie Calls pro Tag — keine Anmeldung, kein API-Key. Geht durchs oanor-Gateway.

Eigene Header (optional)
api.oanor.com/quaternion-api

Funktioniert. Hol dir einen API-Key und nutze sie in deinem Projekt.

API-Key holen

Code-Snippets

curl "https://api.oanor.com/quaternion-api/v1/meta" \
  -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/quaternion-api/v1/meta", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/quaternion-api/v1/meta");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$out = curl_exec($ch);
import requests
requests.get(
    "https://api.oanor.com/quaternion-api/v1/meta",
    headers={"x-oanor-key": "oanor_test_..."}
)

Beispiel-Response

Echte Antwort dieses Endpoints, erfasst beim letzten Health-Check.

{
    "data": {
        "name": "Quaternion API",
        "notes": "All quaternions are normalized to unit length on output. Euler extraction clamps at the ±90° pitch gimbal point. Nothing is stored.",
        "version": "v1",
        "endpoints": [
            {
                "path": "/v1/convert",
                "params": {
                    "from": "euler | quaternion | axis_angle | matrix (auto-detected)",
                    "matrix": "9 numbers row-major",
                    "w,x,y,z": "for quaternion",
                    "axis,angle": "for axis-angle",
                    "roll,pitch,yaw": "for euler (deg)"
                },
                "returns": "quaternion, euler, axis-angle and matrix"
            },
            {
                "path": "/v1/multiply",
                "params": {
                    "q1": "w,x,y,z",
                    "q2": "w,x,y,z"
                },
                "returns": "the composed rotation in all forms"
            },
            {
                "path": "/v1/rotate",
                "params": {
                    "q": "w,x,y,z (or w,x,y,z fields)",
                    "vector": "x,y,z"
                },
                "returns": "the rotated vector"
            },
            {
                "path": "/v1/slerp",
                "params": {
                    "t": "0..1",
                    "q1": "w,x,y,z",
                    "q2": "w,x,y,z"
                },
                "returns": "the interpolated orientation in all forms"
            },
            {
                "path": "/v1/meta",
                "params": [],
                "returns": "this document"
            }
        ],
        "conventions": {
            "euler": "aerospace Z-Y-X (yaw-pitch-roll) intrinsic, degrees",
            "matrix": "row-major 3x3, right-handed",
            "quaternion": "Hamilton, order w,x,y,z"
        },
        "description": "3D rotation maths as an API: convert freely between quaternions, Euler angles, axis-angle and rotation matrices, compose rotations, rotate vectors, and interpolate. The convert endpoint takes any one representation — a quaternion {w,x,y,z}, Euler angles (roll, pitch, yaw), an axis and angle, or a 3×3 matrix — and returns all four forms at once, normalized. The multiply endpoint composes two quaternions (the Hamilton product) so you can chain rotations. The rotate endpoint applies a quaternion to a 3D vector. The slerp endpoint does spherical linear interpolation between two orientations along the shortest path, the standard way to animate smooth rotations. Euler angles use the aerospace Z-Y-X (yaw-pitch-roll) intrinsic convention in degrees; quaternions follow the Hamilton convention. Everything is computed locally and deterministically, so it is instant and private. Ideal for game and graphics engines, robotics and drones, IMU and sensor fusion, aerospace, VR/AR, and 3D tooling. Pure local computation — no key, no third-party service, instant. Live, nothing stor
…