[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/de/docs/Web/API/OrientationSensor [Back]  [Original]

OrientationSensor - Web-APIs | MDN

Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.

View in English Always switch to English

OrientationSensor

Eingeschrnkt verfgbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen untersttzenden Browsern verfgbar.

Die OrientationSensor-Schnittstelle der Sensor-APIs ist die Basisklasse fr Orientierungssensoren. Diese Schnittstelle kann nicht direkt verwendet werden. Stattdessen bietet sie Eigenschaften und Methoden, die von Schnittstellen genutzt werden, die von ihr erben.

Diese Funktion kann durch eine auf Ihrem Server gesetzte Permissions Policy blockiert werden.

EventTarget Sensor OrientationSensor

In diesem Artikel

Schnittstellen basierend auf OrientationSensor

Im Folgenden finden Sie eine Liste von Schnittstellen, die auf der OrientationSensor-Schnittstelle basieren.

Instanz-Eigenschaften

OrientationSensor.quaternion Schreibgeschtzt

Gibt ein vier Element umfassendes Array zurck, dessen Elemente die Komponenten des Einheitsquaternions enthalten, das die Ausrichtung des Gerts reprsentiert.

Instanz-Methoden

OrientationSensor.populateMatrix()

Fllt das gegebene Objekt mit der Rotationsmatrix basierend auf der neuesten Sensorablesung.

Beispiele

Einfaches Beispiel

Das folgende Beispiel, das lose auf Intels Orientation Phone-Demo basiert, instanziiert einen AbsoluteOrientationSensor mit einer Frequenz von 60 Mal pro Sekunde. Bei jeder Ablesung wird OrientationSensor.quaternion verwendet, um ein visuelles Modell eines Telefons zu drehen.

js
const options = { frequency: 60, referenceFrame: "device" };
const sensor = new AbsoluteOrientationSensor(options);

sensor.addEventListener("reading", () => {
  // model is a Three.js object instantiated elsewhere.
  model.quaternion.fromArray(sensor.quaternion).inverse();
});
sensor.addEventListener("error", (error) => {
  if (event.error.name === "NotReadableError") {
    console.log("Sensor is not available.");
  }
});
sensor.start();

Berechtigungsbeispiel

Die Verwendung von Orientierungssensoren erfordert die Anforderung von Berechtigungen fr mehrere Gertesensoren. Da die Permissions-Schnittstelle Versprechen verwendet, ist es eine gute Mglichkeit, Berechtigungen mit Promise.all anzufordern.

js
const sensor = new AbsoluteOrientationSensor();
Promise.all([
  navigator.permissions.query({ name: "accelerometer" }),
  navigator.permissions.query({ name: "magnetometer" }),
  navigator.permissions.query({ name: "gyroscope" }),
]).then((results) => {
  if (results.every((result) => result.state === "granted")) {
    sensor.start();
    // 
  } else {
    console.log("No permissions to use AbsoluteOrientationSensor.");
  }
});

Spezifikationen

Spezifikation
Orientation Sensor
# orientationsensor-interface

Browser-Kompatibilitt


Web Proxy Viewer  |  New URL  |  Original Page