XRHitTestSource
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 in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Das XRHitTestSource Interface der WebXR Device API verwaltet Hit-Test-Abonnements. Sie können ein XRHitTestSource-Objekt mit der Methode XRSession.requestHitTestSource() erhalten.
Dieses Objekt enthält selbst keine Hit-Test-Ergebnisse, aber es wird verwendet, um für jeden XRFrame Hit-Tests zu berechnen, indem XRFrame.getHitTestResults() aufgerufen wird, was XRHitTestResult-Objekte zurückgibt.
Instanz-Eigenschaften
Keine.
Instanz-Methoden
XRHitTestSource.cancel()Experimentell-
Meldet das Abonnement vom Hit-Test ab.
Beispiele
>Erhalten eines XRHitTestSource-Objekts für eine Sitzung
Rufen Sie XRSession.requestHitTestSource() auf, um eine Hit-Test-Quelle zu erhalten.
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;
});
// frame loop
function onXRFrame(time, xrFrame) {
let hitTestResults = xrFrame.getHitTestResults(hitTestSource);
// do things with the hit test results
}
Vom Hit-Test abmelden
Um sich von einer Hit-Test-Quelle abzumelden, rufen Sie XRHitTestSource.cancel() auf. Da das Objekt nicht mehr verwendbar ist, können Sie aufräumen und das XRHitTestSource-Objekt auf null setzen.
hitTestSource.cancel();
hitTestSource = null;
Spezifikationen
| Specification |
|---|
| WebXR Hit Test Module> # hit-test-source-interface> |
Browser-Kompatibilität
Loading…