4

私はさまざまな変換で行列を表示するプログラムを作成していましたが、回転行列を除いてすべてが機能します。私はそれをいじってみましたが、何もうまくいかないようです

y = input("how many degrees do you want to rotate the shape around the origin?:    ")
j = array([(cos(int(y)), -sin(int(y))), (sin(int(y)), cos(int(y)))])
print(j.dot(w))
input("enter to exit")
4

2 に答える 2

2

マトリックスが正しく定義されていません。試す

rotMatrix = array([[cos(angle), -sin(angle)], 
                   [sin(angle),  cos(angle)]])

ベクトルを定義すると、

vector = array([1, 0])

次に、行列乗算メソッド「ドット」を使用して、このベクトルを原点を中心に回転できます。

vector = rotMatrix.dot(vector)

ベクトルは、原点を中心にangle角度 (前述のように放射角) で回転する必要があります。

于 2013-02-05T21:09:15.087 に答える