Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<d:\grafika lab_2\grafika lab_2\glut.h>
- #include<math.h>
- #define M_PI 3.14159265358979323846
- void myInit(void);
- void myDisplay(void);
- int main(int argc, char **argv) {
- glutInit(&argc, argv);
- glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
- glutInitWindowSize(640, 480);
- glutInitWindowPosition(100, 150);
- glutCreateWindow("Lab 2");
- myInit();
- glutDisplayFunc(myDisplay);
- glutMainLoop();
- }
- void myInit(void) {
- glClearColor(1.0, 1.0, 1.0, 1.0);
- glColor3f(0.0f, 0.0f, 0.0f);
- glPointSize(4.0);
- glMatrixMode(GL_PROJECTION);
- glLoadIdentity();
- gluOrtho2D(0, 640, 0, 480);
- }
- void myDisplay(void) {
- glClear(GL_COLOR_BUFFER_BIT);
- glBegin(GL_TRIANGLES);
- glVertex2d(160, 150);
- glVertex2d(110, 200);
- glVertex2d(50, 55);
- glEnd();
- GLubyte christmas[] = {
- 0x00, 0x00, 0xC0, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x3F, 0xC0, 0xC0, 0x00,
- 0x26, 0x47, 0xF8, 0x00,
- 0x26, 0x43, 0xF0, 0x00,
- 0x3F, 0xC1, 0xE0, 0x00,
- 0x3F, 0xC7, 0xF8, 0x00,
- 0x26, 0x43, 0xF0, 0x00,
- 0x26, 0x41, 0xE0, 0x00,
- 0x3F, 0xC7, 0xF8, 0x00,
- 0x0F, 0x03, 0xF0, 0x00,
- 0x16, 0x81, 0xE6, 0x30,
- 0x09, 0x01, 0xE5, 0x50,
- 0x00, 0x00, 0xC2, 0xA0,
- 0x00, 0x00, 0x06, 0x30,
- 0x00, 0x00, 0x08, 0x08,
- 0x00, 0x00, 0x10, 0x04,
- 0x00, 0x00, 0x3C, 0x1E,
- 0x00, 0x00, 0x02, 0x10,
- 0x00, 0x00, 0x01, 0x40,
- 0x00, 0x00, 0x01, 0x40,
- 0x00, 0x00, 0x00, 0x80,
- 0x00, 0x00, 0x00, 0x00
- };
- glEnable(GL_POLYGON_STIPPLE);
- glPolygonStipple(christmas);
- glBegin(GL_QUADS);
- glVertex2d(300, 20);
- glVertex2d(250, 270);
- glVertex2d(500, 320);
- glVertex2d(500, 20);
- glEnd();
- glDisable(GL_POLYGON_STIPPLE);
- glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
- glBegin(GL_POLYGON);
- glVertex2d(30, 360);
- glVertex2d(200, 450);
- glVertex2d(200, 320);
- glVertex2d(170, 260);
- glVertex2d(20, 350);
- glEnd();
- glBegin(GL_TRIANGLES);
- glVertex2d(250, 470);
- glEdgeFlag(GL_FALSE);
- glVertex2d(250, 380);
- glVertex2d(320, 425);
- glEdgeFlag(GL_TRUE);
- glEnd();
- glBegin(GL_TRIANGLES);
- glVertex2d(250, 470);
- glVertex2d(500, 470);
- glEdgeFlag(GL_FALSE);
- glVertex2d(320, 425);
- glEdgeFlag(GL_TRUE);
- glEnd();
- glBegin(GL_TRIANGLES);
- glVertex2d(320, 425);
- glVertex2d(500, 380);
- glEdgeFlag(GL_FALSE);
- glVertex2d(250, 380);
- glEdgeFlag(GL_TRUE);
- glEnd();
- glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
- glFlush();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement