シーン内にトランスフォームコントロールを使用している場合のみ、矢印を2つ表示するかXY方向にオブジェクトを変形する必要があります。Three.jsトランスフォームコントロール - 2つの矢印のみを表示する方法
0
A
答えて
2
通常、これまでに試したことはありますが、このコントロールのドキュメントはありません。あなたが探しているものがわからない場合は、かなり複雑なオブジェクトです。
TranformControls
という名前のcontrol
があるとします。
control.children
は、インデックス「0
」が翻訳されているさまざまな「ギズモ」を表す配列です。その "ギズモ"にも3人の子供がいますが、最初のものだけがこの答えに関連しています。だから私たちは子どもを持っているcontrol.children[0].children[0]
を見ていませんが、これらの子はさまざまな軸のコントロールを表すメッシュなので、これは深いです。参考までには、control.children[0].children[0].children
をご覧ください。
TransformControls.js
はこのような彼らのセットアップ構成を示します:
//three.js r89
this.handleGizmos = {
X: [
[new THREE.Mesh(arrowGeometry, new GizmoMaterial({
color: 0xff0000
})), [0.5, 0, 0],
[0, 0, -Math.PI/2]
],
[new THREE.Line(lineXGeometry, new GizmoLineMaterial({
color: 0xff0000
}))]
],
Y: [
[new THREE.Mesh(arrowGeometry, new GizmoMaterial({
color: 0x00ff00
})), [0, 0.5, 0]],
[new THREE.Line(lineYGeometry, new GizmoLineMaterial({
color: 0x00ff00
}))]
],
Z: [
[new THREE.Mesh(arrowGeometry, new GizmoMaterial({
color: 0x0000ff
})), [0, 0, 0.5],
[Math.PI/2, 0, 0]
],
[new THREE.Line(lineZGeometry, new GizmoLineMaterial({
color: 0x0000ff
}))]
],
XYZ: [
[new THREE.Mesh(new THREE.OctahedronGeometry(0.1, 0), new GizmoMaterial({
color: 0xffffff,
opacity: 0.25
})), [0, 0, 0],
[0, 0, 0]
]
],
XY: [
[new THREE.Mesh(new THREE.PlaneBufferGeometry(0.29, 0.29), new GizmoMaterial({
color: 0xffff00,
opacity: 0.25
})), [0.15, 0.15, 0]]
],
YZ: [
[new THREE.Mesh(new THREE.PlaneBufferGeometry(0.29, 0.29), new GizmoMaterial({
color: 0x00ffff,
opacity: 0.25
})), [0, 0.15, 0.15],
[0, Math.PI/2, 0]
]
],
XZ: [
[new THREE.Mesh(new THREE.PlaneBufferGeometry(0.29, 0.29), new GizmoMaterial({
color: 0xff00ff,
opacity: 0.25
})), [0.15, 0, 0.15],
[-Math.PI/2, 0, 0]
]
]
};
制御はX軸制御を構成するメッシュはインデックス0と1
あるように、これらの定義を取り、順番にcontrol.children[0].children[0].children
に追加します
これは、X軸制御をオフにすることを意味し、あなたが設定する必要があります:のオンにする、
同様control.children[0].children[0].children[0].visible = false;
control.children[0].children[0].children[1].visible = false;
をYZ平面制御fはあなたが設定します:あなたが使用しているかを制御を決定するために使用raycaster
は目に見えないメッシュを無視するため、これらのメッシュのための可視性を設定
control.children[0].children[0].children[8].visible = false;
は、十分です。メッシュがなくなると、その軸/平面が変形可能であるというユーザーの知識も削除されます。
関連する問題
- 1. 下矢印シンボルの表示方法
- 2. Extjsボタンのメニュー矢印を非表示にする方法
- 3. nivoスライダーは、次の矢印と前の矢印を常に表示する方法ですか?
- 4. 左矢印と右矢印のシンボルをWindowsのグリッドリスト/リストビューに表示する方法ユニバーサルアプリケーション開発
- 5. カスタムアンドロイドキーボードの上矢印と下矢印を定義する方法
- 6. htmlネイティブコンボボックス、表示ドロップダウン矢印
- 7. 2つの要素の間の矢印
- 8. Android Honeycomb:ActionBarのスピナーに右隅の矢印を表示する方法
- 9. 矢印のクリック時の表のドロップダウンリストの選択値の表示方法
- 10. ライトボックス2 - 前と次の矢印が表示されない
- 11. PopoverPresentationControllerの矢印をスキンする方法
- 12. ホバースライドショーのときだけ矢印を表示する方法html css javascript
- 13. TListView列に並べ替えの矢印を表示する方法は?
- 14. VTK.jsライブラリに矢印を表示
- 15. AngularJS - グリフコン付きの矢印アイコンの表示と非表示
- 16. 読み取りコマンドで矢印キーを許可する方法
- 17. matplotlibの矢印で色のグラデーションを持つ矢印
- 18. アンドロイドEditText奇妙な矢印表示
- 19. フレックススライダ - ナビゲーション矢印ホバーまで表示
- 20. グリッドビューソート矢印が表示されない
- 21. フォントドロップダウン矢印が表示されない
- 22. ハイチャートで矢印として表示バー
- 23. QScrollBarの矢印を非表示にする
- 24. BBEditのタブ矢印を非表示にする
- 25. モバイルのアンプカルーセルでナビゲーション矢印を表示するには
- 26. PythonのtkMessageBoxに矢印シンボルを表示するには?
- 27. divの全文を表示する矢印
- 28. 前へ戻る矢印内の矢印
- 29. Selectizeで右矢印キーと左矢印キーを有効にする方法
- 30. THREE.jsのArrowHelperで作成されたラベル矢印
ありがとうございます。 –