質問編集履歴
2
イメージ図の挿入
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,13 +1,15 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
|
-
csvデータに含まれる位置情報(xyz値)のデータを行列計算によって回転・移動を行いたいと考えています。具体的には1.原点中心の回転とするために平行移動を行う。2.原点中心に回転を行い、
|
3
|
+
csvデータに含まれる位置情報(xyz値)のデータを行列計算によって回転・移動を行いたいと考えています。具体的には1.原点中心の回転とするために平行移動を行う。2.原点中心に回転を行い、位置情報データをY軸を基準とするように回転を行う。の2点を行いたいと考えています。
|
4
4
|
|
5
5
|
1.については起点なる位置の抽出ができたのですが、2.の回転のフェーズにおいて、csvデータの行ごとの計算方法がわかりません。
|
6
6
|
|
7
7
|
座標の変換を行って、xyzを再びcsvデータとして出力する方法はわかるのですが、回転の計算の部分のみわかりません。よろしくお願いいたします。
|
8
|
+
私が考えている平行移動及び回転のイメージは以下の図のようになっております。
|
9
|
+

|
8
10
|
|
9
11
|
以下、csvデータの一部分です。
|
10
|
-
|
12
|
+
X Y Z
|
11
13
|
18840.76758 -30595.92773 26.81204796
|
12
14
|
18840.75781 -30595.89648 26.83104706
|
13
15
|
18840.7832 -30595.90625 26.82704735
|
@@ -19,7 +21,10 @@
|
|
19
21
|
18840.73633 -30595.875 26.81004715
|
20
22
|
18840.75781 -30595.88477 26.80404663
|
21
23
|
|
24
|
+
また、各行が位置を表しており、これらのデータを以下の式を使って座標変換したいと考えています。
|
25
|
+

|
22
26
|
|
27
|
+
|
23
28
|
### 該当のソースコード
|
24
29
|
|
25
30
|
```ここに言語名を入力
|
@@ -61,7 +66,7 @@
|
|
61
66
|
sinθ = np.sin(np.radians(θ))
|
62
67
|
cosθ = np.cos(np.radians(θ))
|
63
68
|
|
64
|
-
#この式を使って回転・移動を行うため、csvに含まれる位置情報データ
|
69
|
+
#この式を使って回転・移動を行うため、csvに含まれる位置情報データに適応したいです。
|
65
70
|
u = ( X*(cosθ) + Y*(sinθ) - x1 )
|
66
71
|
v = ( -X*(sinθ) + Y*(cosθ) - y1 )
|
67
72
|
|
1
CSVデータの追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -6,6 +6,20 @@
|
|
6
6
|
|
7
7
|
座標の変換を行って、xyzを再びcsvデータとして出力する方法はわかるのですが、回転の計算の部分のみわかりません。よろしくお願いいたします。
|
8
8
|
|
9
|
+
以下、csvデータの一部分です。
|
10
|
+
|
11
|
+
18840.76758 -30595.92773 26.81204796
|
12
|
+
18840.75781 -30595.89648 26.83104706
|
13
|
+
18840.7832 -30595.90625 26.82704735
|
14
|
+
18840.78516 -30595.91016 26.81804657
|
15
|
+
18840.76758 -30595.9082 26.8090477
|
16
|
+
18840.75781 -30595.9082 26.79904747
|
17
|
+
18840.76172 -30595.91211 26.7920475
|
18
|
+
18840.77148 -30595.92188 26.7770462
|
19
|
+
18840.73633 -30595.875 26.81004715
|
20
|
+
18840.75781 -30595.88477 26.80404663
|
21
|
+
|
22
|
+
|
9
23
|
### 該当のソースコード
|
10
24
|
|
11
25
|
```ここに言語名を入力
|