Program to creating Doraemon cartoon character using Computer Graphics

14 Jul, 2021
Computer Graphics is an important subject to improve coding skills. Many things can be implemented using computer graphics. For example- car animation, cartoon characters, and many more things. In this article, the cartoon character Doraemon is created using computer graphics.
Implementation in C
In C, the graphics.h functions are used to draw different shapes(like a circle, rectangle, etc), display text(any message) in different formats (different fonts and colors). By using graphics.h  it is possible to make programs, animations and also games. These can be useful for beginners.
Functions Used:
setcolor(n): A function from graphics.h header file which sets the color of the pointer(cursor).
line(int x1, int y1, int x2, int y2): Line function is used to draw a line from a point(x1, y1) to a point(x2, y2) i.e. (x1, y1) and (x2, y2) are endpoints of the line.The code given below draws a line.
setfillstyle(pattern, color): The header file graphics.h contains setfillstyle() function which sets the current fill pattern and fills color.
floodfill(pattern, color): function is used to fill an enclosed area. The current fill pattern and fill color are used to fill the area.
Below is the implementation of drawing the cartoon character Doraemon using graphics in C:
C
// C program to implement// the above approach#include <conio.h>#include <graphics.h>#include <stdio.h>  // Driver codeint main(){    int gd = DETECT, gm;    initgraph(&gd, &gm, "C:\\turboc3\\bgi");    setfillstyle(SOLID_FILL, CYAN);      // Head Outer Circle    circle(500, 200, 100);      // Head Inner Circle    circle(500, 212, 88);    floodfill(502, 102, 15);    setfillstyle(SOLID_FILL, CYAN);      // Body Outer Circle    circle(500, 400, 100);      // Body Inner Circle    circle(500, 388, 88);    floodfill(502, 498, 15);    setfillstyle(SOLID_FILL, RED);      // NOSE    circle(502, 214, 10);    floodfill(504, 216, 15);      // Left Eye    circle(460, 170, 15);      // Right Eye    circle(540, 170, 15);      // Left Mustache Middle    // Line    line(430, 214, 380, 214);      // Left Mustache Upper    // Line    line(430, 214, 380, 196);      // Left Mustache Lower    // Line    line(430, 214, 380, 234);      // Right Mustache Middle    // Line    line(570, 214, 620, 214);      // Right Mustache Upper    // Line    line(570, 214, 620, 196);      // Right Mustache Lower    // Line    line(570, 214, 620, 234);      // Nose-Mouth Connector    line(502, 224, 502, 240);      // Mouth Horizental Line    line(465, 240, 535, 240);      // Mouth Tangent Line    line(465, 240, 502, 260);      // Mouth Tangent Line    line(502, 260, 535, 240);      setfillstyle(SOLID_FILL, CYAN);      // Right Up Hand    line(500, 300, 650, 320);      // Right Low Hand    line(500, 300, 650, 340);      // Right Hand Joining    line(650, 320, 650, 340);    floodfill(645, 332, 15);    setfillstyle(SOLID_FILL, CYAN);      // Left Up Hand    line(500, 300, 350, 320);      // Left Down Hand    line(500, 300, 350, 340);      // Left Hand Join    line(350, 320, 350, 340);    floodfill(355, 332, 15);    circle(665, 331, 15);    circle(335, 331, 15);      // Pocket Horizental    line(445, 380, 555, 380);      // Pocket Tangent    line(445, 380, 500, 420);      // Pocket Tangent    line(500, 420, 555, 380);    setfillstyle(SOLID_FILL, RED);      // Bell Pad Upper Horizental    line(430, 298, 570, 298);      // Bell Pad Lower Horizental    line(430, 308, 570, 308);      // Bell Pad  Left Join    line(430, 298, 430, 308);      // Bell Pad Right Join    line(570, 298, 570, 308);    floodfill(432, 302, 15);    floodfill(568, 302, 15);    floodfill(500, 307, 15);    setfillstyle(SOLID_FILL,                 YELLOW);      // Bell    circle(500, 323, 15);    floodfill(502, 325, 15);    setcolor(BLACK);      // Inner Bell Upper Line    line(485, 323, 515, 323);      // Inner Bell Upper Line    line(485, 328, 515, 328);    setcolor(WHITE);      // Left Leg Left Line    line(450, 480, 450, 550);      // Left Leg Right Line    line(470, 490, 470, 550);      // Right Leg Right Line    line(550, 480, 550, 550);      // Right Leg Left Line    line(530, 490, 530, 550);      // Left Leg Pad    rectangle(440, 550, 480, 570);      // Right Leg Pad    rectangle(520, 550, 560, 570);      // Left Leg Color    setfillstyle(SOLID_FILL, CYAN);    floodfill(460, 500, 15);      // Right Leg Color    setfillstyle(SOLID_FILL, CYAN);    floodfill(540, 500, 15);    getch();    closegraph();    return 0;}
Output:
c-graphics
computer-graphics
C Programs
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.