Advertisement
Guest User

Untitled

a guest
Mar 29th, 2017
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.91 KB | None | 0 0
  1. #include<iostream>
  2. #include<math.h>
  3. #include"EasyBMP.cpp"
  4.  
  5. using namespace std;
  6.  
  7. int main () {
  8.  
  9. BMP obraz,nowy;
  10. obraz.ReadFromFile("polar.bmp");
  11. int kz, kx,nz,nx;
  12. RGBApixel Px;
  13. int Nz, Nx, mono;
  14. Nz=obraz.TellHeight();
  15. Nx=obraz.TellWidth();
  16. nowy.SetSize(Nx,Nz);
  17.  
  18. double kat,cc,ss;
  19. cout << "Podaj kat: ";
  20. cin >> kat;
  21. kat*=3.141592/180;
  22. cc=cos(kat);
  23. ss=sin(kat);
  24.  
  25. for (nz=0; nz<Nz; nz++) {
  26. for (nx=0; nx<Nx; nx++) {
  27. kx=(int)round((nx-Nx/2)*cc-(nz-Nz/2)*ss+Nx/2);
  28. kz=(int)round((nx-Nx/2)*ss+(nz-Nz/2)*cc+Nz/2);
  29. if (kx>=0 && kx<Nx && kz>=0 && kz<Nz){
  30. nowy.SetPixel(nx,nz, obraz.GetPixel(kx,kz));
  31. }
  32. else {
  33. nowy.SetPixel(nx,nz,Px);
  34. }
  35. }
  36. }
  37.  
  38. nowy.WriteToFile("obrocony.bmp");
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement