Advertisement
Guest User

Untitled

a guest
Jan 20th, 2020
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.14 KB | None | 0 0
  1. #include <iostream>
  2. #include <graphics.h>
  3. #include <math.h>
  4. #include <fstream>
  5. #define PI 3.1415
  6. #define N 16
  7. #define R 80
  8.  
  9. int poligon[2*N+2];
  10. int poligon2[2*N+2];
  11. using namespace std;
  12.  
  13. void waitForLeftMouseClick();
  14.  
  15. void generarePCTE() //genereaza punctele poligonului
  16. {
  17. double alfa = 2*PI/N;
  18. for(int i=0; i<N+1; i++)
  19. {
  20. poligon[2*i] = R*cos(i*alfa); //coordonare x
  21. poligon[2*i+1] = R*sin(i*alfa); // coordonate y pe poz impare
  22. }
  23. }
  24. void generarePCTE2() //genereaza punctele poligonului
  25. {
  26. double alfa = 2*PI/N;
  27. for(int i=0; i<N+1; i++)
  28. {
  29. poligon2[2*i] = R*2.5*cos(i*alfa); //coordonare x
  30. poligon2[2*i+1] = R*2.5*sin(i*alfa); // coordonate y pe poz impare
  31. }
  32. }
  33.  
  34. void translatie(int points[], int tx, int ty) //se face translatia
  35. {
  36. for(int i=0; i<N+1; i++)
  37. {
  38. points[2*i] = points[2*i] + tx;
  39. points[2*i+1]= points[2*i+1] + ty;
  40. }
  41. }
  42. int main()
  43. {
  44. initwindow(800,600);
  45. generarePCTE();
  46. generarePCTE2();
  47. translatie(poligon,420,250);
  48. drawpoly(17,poligon);
  49. translatie(poligon2,420,250);
  50. drawpoly(17,poligon2);
  51. /* line(poligon[0],poligon[1],poligon[2],poligon[3]);
  52. line(poligon2[2],poligon2[3],poligon2[4],poligon2[5]);
  53. line(poligon[2],poligon[3],poligon2[2],poligon2[3]);
  54. line(poligon2[4],poligon2[5],poligon[4],poligon[5]);
  55. line(poligon[4],poligon[5],poligon[6],poligon[7]);
  56. line(poligon[6],poligon[7],poligon2[6],poligon2[7]);
  57. line(poligon2[6],poligon2[7],poligon2[8],poligon2[9]);
  58. line(poligon2[8],poligon2[9],poligon[8],poligon[9]);
  59. line(poligon[8],poligon[9],poligon[10],poligon[11]);
  60. line(poligon[10],poligon[11],poligon2[10],poligon2[11]);
  61. line(poligon2[10],poligon2[11],poligon2[12],poligon2[13]);
  62. line(poligon2[12],poligon2[13],poligon[12],poligon[13]);
  63. */
  64. waitForLeftMouseClick();
  65. }
  66.  
  67. void waitForLeftMouseClick()
  68. {
  69. clearmouseclick(WM_LBUTTONDOWN);
  70. const int DELAY = 50; // Milliseconds of delay between checks
  71. int x, y;
  72. while (!ismouseclick(WM_LBUTTONDOWN))
  73. delay(DELAY);
  74. getmouseclick(WM_LBUTTONDOWN, x, y);
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement