1

Python で 3D 配列内の特定の要素に対して操作を実行しようとしています。配列の例を次に示します。

[[[   0.5         0.5        50.      ]
  [  50.5        50.5       100.      ]
  [   0.5       100.5        50.      ]
  [ 135.         90.         45.      ]]

 [[  50.5        50.5       100.      ]
  [ 100.5         0.5        50.      ]
  [ 100.5       100.5        50.      ]
  [  45.         90.         45.      ]]

 [[ 100.5       100.5        50.      ]
  [ 100.5       100.5         0.      ]
  [   0.5       100.5        50.      ]
  [  90.          0.         90.      ]]

私がする必要があることの例は、配列に見られる 3 つの値、つまり 0.5、0.5、50 を取得し、4 番目の行から最初の要素、つまり 135 を取得し、それらの 4 つの要素を関数に送信することです。関数は、配列に入れる必要がある 3 つの要素の新しい値を返します。

私はPythonにかなり慣れていないので、動作させるのに苦労しています。ループを作るべきですか?または、他の何か?

ありがとうニック

解決策の試み:

b = shape(a)
triangles = b[0]

for k in range(0,triangles):
    for i in range(0,2):
        a[k,i,:] = VectMath.rotate_x(a[k,i,0],a[k,i,1],a[k,i,2],a[k,3,2])
4

1 に答える 1