旋轉矩陣演算法

2021-04-12 22:38:59 字數 1128 閱讀 7705

question:

/*1  2  3  4

12 13 14  5

11 16 15  6

10  9  8  7

*/void func(int n)

要求:通過傳入的n,輸出乙個4*4的矩陣, 順序如上圖所示. 

code:

//nxn矩陣

#include

using namespace std;

#include

//#define maxsize 4

//全域性變數

int value;

void right();          //向左輸入的賦值函式

void down();

void left();

void up();

void show();          //顯示函式

void sort();          //控制方向的函式

int direction = 0;     //控制方向

int rightnum = 0;      //向左輸入一行的次數

int downnum = 0;   

int leftnum = 0; 

int upnum = 0;     

int arraynum = 0;       //自增賦值數

int row = 0;           //儲存行下標

int col =0;            //儲存列下標

int array[100][100];    //儲存陣列

int main()

void sort()

}return;

}void right()

for(int i=n+1; ivoid down()

row=m;

col=n;

leftnum++;

direction = 3;

return;

}void up()

row=m;

col=n;

upnum++;

direction = 0;

return;

}void show()

cout<

旋轉矩陣的演算法

旋轉矩陣是計算機圖形學裡面的基礎內容。之前我還寫過一篇計算機圖形學基礎知識的總結 操作的步驟可以分為兩部,一是沿正對角線對稱,二是沿水平對稱軸對稱 原圖 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 第一步之後 1 5 9 13 2 6 10 14 3 7 11 15...

推到 旋轉矩陣公式 旋轉矩陣公式推導

1.在二維平面中 如下圖所示,在xoyxoy平面中有一向量op x,y top x,y t,旋轉 角後變為向量op x y top x y t。據圖可得 x op cos y op sin x op cos y op sin 經旋轉 角後有 x op cos op cos cos sin sin x...

原地旋轉矩陣

題目 給定乙個大小為n n的矩陣a,如何在空間複雜度為o 1 的情況下,將矩陣順時針旋轉90度?解析 對於矩陣旋轉,最容易想到的便是利用乙個大小同樣為n n的臨時矩陣t,將原矩陣a i j 放在 t j n i 1 位置處。最後將矩陣t的資料拷貝置矩陣a中,完成矩陣的旋轉。但是這種方法的空間複雜度為...