hello

🧩 Syntax:
#include<GL/glut.h>
#include<GL/GL.h>
#include<GL/GLU.h>
#include<math.h>

using namespace std;

int flag = 0;
float fx = 40, fy = 50;
float theta = 30;

//                 p0      p1        p2     p3     p4       p5      p6     p7      p8 
float p[9][2] = { {20,40},{20,20},{30,20},{50,20},{60,20},{30,30},{50,30},{40,50},{60,40}, };

void my_init()
{
	glMatrixMode(GL_PROJECTION_MATRIX);
	glLoadIdentity();
	gluOrtho2D(0, 100, 0, 100);
	glMatrixMode(GL_MODELVIEW);
}

void draw_house(float m[9][2])
{
	glColor3f(1, 0, 0);
	glBegin(GL_LINE_LOOP);
	glVertex2fv(m[0]);
	glVertex2fv(m[1]);
	glVertex2fv(m[4]);
	glVertex2fv(m[8]);
	glEnd();

	glBegin(GL_LINE_STRIP);
	glVertex2fv(m[2]);
	glVertex2fv(m[5]);
	glVertex2fv(m[6]);
	glVertex2fv(m[3]);
	glEnd();

	glBegin(GL_LINE_STRIP);
	glVertex2fv(m[0]);
	glVertex2fv(m[7]);
	glVertex2fv(m[8]);
	glEnd();

}

void disp()
{
	glClearColor(1, 1, 1, 1);
	glClear(GL_COLOR_BUFFER_BIT);
	/*
	if (flag == 0)
	{
		draw_house(p);
		flag = 1;
		glFlush();
	}
	*/

	float r[9][2];
	float pi = 3.14 / 180;
	for (int i = 0; i < 9; i++)
	{
		
		int x = p[i][0];
		int y = p[i][1];
		float xa = x * cos(theta*pi) - y * sin(theta*pi) + fx * (1 - cos(theta*pi)) + sin(theta*pi)*fy;
		float ya = x * sin(theta*pi) + y * sin(theta*pi) + fy * (1 - cos(theta*pi)) - sin(theta*pi)*fx;
		r[i][0] = xa;
		r[i][1] = ya;
		// cout << r[i][0] << r[i][1];
	}
	draw_house(p);
	draw_house(r);
	glFlush();

	
}

int main()
{
	glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
	glutInitWindowSize(500, 500);
	glutCreateWindow("Hello");
	my_init();
	glutDisplayFunc(disp);
	glutMainLoop();
}