XRTransientInputHitTestSource
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 XRTransientInputHitTestSource
-Interface der WebXR Device API verwaltet flüchtige Eingabe-Hittests-Abonnements. Sie können ein XRTransientInputHitTestSource
-Objekt erhalten, indem Sie XRSession.requestHitTestSourceForTransientInput()
aufrufen.
Dieses Objekt selbst enthält keine flüchtigen Eingabe-Hittest-Ergebnisse, sondern es wird verwendet, um für jedes XRFrame
Hittests zu berechnen, indem XRFrame.getHitTestResultsForTransientInput()
aufgerufen wird, was XRTransientInputHitTestResult
-Objekte zurückgibt.
Instanz-Eigenschaften
Keine.
Instanz-Methoden
XRTransientInputHitTestSource.cancel()
Experimentell-
Kündigt das Abonnement für den flüchtigen Eingabe-Hittest.
Beispiele
Erhalten eines XRTransientInputHitTestSource
-Objekts für eine Sitzung
Verwenden Sie die Methode XRSession.requestHitTestSourceForTransientInput()
, um eine Quelle für flüchtige Eingabe-Hittests zu erhalten.
const xrSession = navigator.xr.requestSession("immersive-ar", {
requiredFeatures: ["local", "hit-test"],
});
let transientHitTestSource = null;
xrSession
.requestHitTestSourceForTransientInput({
profile: "generic-touchscreen",
offsetRay: new XRRay(),
})
.then((touchScreenHitTestSource) => {
transientHitTestSource = touchScreenHitTestSource;
});
// frame loop
function onXRFrame(time, xrFrame) {
let hitTestResults = xrFrame.getHitTestResultsForTransientInput(
transientHitTestSource,
);
// do things with the transient hit test results
}
Abbestellen eines flüchtigen Eingabe-Hittests
Um ein Abonnement für eine flüchtige Eingabe-Hittest-Quelle zu kündigen, verwenden Sie die Methode XRTransientInputHitTestSource.cancel()
. Da das Objekt danach nicht mehr nutzbar ist, können Sie bereinigen und das XRTransientInputHitTestSource
-Objekt auf null
setzen.
transientHitTestSource.cancel();
transientHitTestSource = null;
Spezifikationen
Specification |
---|
WebXR Hit Test Module # transient-input-hit-test-source-interface |
Browser-Kompatibilität
BCD tables only load in the browser