Last active
August 29, 2015 14:20
-
-
Save itssalman/12a83cdb7294415a72b5 to your computer and use it in GitHub Desktop.
OPENGL: house.cpp
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <windows.h> | |
#include <GL\glew.h> | |
#include <GL\freeglut.h> | |
// Salman Aslam | |
void SalmanAslamDisplay(void); // define function to display output | |
void SalmanAslamDrawDot(); // define function to draw dots | |
void SalmanAslamDrawDot(){ | |
glClear(GL_COLOR_BUFFER_BIT); //Clear the screen | |
//drawing walls of house | |
glBegin(LC_POLYMARKER); | |
// points to draw face | |
glVertex2f(32, 435); | |
glVertex2f(10, 439); | |
glVertex2f(4, 438); | |
glVertex2f(2, 433); | |
glVertex2f(4, 428); | |
glVertex2f(6, 425); | |
glVertex2f(10, 420); | |
glVertex2f(15, 416); | |
glVertex2f(21, 413); | |
glVertex2f(30, 408); | |
glVertex2f(42, 406); | |
glVertex2f(47, 403); | |
glVertex2f(56, 398); | |
glVertex2f(63, 391); | |
glVertex2f(71, 383); | |
glVertex2f(79, 369); | |
glVertex2f(84, 356); | |
glVertex2f(87, 337); | |
glVertex2f(89, 316); | |
glVertex2f(88, 302); | |
glVertex2f(86, 294); | |
glVertex2f(83, 278); | |
glVertex2f(79, 256); | |
glVertex2f(78, 235); | |
glVertex2f(79, 220); | |
glVertex2f(85, 204); | |
glVertex2f(94, 190); | |
glVertex2f(98, 183); | |
glVertex2f(98, 182); | |
glVertex2f(116, 189); | |
glVertex2f(105, 184); | |
glVertex2f(98, 172); | |
glVertex2f(98, 156); | |
glVertex2f(93, 141); | |
glVertex2f(93, 132); | |
glVertex2f(99, 122); | |
glVertex2f(104, 115); | |
glVertex2f(104, 114); | |
// points to draw uper neck | |
glVertex2f(153, 116); | |
glVertex2f(152, 112); | |
glVertex2f(153, 107); | |
glVertex2f(154, 93); | |
glVertex2f(154, 81); | |
glVertex2f(152, 67); | |
glVertex2f(146, 56); | |
glVertex2f(140, 47); | |
glVertex2f(136, 39); | |
glVertex2f(133, 30); | |
glVertex2f(130, 17); | |
glVertex2f(128, 7); | |
glVertex2f(127, 3); | |
glVertex2f(93, 2); | |
glVertex2f(93, 10); | |
glVertex2f(96, 16); | |
glVertex2f(96, 20); | |
glVertex2f(97, 21); | |
glVertex2f(101, 24); | |
glVertex2f(104, 27); | |
glVertex2f(105, 31); | |
glVertex2f(107, 36); | |
glVertex2f(108, 40); | |
glVertex2f(109, 47); | |
glVertex2f(111, 51); | |
glVertex2f(114, 58); | |
glVertex2f(118, 66); | |
glVertex2f(120, 71); | |
glVertex2f(118, 79); | |
glVertex2f(117, 88); | |
glVertex2f(116, 97); | |
glVertex2f(112, 105); | |
glVertex2f(107, 113); | |
glVertex2f(107, 118); | |
glVertex2f(108, 126); | |
glVertex2f(112, 138); | |
glVertex2f(116, 146); | |
glVertex2f(118, 148); | |
// points to draw tail | |
glVertex2f(153, 95); | |
glVertex2f(158, 9); | |
glVertex2f(159, 103); | |
glVertex2f(161, 108); | |
glVertex2f(161, 115); | |
glVertex2f(160, 121); | |
glVertex2f(160, 122); | |
glVertex2f(156, 80); | |
glVertex2f(167, 79); | |
glVertex2f(182, 76); | |
glVertex2f(203, 73); | |
glVertex2f(220, 78); | |
glVertex2f(235, 79); | |
glVertex2f(239, 80); | |
glVertex2f(262, 154); | |
glVertex2f(259, 141); | |
glVertex2f(259, 123); | |
glVertex2f(257, 110); | |
glVertex2f(255, 93); | |
glVertex2f(259, 86); | |
glVertex2f(272, 74); | |
glVertex2f(287, 46); | |
glVertex2f(290, 41); | |
glVertex2f(299, 30); | |
glVertex2f(305, 21); | |
glVertex2f(307, 15); | |
glVertex2f(307, 12); | |
glVertex2f(300, 11); | |
glVertex2f(299, 9); | |
glVertex2f(301, 2); | |
glVertex2f(303, 1); | |
glVertex2f(313, 5); | |
glVertex2f(320, 7); | |
glVertex2f(307, 1); | |
glVertex2f(336, 2); | |
glVertex2f(336, 8); | |
glVertex2f(334, 18); | |
glVertex2f(335, 24); | |
glVertex2f(331, 29); | |
glVertex2f(327, 39); | |
glVertex2f(323, 45); | |
glVertex2f(317, 54); | |
glVertex2f(312, 63); | |
glVertex2f(308, 70); | |
glVertex2f(301, 79); | |
glVertex2f(297, 86); | |
glVertex2f(296, 97); | |
glVertex2f(300, 109); | |
glVertex2f(303, 120); | |
glVertex2f(304, 126); | |
glVertex2f(307, 138); | |
glVertex2f(306, 148); | |
glVertex2f(305, 152); | |
glVertex2f(298, 86); | |
glVertex2f(304, 92); | |
glVertex2f(310, 104); | |
glVertex2f(314, 114); | |
glVertex2f(314, 119); | |
glVertex2f(255, 98); | |
glVertex2f(251, 100); | |
glVertex2f(246, 105); | |
glVertex2f(242, 112); | |
glVertex2f(236, 122); | |
glVertex2f(231, 131); | |
glVertex2f(233, 126); | |
glVertex2f(271, 73); | |
glVertex2f(264, 74); | |
glVertex2f(257, 76); | |
glVertex2f(244, 76); | |
glVertex2f(236, 80); | |
glVertex2f(231, 84); | |
glVertex2f(230, 86); | |
glVertex2f(242, 77); | |
glVertex2f(242, 70); | |
glVertex2f(245, 61); | |
glVertex2f(246, 49); | |
glVertex2f(248, 39); | |
glVertex2f(249, 30); | |
glVertex2f(248, 19); | |
glVertex2f(245, 12); | |
glVertex2f(242, 9); | |
glVertex2f(241, 6); | |
glVertex2f(243, 1); | |
glVertex2f(256, 3); | |
glVertex2f(259, 2); | |
glVertex2f(266, 3); | |
glVertex2f(271, 4); | |
glVertex2f(274, 9); | |
glVertex2f(277, 16); | |
glVertex2f(277, 24); | |
glVertex2f(277, 31); | |
glVertex2f(277, 41); | |
glVertex2f(277, 48); | |
glVertex2f(278, 57); | |
glVertex2f(278, 62); | |
glVertex2f(278, 66); | |
glVertex2f(190, 73); | |
glVertex2f(191, 64); | |
glVertex2f(191, 64); | |
glVertex2f(191, 64); | |
glVertex2f(191, 64); | |
glVertex2f(193, 51); | |
glVertex2f(194, 39); | |
glVertex2f(191, 25); | |
glVertex2f(189, 17); | |
glVertex2f(185, 7); | |
glVertex2f(184, 5); | |
glVertex2f(177, 4); | |
glVertex2f(169, 4); | |
glVertex2f(166, 4); | |
glVertex2f(159, 5); | |
glVertex2f(159, 6); | |
glVertex2f(162, 19); | |
glVertex2f(163, 25); | |
glVertex2f(165, 32); | |
glVertex2f(165, 39); | |
glVertex2f(165, 47); | |
glVertex2f(165, 57); | |
glVertex2f(162, 65); | |
glVertex2f(161, 70); | |
glVertex2f(159, 75); | |
glVertex2f(158, 78); | |
glVertex2f(157, 80); | |
//poimts to draw legs | |
glVertex2f(96, 157); | |
glVertex2f(93, 163); | |
glVertex2f(88, 176); | |
glVertex2f(82, 184); | |
glVertex2f(78, 193); | |
glVertex2f(75, 201); | |
glVertex2f(72, 212); | |
glVertex2f(72, 224); | |
glVertex2f(72, 238); | |
glVertex2f(73, 254); | |
glVertex2f(75, 267); | |
glVertex2f(78, 277); | |
glVertex2f(82, 286); | |
glVertex2f(89, 298); | |
glVertex2f(89, 300); | |
glVertex2f(33, 428); | |
glVertex2f(33, 428); | |
glVertex2f(33, 427); | |
glVertex2f(35, 426); | |
glVertex2f(36, 425); | |
glVertex2f(30, 427); | |
glVertex2f(27, 428); | |
glVertex2f(27, 428); | |
glVertex2f(28, 428); | |
glVertex2f(2, 435); | |
glVertex2f(5, 434); | |
glVertex2f(10, 432); | |
glVertex2f(13, 431); | |
glVertex2f(16, 429); | |
glVertex2f(19, 427); | |
glVertex2f(21, 426); | |
glVertex2f(22, 425); | |
glVertex2f(24, 424); | |
glVertex2f(26, 423); | |
glVertex2f(27, 423); | |
glVertex2f(30, 422); | |
glVertex2f(33, 422); | |
glVertex2f(34, 421); | |
glVertex2f(36, 420); | |
glVertex2f(36, 419); | |
glVertex2f(32, 436); | |
glVertex2f(55, 423); | |
glVertex2f(67, 415); | |
glVertex2f(75, 409); | |
glVertex2f(86, 401); | |
glVertex2f(92, 395); | |
glVertex2f(98, 389); | |
glVertex2f(105, 378); | |
glVertex2f(107, 372); | |
glVertex2f(111, 362); | |
glVertex2f(112, 355); | |
glVertex2f(116, 345); | |
glVertex2f(119, 338); | |
glVertex2f(121, 328); | |
glVertex2f(124, 317); | |
glVertex2f(125, 312); | |
glVertex2f(125, 304); | |
glVertex2f(126, 294); | |
glVertex2f(125, 288); | |
glVertex2f(124, 280); | |
glVertex2f(125, 277); | |
glVertex2f(125, 258); | |
glVertex2f(124, 255); | |
glVertex2f(125, 241); | |
glVertex2f(128, 235); | |
glVertex2f(135, 225); | |
glVertex2f(141, 218); | |
glVertex2f(147, 211); | |
glVertex2f(155, 208); | |
glVertex2f(166, 205); | |
glVertex2f(178, 203); | |
glVertex2f(194, 202); | |
glVertex2f(209, 203); | |
glVertex2f(219, 204); | |
glVertex2f(232, 205); | |
glVertex2f(249, 206); | |
glVertex2f(259, 207); | |
glVertex2f(284, 205); | |
glVertex2f(300, 198); | |
glVertex2f(317, 189); | |
glVertex2f(333, 182); | |
glVertex2f(345, 170); | |
glVertex2f(362, 153); | |
glVertex2f(392, 135); | |
glVertex2f(430, 118); | |
glVertex2f(450, 104); | |
glVertex2f(477, 91); | |
glVertex2f(509, 75); | |
glVertex2f(539, 65); | |
glVertex2f(567, 61); | |
glVertex2f(599, 60); | |
glVertex2f(625, 59); | |
glVertex2f(635, 58); | |
glVertex2f(632, 54); | |
glVertex2f(616, 51); | |
glVertex2f(602, 46); | |
glVertex2f(593, 46); | |
glVertex2f(580, 45); | |
glVertex2f(565, 41); | |
glVertex2f(546, 38); | |
glVertex2f(526, 36); | |
glVertex2f(502, 42); | |
glVertex2f(487, 48); | |
glVertex2f(468, 53); | |
glVertex2f(452, 57); | |
glVertex2f(434, 63); | |
glVertex2f(414, 71); | |
glVertex2f(397, 77); | |
glVertex2f(378, 82); | |
glVertex2f(366, 86); | |
glVertex2f(352, 90); | |
glVertex2f(338, 92); | |
glVertex2f(328, 91); | |
glVertex2f(319, 88); | |
glVertex2f(307, 86); | |
glVertex2f(306, 85); | |
glVertex2f(301, 85); | |
glVertex2f(318, 106); | |
glVertex2f(333, 107); | |
glVertex2f(346, 109); | |
glVertex2f(359, 111); | |
glVertex2f(369, 104); | |
glVertex2f(391, 100); | |
glVertex2f(411, 95); | |
glVertex2f(431, 87); | |
glVertex2f(445, 81); | |
glVertex2f(458, 71); | |
glVertex2f(473, 63); | |
glVertex2f(491, 59); | |
glVertex2f(497, 57); | |
glVertex2f(499, 56); | |
// points lower neck | |
glVertex2f(244, 109); | |
glVertex2f(235, 104); | |
glVertex2f(221, 100); | |
glVertex2f(208, 96); | |
glVertex2f(199, 97); | |
glVertex2f(190, 98); | |
glVertex2f(190, 98); | |
glVertex2f(160, 116); | |
glVertex2f(165, 119); | |
glVertex2f(171, 122); | |
glVertex2f(172, 127); | |
glVertex2f(170, 135); | |
glVertex2f(168, 144); | |
glVertex2f(170, 149); | |
glVertex2f(174, 149); | |
glVertex2f(169, 118); | |
glVertex2f(174, 120); | |
glVertex2f(179, 124); | |
glVertex2f(178, 126); | |
glVertex2f(293, 132); | |
glVertex2f(294, 125); | |
glVertex2f(297, 115); | |
glVertex2f(291, 94); | |
glVertex2f(287, 90); | |
glVertex2f(290, 84); | |
glVertex2f(297, 79); | |
glVertex2f(297, 79); | |
glVertex2f(144, 97); | |
glVertex2f(143, 83); | |
glVertex2f(144, 72); | |
glVertex2f(141, 58); | |
glVertex2f(136, 52); | |
glVertex2f(134, 49); | |
glEnd(); | |
glFlush(); | |
} | |
void Init() { | |
glClearColor(1.0, 1.0, 1.0, 0.0); | |
glColor3f(0.0f, 0.0f, 0.0f); | |
glPointSize(2.0); | |
glMatrixMode(GL_PROJECTION); | |
glOrtho(0, 500, 0, 500, -1, 1); | |
glMatrixMode(GL_MODELVIEW); | |
} | |
void SalmanAslamDisplay(void) { | |
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); | |
// Code to draw | |
glBegin(GL_LINES); | |
SalmanAslamDrawDot(); // function to draw dots | |
glEnd(); | |
glutSwapBuffers(); | |
} | |
int main(int argc, char **argv) { | |
glutInitWindowSize(500, 500); | |
glutInit(&argc, argv); | |
glutInitDisplayMode(GLUT_DOUBLE); | |
glutCreateWindow("Salman Aslam Assignment No#2"); | |
Init(); | |
glutDisplayFunc(SalmanAslamDisplay); // call function to display output | |
glutMainLoop(); | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment