Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
XRRay
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Sicherer Kontext: Diese Funktion ist nur insicheren Kontexten (HTTPS) in einigen oder allenunterstützenden Browsern verfügbar.
Experimentell:Dies ist eineexperimentelle Technologie
Überprüfen Sie dieBrowser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
DasXRRay-Interface derWebXR Device API ist ein geometrischer Strahl, der durch einen Ursprungspunkt und einen Richtungsvektor beschrieben wird.
XRRay-Objekte können anXRSession.requestHitTestSource() oderXRSession.requestHitTestSourceForTransientInput() übergeben werden, um Treffertests durchzuführen.
In diesem Artikel
Konstruktor
XRRay()ExperimentellErstellt ein neues
XRRay-Objekt.
Instanzeigenschaften
XRRay.directionSchreibgeschütztExperimentellEin
DOMPointReadOnly, der den 3-dimensionalen Richtungsvektor des Strahls darstellt.XRRay.matrixSchreibgeschütztExperimentellEine Transformation, die verwendet werden kann, um Objekte entlang des
XRRayzu positionieren. Dies ist eine 4x4-Matrix, die als 16-Elemente-Float32Arrayin Spaltenmajor-Ordnung gegeben ist.XRRay.originSchreibgeschütztExperimentellEin
DOMPointReadOnly, der den 3-dimensionalen Punkt im Raum darstellt, von dem der Strahl ausgeht, in Metern.
Instanzmethoden
Keine.
Beispiele
>Verwendung vonXRRay, um eine Quellen-Treffertestanforderung zu stellen
Die MethodeXRSession.requestHitTestSource() nimmt einXRRay-Objekt für ihreoffsetRay-Option. In diesem Beispiel ist die Treffertestquelle leicht über dem Betrachter positioniert, da die Anwendung einige UI-Elemente am unteren Rand hat, während sie die Wahrnehmung eines zentrierten Cursors beibehalten möchte.
const xrSession = navigator.xr.requestSession("immersive-ar", { requiredFeatures: ["local", "hit-test"],});let hitTestSource = null;xrSession .requestHitTestSource({ space: viewerSpace, // obtained from xrSession.requestReferenceSpace("viewer"); offsetRay: new XRRay({ y: 0.5 }), }) .then((viewerHitTestSource) => { hitTestSource = viewerHitTestSource; });Spezifikationen
| Specification |
|---|
| WebXR Hit Test Module> # xrray-interface> |