/****************************************
 * Transformarea coordonatelor:
 * Rotatia unui set de puncte
 ****************************************/

#include <stdio.h>
#include <conio.h>
#include <iostream.h>
#include <string.h>

#include "transf.h"
#include "IOPunct.h"
#include "Transf.h"
#include "GrPunct.cpp"

void main(void)
{
  TabelPuncte p;
  int nr, i;
  double alfa;
  char *numef   = "Puncte.txt";
  char *numeout = "Puncte.out";
  clrscr();
  cout<<"\nIntrodu unghiul de rotatie: "<<endl; 
  cin>>alfa;                             

  // Citirea coordonatelor punctelor
  nr = readf_puncte(numef ,p);
  if(nr==0) nr = introdu_puncte(p);

  // Initierea modului grafic
  if( ! initGr(DETECT) ){ cout<<"Eroare initializare modul grafic!"; exit(1); }

  // Afisarea coordonatelor inainte de rotatie
  drow_set_puncte(p, nr);
  getch();
  clearviewport();

  // Rotirea setului de puncte
  rot_set_puncte(p, nr, alfa);

  // Afisarea rezultatului
  drow_set_puncte(p, nr);
  getch();

  // Scrierea rezultatului in fisier
  writef_puncte(numeout, p, nr);
  closegraph();
}
