質問編集履歴

4

変更した

2021/01/02 00:55

投稿

takahashi-one
takahashi-one

スコア120

test CHANGED
@@ -1 +1 @@
1
- Threejs ジンバルロッ
1
+ Threejs オブトの3D回転
test CHANGED
@@ -1,41 +1,3 @@
1
- Threejsでオブジェクトの回転をた。しし、
1
+ 3Dのオブジェクトの回転は常に親子関係意識なければならなのでょう
2
2
 
3
- Y軸を90度回転させるとX軸とZ軸の回転が同じになってしまいます。
4
-
5
- 調べるとジンバルロックというものらしいです。
6
-
7
- そしてネットで調べて下記のようにコードに変更しました。
8
-
9
- しかし、Y軸90度回転させるとX軸の回転正しいのでが、
3
+ 親子関係意識せずに回転させる方法ありまか?
10
-
11
- Z軸がX軸の回転になってしまい、結果X軸とZ軸が同じ回転になってしまいます。
12
-
13
- 何が悪いのでしょうか?
14
-
15
- ```threejs
16
-
17
- var axisX = new THREE.Vector3(1, 0, 0);
18
-
19
- var axisY = new THREE.Vector3(0, 1, 0);
20
-
21
- var axisZ = new THREE.Vector3(0, 0, 1);
22
-
23
- var quatX = new THREE.Quaternion();
24
-
25
- var quatY = new THREE.Quaternion();
26
-
27
- var quatZ = new THREE.Quaternion();
28
-
29
- quatX.setFromAxisAngle(axisX, controls.rotationX);
30
-
31
- quatY.setFromAxisAngle(axisY, controls.rotationY);
32
-
33
- quatZ.setFromAxisAngle(axisZ, controls.rotationZ);
34
-
35
- quatY.multiply(quatX);
36
-
37
- quatZ.multiply(quatY);
38
-
39
- shape.quaternion.copy(quatZ);
40
-
41
- ```

3

変更した

2021/01/02 00:55

投稿

takahashi-one
takahashi-one

スコア120

test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  そしてネットで調べて下記のようにコードに変更しました。
8
8
 
9
- しかし、Y軸を90度回転させるX軸の回転は正しいのですが、
9
+ しかし、Y軸を90度回転させるX軸の回転は正しいのですが、
10
10
 
11
11
  Z軸がX軸の回転になってしまい、結果X軸とZ軸が同じ回転になってしまいます。
12
12
 

2

変更した

2020/12/29 12:27

投稿

takahashi-one
takahashi-one

スコア120

test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,9 @@
6
6
 
7
7
  そしてネットで調べて下記のようにコードに変更しました。
8
8
 
9
+ しかし、Y軸を90度回転させるX軸の回転は正しいのですが、
10
+
9
- しかし、Y軸を90度回転させるX軸の回転は正しいのですが、Z軸がX軸の回転になってしまい、結果X軸とZ軸が同じ回転になってしまいます。
11
+ Z軸がX軸の回転になってしまい、結果X軸とZ軸が同じ回転になってしまいます。
10
12
 
11
13
  何が悪いのでしょうか?
12
14
 

1

変更した

2020/12/28 14:31

投稿

takahashi-one
takahashi-one

スコア120

test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  そしてネットで調べて下記のようにコードに変更しました。
8
8
 
9
- しかし、相変わらずY軸を90度回転させるX軸Z軸の回転が同じになっています。
9
+ しかし、Y軸を90度回転させるX軸の回転は正しいのですが、Z軸がX軸の回転になってしまい、結果X軸とZ軸が同じ回転になってしまいます。
10
10
 
11
11
  何が悪いのでしょうか?
12
12