float d2r(float sd )
{
return sd/180*3.1415926535897932384626433832795;
}
TMatrix MatRotasi(float sd)
{
TMatrix M;
M.m[0][0]=cos(sd);M.m[0][1]=-sin(sd);M.m[0][2]=0;
M.m[1][0]=sin(sd);M.m[1][1]=cos(sd);M.m[1][2]=0;
M.m[2][0]=0;M.m[2][1]=0;M.m[2][2]=1;
return M;
}
TMatrix MatSkala(float Sx,float Sy)
{
TMatrix M;
M.m[0][0]=Sx;M.m[0][1]=0;M.m[0][2]=0;
M.m[1][0]=0;M.m[1][1]=Sy;M.m[1][2]=0;
M.m[2][0]=0;M.m[2][1]=0;M.m[2][2]=1;
return M;
}
TMatrix MatTranslasi(float Dx,float Dy)
{
TMatrix M;
M.m[0][0]=1;M.m[0][1]=0;M.m[0][2]=Dx;
M.m[1][0]=0;M.m[1][1]=1;M.m[1][2]=Dy;
M.m[2][0]=0;M.m[2][1]=0;M.m[2][2]=1;
return M;
}
TMatrix MatKali(TMatrix A, TMatrix B)
{
TMatrix C;
int i,j,k;
for (i=0;i<=2;i++)
{
for (j=0;j<=2;j++)
{
C.m[i][j]=0;
for (k=0;k<=2;k++)
{
C.m[i][j]=C.m[i][j]+A.m[i][k]*B.m[k][j];
}
}
}