//Header
File
#include<iostream.h>
#include
<math.h>
#include
<graphics.h>
int i, j, k;
// INPUT
USER DEFINED CO-ORDINATES
void vm(int
v[3][3])
{
v[0][0]=30;
v[0][1]=10;
v[1][0]=40;
v[1][1]=20;
v[2][0]=30;
v[2][1]=40;
v[2][0] = 1;
v[2][1] = 1;
v[2][2] = 1;
}
// DISPLAY
MATRIX USING FUNCTION OVERLOADING
void
mdsp(int m[3][3])
{
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
cout<< m[i][j];
cout<<"\n";
}
}
void
mdsp(float m[3][3])
{
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
cout<< m[i][j];
cout<<"\n";
}
}
// DISPLAY
TRIANGLE USING FUNCTION OVERLOADING
void
tdsp(int d[3][3])
{
line(d[0][0], d[1][0], d[0][1], d[1][1]);
line(d[0][0], d[1][0], d[0][2], d[1][2]);
line(d[0][1], d[1][1], d[0][2], d[1][2]);
}
void
tdsp(float d[3][3])
{
line((int)d[0][0], (int)d[1][0],
(int)d[0][1], (int)d[1][1]);
line((int)d[0][0], (int)d[1][0],
(int)d[0][2], (int)d[1][2]);
line((int)d[0][1], (int)d[1][1],
(int)d[0][2], (int)d[1][2]);
}
// IDENTITY
MATRIX FUNCTION
void
idenm(int m[3][3])
{
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
m[i][j] = 0;
if (i == j)
m[i][j] = 1;
}
}
}
// TRANSLATION
MATRIX FUNCTION
void
trans(int tx, int ty, int m[3][3])
{
idenm(m);
m[2][0] = tx;
m[2][1] = ty;
}
// SCALING
MATRIX FUNCTION
void
scale(int sx, int sy, int m[3][3])
{
idenm(m);
m[0][0] = sx;
m[1][1] = sy;
}
// ROTATION
MATRIX FUNCTION
void
rotate(double th, float r[3][3])
{
th = (th *22) / (7 *180);
for (i = 0; i < 3; i++)
for (j = 0; j < 3; j++)
{
r[i][j] = 0;
if (i == j)
r[i][j] = 1;
}
r[0][0] = cos(th);
r[0][1] = sin(th);
r[1][0] = -sin(th);
r[1][1] = cos(th);
}
// MATRIX
MULTIPLICATION USING FUNCTION OVERLOADING
void
matmul(int a[3][3], int b[3][3], int r[3][3])
{
for (i = 0; i < 3; i++)
for (j = 0; j < 3; j++)
{
r[i][j] = 0;
for (k = 0; k < 3; k++)
r[i][j] = r[i][j] + (a[i][k] *b[k][j]);
}
}
void
matmul(float a[3][3], int b[3][3], int r[3][3])
{
for (i = 0; i < 3; i++)
for (j = 0; j < 3; j++)
{
r[i][j] = 0;
for (k = 0; k < 3; k++)
r[i][j] = r[i][j] + (a[i][k] *b[k][j]);
}
}
void
matmul(float a[3][3], int b[3][3], float r[3][3])
{
for (i = 0; i < 3; i++)
for (j = 0; j < 3; j++)
{
r[i][j] = 0;
for (k = 0; k < 3; k++)
r[i][j] = r[i][j] + (a[i][k] *b[k][j]);
}
}
void
matmul(int a[3][3], float b[3][3], int r[3][3])
{
for (i = 0; i < 3; i++)
for (j = 0; j < 3; j++)
{
r[i][j] = 0;
for (k = 0; k < 3; k++)
r[i][j] = r[i][j] + (a[i][k] *b[k][j]);
}
}
void
matmul(int a[3][3], float b[3][3], float r[3][3])
{
for (i = 0; i < 3; i++)
for (j = 0; j < 3; j++)
{
r[i][j] = 0;
for (k = 0; k < 3; k++)
r[i][j] = r[i][j] + (a[i][k] *b[k][j]);
}
}
void
matmul(float a[3][3], float b[3][3], float r[3][3])
{
for (i = 0; i < 3; i++)
for (j = 0; j < 3; j++)
{
r[i][j] = 0;
for (k = 0; k < 3; k++)
r[i][j] = r[i][j] + (a[i][k] *b[k][j]);
}
}
}
No comments:
Post a Comment