この機能は、Web エンジンにアクセスするための分離されたサービスを提供し、Python で公開することにより、ユーザが VRED で Web エンジンを自動的に再ロードできるようにします。
これは、外部アプリケーションが VRED に UI をストリーミングしている場合、UI が変更されている場合、および UI を再ロードする必要がある場合に必要になります。
vrWebEngineService
、vrdWebEngine
、および vrdUiEngine
を使用します。シーンプレートの Web エンジンがシーンプレートの名前を共有するようになったため、新しいサービスで検索できるようになりました。Web コンテンツを含むシーンプレートにもコマンドを送信します。
このインタフェースは、Python または Web インタフェースを介して使用できます。アクセスするには、JavaScript を使用します。関数の呼び出しは非同期で実行されます。次の例では、このような呼び出しが Web ページからどのように見えるのかを示します。すべてのパラメータと戻り値のタイプは、JavaScript タイプにマッピングされます。たとえば、QVector3D
と QMatrix4x4
は 3 個または 16 個の数値からなる配列にマッピングされます。
<script type="module">
import {api} from '/api.js';
// reacting on a signal
api.vrClusterService.started.connect(() => {console.log('Started')});
// calling a function
api.vrClusterService.start();
// changing the position of the camera
api.vrNodeService.findNode("Perspective")
.then((node) => node.setTranslation([10,20,30]));
</script>