Code Competitions

Coding competition

Tuesday, 14 May 2013

program to Code for header file “Headr.h” Used for various transforms.


//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