void dondurmeayar(){
int i,j,k,secim;
float mtrs[8][4]={0},aci;
printf("\ndondurme acisini giriniz:");
scanf("%f",&aci);
printf("\nhangi eksen etrafinda dondurme\n");
printf("\n1- x ekseni etrafinda dondurme\n");
printf("\n2- y ekseni etrafinda dondurme\n");
printf("\n3- z ekseni etrafinda dondurme\n");
scanf("%d",&secim);
if(secim==1){
float deger[4][4]={{1,0,0,0},
{0,cos(aci*3.14/180),sin(aci*3.14/180),0},
{0,sin(aci*3.14/180)*(-1),cos(aci*3.14/180),0},
{0,0,0,1}};
for(i=0;i<8;i++)
for(j=0;j<4;j++)
for(k=0;k<4;k++)
mtrs[i][j]=mtrs[i][j] + (matris[i][k])*(deger[k][j]);
}
else if(secim==2){
float deger[4][4]={{cos(aci*3.14/180),0,sin(aci*3.14/180)*(-1),0},
{0,1,0,0},
{sin(aci*3.14/180),0,cos(aci*3.14/180),0},
{0,0,0,1}};
for(i=0;i<8;i++)
for(j=0;j<4;j++)
for(k=0;k<4;k++)
mtrs[i][j]=mtrs[i][j] + (matris[i][k])*(deger[k][j]);
}
else if(secim==3){
float deger[4][4]={{cos(aci*3.14/180),sin(aci*3.14/180),0,0},
{sin(aci*3.14/180)*(-1),cos(aci*3.14/180),0,0},
{0,0,1,0},
{0,0,0,1}};
for(i=0;i<8;i++)
for(j=0;j<4;j++)
for(k=0;k<4;k++)
mtrs[i][j]=mtrs[i][j] + (matris[i][k])*(deger[k][j]);
}
for(i=0;i<8;i++)
for(j=0;j<4;j++)
matris[i][j]=mtrs[i][j];
for(i=0;i<8;i++){
printf("\n");
for(j=0;j<4;j++){
printf("%f ",matris[i][j]);}}
}
Hiç yorum yok:
Yorum Gönder