メインコンテンツへスキップ

マウントおよびワークスペースの変換

2つの変換によって、このデバイスはアプリケーション領域内で位置づけられます。 パイプラインの仕組みを理解することで、適切な変換を選択するのに役立ちます。

座標パイプライン​

レベル機能設定永続的?
基礎軸の順序を変更する(例:Z軸が上 → Y軸が上)session.configure.basis — 参照 チュートリアル 08 (HTTPリモート設定)Ja
モンタージュ・トランスフォーメーション装置の物理的な位置ずれ(アームの位置、回転、拡大・縮小)configure.mount oder configure.preset — 参照 チュートリアル 08 (HTTPリモート設定)Ja
ワークスペースの変換カメラナビゲーションおよびシーンナビゲーション時のズレcommands.set_transform — 参照 チュートリアル 09 (WebSocketストリーミング(Takt用))はい(永続的に保存)

モンタージュ・トランスフォーメーション​

「配置」とは、デバイスが物理的にどこにあるか――アームのオフセット、 向き、およびスケール――を表します。これは一度設定される(あるいは物理的な 配置が変更された場合)ものであり、実行時にはめったに更新されません。

初期設定(工場出荷時の設定)​

組み立てを自分で計算する代わりに、名前付きのプリセットを選択してください:

デフォルト設定初期位置腕の位置
defaultsデバイス基盤前面(腕の前面)
arm_frontデバイス基盤ヴォルネ
arm_front_centeredワークスペース・ミッテヴォルネ
led_frontデバイス基盤前面のLEDパネル
led_front_centeredワークスペース・ミッテ前面のLEDパネル
customManuell — 組み立て方法を自分で決める—

プリセットを使用すると、アセンブリ、ベース、およびワークスペースの原点を一度に設定できます。

モンタージュを直接指定する​

{
"inverse3": [{
"device_id": "049D",
"configure": {
"mount": {
"transform": {
"position": { "x": 0.0, "y": 0.0, "z": 0.0 },
"rotation": { "x": 0.0, "y": 0.0, "z": 0.0, "w": 1.0 },
"scale": { "x": 1.0, "y": 1.0, "z": 1.0 }
}
}
}
}]
}
mount und preset 互いに排他的である

同じメッセージ内で両方の情報を同時に送信すると、意味が曖昧になるため、本サービスではこれを拒否します。 どちらか一方を選択してください:名前付き preset (組み立てを決定するもの)または明示的な mount-変容。

コマンドとスナップショットの不一致

ベーム センデン あるモンタージュの中に、その変容を包み込む: { "mount": { "transform": { … } } }. バイム 読む スナップショットからのモンタージュの一つでは、それは平らです: { "mount": { "position": …, "rotation": …, "scale": … } }. これは意図的な仕様です — コマンドでは統一された command_data-Wrapper、Snapshots は、これらをシリアライズする core::transform direkt。

ワークスペースの変換​

ワークスペース変換は、アセンブリ上に適用される実行時ドリフトです。 その代表的な用途はシーンナビゲーションであり、デバイスが物理的にその場に留まったまま、 アプリケーションのビューをパン、回転、またはズームさせるものです。

モンタージュ変換もワークスペース変換も永続的です。このサービスは 最後に送信された値を記憶します。両者の違いは、目的と機能にあります:

  • モンタージュは、一度設定すればそのまま維持されるように設計されています。これは物理的な 構成を表しており、更新頻度が低い場合に最適化されています。
  • Workspace-Transformationは、高頻度でのストリーミング (例:カメラナビゲーション中の各フレームごと)に対応するように設計されており、内部パイプラインは この更新レートに合わせて最適化されています。
{
"inverse3": [{
"device_id": "049D",
"commands": {
"set_transform": {
"transform": {
"position": { "x": 1.0, "y": 0.0, "z": 0.0 },
"rotation": { "x": 0.0, "y": 0.0, "z": 0.0, "w": 1.0 },
"scale": { "x": 1.0, "y": 1.0, "z": 1.0 }
}
}
}
}]
}
スケーリングは出力力に影響を与えます――多くの場合、望ましい形で

組み立て工程や作業スペースのスケール変更は、デバイスが発生させる力に影響を与えます。これは、スケール変更によって 貫入深度 接触力の計算に用いられるパラメータに影響を与えます。例えば、スケール係数を 2x 貫入深さはおよそ(仮想シーンは装置の移動距離に比べて2倍の大きさである)ため、その結果生じる力はおよそ halb ~と同じくらい大きい 1x. 逆に、スケールが 0.5x おおよその力。

これは通常、望ましい動作です。ハプティックシーンからズームアウトすると、接触の強さは自然に弱くなります(「距離が遠くなる」ため)。逆に、ズームインすると接触の強さは強くなります。これが望ましくない場合(たとえば、ユーザーがズームしても剛性を一定に保ちたい場合など)は、力の増幅率を反比例にスケーリングすることでこれを補正してください。

自動ドリフト用ナビゲーションモジュールの使用

継続的な移動が必要な場合(膀胱ナビゲーション、速度制御付きドリフト)、 以下の機能をご利用ください。 ナビゲーションモジュール, ではなく set_transform 各小節ごとに 手動でストリーミング — 物理演算、触覚 フィードバック、およびワークスペース内への制限は、システムが自動的に処理します。