Segments in Computer Graphics Last Updated : 07 Apr, 2023 Summarize Comments Improve Suggest changes Share Like Article Like Report Introduction : Introduction segments are a fundamental concept in computer graphics, used to represent the basic building blocks of a graphical scene. They are commonly used in 2D graphics to represent lines or curves that connect two or more points. An introduction segment is defined by two endpoints, which are specified using their (x,y) coordinates in a 2D Cartesian coordinate system. Once defined, the introduction segment can be used to represent a variety of different shapes and objects, depending on its length, curvature, and orientation. One common use of introduction segments is in the rendering of vector graphics, where they are used to represent the individual lines and curves that make up a complex image. In this context, introduction segments are often referred to as "paths", and can be used to represent everything from simple shapes like squares and circles, to complex curves like bezier curves or splines. Another common use of introduction segments is in computer-aided design (CAD) applications, where they are used to represent the basic building blocks of 2D and 3D models. In this context, introduction segments can be used to represent everything from straight edges and curves to more complex shapes like spirals and helixes. To view an entire image or a part of image with various attributes, we need to organize image information in a particular manner since existing structure of display file does not satisfy our requirements of viewing an image. To achieve this display, file is divided into Segments. Each segment corresponds to a component and is associated with a set of attributes and image transformation parameters like scaling, rotation. Presence of Segment allows : Subdivision of picture.Visualization of particular part of picture.Scaling, rotation and translation of picture. Types of Segments : Posted Segment : When visible attribute of segment is set to 1, it is called Posted segment. This is included in active segment list.Unposted Segment : When visible attribute of segment is set to 0, it is called Unposted segment. This is not included in active segment list. Functions for Segmenting the display : Segment Creation : Segment must be created or opened when no other segment is open, since two segments can't be opened at the same time because it's difficult to assign drawing instruction to particular segment. The segment created must be given a name to identify it which must be a valid one and there should be no segment with the same name. After this, we initialize items in segment table under our segment name and the first instruction of this segment is allocated at next free storage in display file and attributes of segments are initialized to default. Algorithm :If any segment is open, give error message : "Segment is still open" and go to step 8.Read the name of the new segment.If the segment name is not valid, give error message : "Segment name not a valid name" and go to step 8.If given segment name already exists, give error message : "Segment name already exists in name list" and go to step 8.Make next free storage area in display file as start of new segment.Initialize size of new segment to 0 and all its attributes to their default values.Inform that the new segment is now open.Stop.Closing a Segment : After completing entry of all display file instructions, the segment needs to be closed for which it has to be renamed, which is done by changing the name of currently open segment as 0. Now the segment with name 0 is open i.e. unnamed segment is open and if two unnamed segments are present in display file one needs to be deleted. Algorithm : If any segment is not open, give error message : "No segment is open now" and go to step 6.Change the name of currently opened segment to any unnamed segment, lets say 0.Delete any other unnamed segment instruction which may have been saved and initialize above unnamed segment with no instructions.Make the next free storage area available in display file as start of the unnamed segment.Initialize size of unnamed segment to 0.Stop.Deleting a Segment : To delete a particular segment from display file, we must just delete that one segment without destroying or reforming the entire display and recover space occupied by this segment. Use this space for some other segment. The method to achieve this depends upon the data structure used to represent display file. In case of arrays, the gap left by deleted segment is filled by shifting up all the segments following it. Algorithm : Read the name of the segment to be deleted.If segment name is not valid, give error message : "Segment name is not a valid name" and go to step 8.If the segment is open, give error message : "Can't delete an open segment" and go to step 8.If size of segment is less than 0, no processing is required and go to step 8.The segments which follow the deleted segment are shifted by its size.Recover deleted space by resetting index of next free instruction.The starting position of shifted segments is adjusted by subtracting the size of deleted segment from it.Stop.Renaming a Segment : This is done to achieve Double Buffering i.e. the idea of storing two images, one to show and other to create, alter and for animation. Algorithm : If both old and new segment names are not valid, give error message : "Segment names are not valid names" and go to step 6.If any of two segments is open, give error message : "Segments are still open" and go to step 6.If new segment name given already exists in the display list, give error message : "Segment name already exists" and go to step 6.The old segment table entry are copied into new position.Delete the old segment.Stop. Advantages of using segmented display : Segmentation allows to organize display files in sub-picture structure.It allows to apply different set of attributes to different portions of image.It makes it easier to the picture by changing/replacing segments.It allows application of transformation on selective portions of image. Uses of Segment : Drawing lines and curves: Segments are commonly used to represent lines and curves in 2D graphics. By connecting two or more points with a series of line segments, you can create a variety of shapes and objects, including geometric shapes, symbols, and illustrations.Vector graphics: In vector graphics, segments are used to define the paths of shapes and objects. By defining a series of interconnected segments, you can create complex curves and shapes that can be resized and transformed without losing their clarity or resolution.Computer-aided design (CAD): Segments are widely used in CAD applications to define the edges and curves of 2D and 3D models. By connecting a series of segments together, you can create complex shapes and objects that can be manipulated and transformed in a virtual environment.Animation: Segments are used extensively in animation to create smooth, fluid motion. By defining a series of keyframes and connecting them with segments, you can create animations that mimic the movement of real objects and characters.Computer vision: Segments are often used in computer vision applications to identify and track objects in real-time video. By defining a set of reference points on an object and tracking their movement using segments, you can create a model of the object's motion and use it to track it in a video stream. Issues in Segment : Here are a few of the main issues to consider: Aliasing: When using segments to represent lines or curves, aliasing can occur if the segments are not defined with sufficient detail. This can result in jagged edges or rough curves that do not accurately represent the intended shape.Performance: If segments are used extensively in a graphics application, it can impact performance and slow down rendering times. This can be especially problematic in real-time applications, such as video games, where fast frame rates are essential for a smooth user experience.Memory usage: Depending on the complexity of the scene being rendered, segments can require a significant amount of memory. This can be a concern in applications with limited memory resources, such as mobile devices or embedded systems.Accuracy: While segments can be used to represent complex shapes and objects, their accuracy is limited by the number of segments used to define them. To achieve a high level of accuracy, a large number of segments may be required, which can impact performance and memory usage.Rendering artifacts: When using segments to create complex shapes or objects, rendering artifacts can occur if the segments are not connected properly. This can result in visible gaps or overlaps between segments, which can be distracting or visually unappealing. Reference : Some references for segments in computer graphics: Foley, J. D., Van Dam, A., Feiner, S. K., & Hughes, J. F. (2014). Computer Graphics: Principles and Practice. Pearson Education.Hearn, D., & Baker, M. P. (2014). Computer Graphics with OpenGL (4th ed.). Pearson Education.Hughes, J. F. (2013). Computer Graphics: Principles and Practice (3rd ed.). Pearson Education.Angel, E. (2012). Interactive Computer Graphics: A Top-Down Approach with WebGL (6th ed.). Addison-Wesley.Watt, A., & Watt, M. (2008). Advanced Animation and Rendering Techniques: Theory and Practice (2nd ed.). Addison-Wesley. Comment More infoAdvertise with us Next Article Image Formats A Ankit87 Follow Improve Article Tags : Computer Graphics computer-graphics Similar Reads Computer Graphics Recent Articles on Computer GraphicsTable of Content Basics :Output Primitives :2-Dimensional Viewing :Visible Surface Detection :3-Dimension Object Representation :Open GL :Graphics function in C :Misc : Basics :Basic Graphic Programming in C++Vector vs Raster GraphicsSegments in Computer GraphicsI 2 min read BasicsBasic Graphic Programming in C++Introduction So far we have been using C language for simple console output only.  Most of us are unaware that using C++, low level graphics program can also be made. This means we can incorporate shapes,colors and designer fonts in our program. This article deals with the steps to enable the DevC++ 2 min read Vector vs Raster GraphicsWhen it comes to digital images, two main types are commonly used: raster and vector graphics. Understanding the difference between these two can help you choose the right format for your project. Raster graphics, made up of tiny pixels, are ideal for detailed and colorful images like photographs. O 7 min read Segments in Computer GraphicsIntroduction : Introduction segments are a fundamental concept in computer graphics, used to represent the basic building blocks of a graphical scene. They are commonly used in 2D graphics to represent lines or curves that connect two or more points. An introduction segment is defined by two endpoin 8 min read Image FormatsImage formats are different types of file types used for saving pictures, graphics, and photos. Choosing the right image format is important because it affects how your images look, load, and perform on websites, social media, or in print. Common formats include JPEG, PNG, GIF, and SVG, each with it 5 min read Output PrimitivesDDA Line generation Algorithm in Computer GraphicsIntroduction : DDA (Digital Differential Analyzer) is a line drawing algorithm used in computer graphics to generate a line segment between two specified endpoints. It is a simple and efficient algorithm that works by using the incremental difference between the x-coordinates and y-coordinates of th 12 min read Bresenhamâs Line Generation AlgorithmGiven the coordinate of two points A(x1, y1) and B(x2, y2). The task is to find all the intermediate points required for drawing line AB on the computer screen of pixels. Note that every pixel has integer coordinates. Examples: Input : A(0,0), B(4,4)Output : (0,0), (1,1), (2,2), (3,3), (4,4) Input : 14 min read Mid-Point Line Generation AlgorithmGiven coordinate of two points A(x1, y1) and B(x2, y2) such that x1 < x2 and y1 < y2. The task to find all the intermediate points required for drawing line AB on the computer screen of pixels. Note that every pixel has integer coordinates.We have discussed below algorithms for this task. DDA 11 min read Program to find line passing through 2 PointsGiven two points P and Q in the coordinate plane, find the equation of the line passing through both points.This kind of conversion is very useful in many geometric algorithms like intersection of lines, finding the circumcenter of a triangle, finding the incenter of a triangle and many more... Exam 6 min read Bresenhamâs circle drawing algorithmIt is not easy to display a continuous smooth arc on the computer screen as our computer screen is made of pixels organized in matrix form. So, to draw a circle on a computer screen we should always choose the nearest pixels from a printed pixel so as they could form an arc. There are two algorithm 4 min read Anti-aliased Line | Xiaolin Wu's algorithmAnti-Aliased Line Drawing Below is the image showing line drawn with Bresenham's line algorithm (left) and Xiaolin Wu's line algorithm (right) which smooths the line. Which one looks better to you ? Anti Aliasing concept Suppose we want to draw a line from point(1 , 1) to point(8 , 4) with rectangul 10 min read Neighbors of a point on a circle using Bresenham's algorithmGiven a center of a circle and its radius. our task is to find the neighbors of any point on the discrete circle. Examples: Input : Center = (0, 0), Radius = 3 Point for determining neighbors = (2, 2)Output : Neighbors of given point are : (1, 3), (3, 1)Input : Center = (2, 2) Radius 2 Point of det 15 min read Mid-Point Circle Drawing AlgorithmThe mid-point circle drawing algorithm is an algorithm used to determine the points needed for rasterizing a circle. We use the mid-point algorithm to calculate all the perimeter points of the circle in the first octant and then print them along with their mirror points in the other octants. This wi 15+ min read Boundary Fill AlgorithmPrerequisite : Flood fill algorithm, Scan-line polygon fillingIntroduction : Boundary Fill Algorithm starts at a pixel inside the polygon to be filled and paints the interior proceeding outwards towards the boundary. This algorithm works only if the color with which the region has to be filled and t 5 min read Flood fill Algorithm - how to implement fill() in paint?Flood Fill is a classic algorithm used to change the color of an area in a 2D image where all pixels are connected and have the same initial color. Think of it like the paint bucket tool in graphic design software like MS Paint or Photoshopâwhen you click on a spot, it automatically fills that area 2 min read Flood fill algorithm using C graphicsGiven a rectangle, your task to fill this rectangle using flood fill algorithm. Examples: Input : rectangle(left = 50, top = 50, right= 100, bottom = 100) flood( x = 55, y = 55, new_color = 12, old_color = 0) Output : Input : rectangle(left = 50, top = 50, right= 200, bottom = 400) flood( x = 51, y 2 min read Draw a line in C++ graphicsgraphics.h library is used to include and facilitate graphical operations in program. graphics.h functions can be used to draw different shapes, display text in different fonts, change colors and many more. Using functions of graphics.h you can make graphics programs, animations, projects and games. 2 min read Draw Rectangle in C graphicsrectangle() is used to draw a rectangle. Coordinates of left top and right bottom corner are required to draw the rectangle. left specifies the X-coordinate of top left corner, top specifies the Y-coordinate of top left corner, right specifies the X-coordinate of right bottom corner, bottom specifie 2 min read Draw circle in C graphicsThe header file graphics.h contains circle() function which draws a circle with center at (x, y) and given radius. Syntax : circle(x, y, radius); where, (x, y) is center of the circle. 'radius' is the Radius of the circle. Examples : Input : x = 250, y = 200, radius = 50 Output : Input : x = 300, y 1 min read Draw a circle without floating point arithmeticGiven a radius of a circle, draw the circle without using floating point arithmetic.The following program uses a simple concept. Let the radius of the circle be r. Consider a square of size (2r+1)*(2r+1) around the circle to be drawn. Now walk through every point inside the square. For every point ( 6 min read Code to Generate the Map of India (With Explanation)Given an obfuscated code that generates the map of India, explain its working. The following code when executed generates the map of India. An obfuscated code is a code that has been deliberately made difficult to understand or difficult to read, typically for the purpose of hiding its logic or maki 8 min read 2-Dimensional Viewing2D Transformation in Computer Graphics | Set 1 (Scaling of Objects)We can use a 2 à 2 matrix to change or transform, a 2D vector. This kind of operation, which takes in a 2-vector and produces another 2-vector by a simple matrix multiplication, is a linear transformation. By this simple formula, we can achieve a variety of useful transformations, depending on what 5 min read 2D Transformation | Rotation of objectsWe have to rotate an object by a given angle about a given pivot point and print the new co-ordinates.Examples: Input : {(100, 100), (150, 200), (200, 200), (200, 150)} is to be rotated about (0, 0) by 90 degrees Output : (-100, 100), (-200, 150), (-200, 200), (-150, 200) Input : {(100, 100), (100, 7 min read Point Clipping Algorithm in Computer GraphicsThe Point Clipping Algorithm is a fundamental algorithm used in Computer Graphics to determine whether a point lies inside or outside a specific region or boundary. It is particularly useful when dealing with objects that have complex shapes or when displaying only a portion of an image. Clipping: I 10 min read Line Clipping | Set 1 (CohenâSutherland Algorithm)Description:- In this algorithm, we are given 9 regions on the screen. Out of which one region is of the window and the rest 8 regions are around it given by 4 digit binary.  The division of the regions are based on (x_max, y_max) and (x_min, y_min). The central part is the viewing region or window, 15+ min read Polygon Clipping | SutherlandâHodgman AlgorithmA convex polygon and a convex clipping area are given. The task is to clip polygon edges using the SutherlandâHodgman Algorithm. Input is in the form of vertices of the polygon in clockwise order. Examples: Input : Polygon : (100,150), (200,250), (300,200) Clipping Area : (150,150), (150,200), (200, 15 min read Implementation of a Falling MatrixSince the dawn of computers, Hollywood has greatly demonstrated a Hacker or a Programmer as someone sitting on a computer typing random keys on computer which ultimately compiles to a Falling matrix like simulation. Here, we will try to implement a similar falling matrix simulation on the console us 5 min read Visible Surface DetectionA-Buffer MethodPrerequisite : depth-buffer (or Z Buffer) method A-Buffer method in computer graphics is a general hidden face detection mechanism suited to medium scale virtual memory computers. This method is also known as anti-aliased or area-averaged or accumulation buffer. This method extends the algorithm of 3 min read Z-Buffer or Depth-Buffer methodWhen viewing a picture containing non transparent objects and surfaces, it is not possible to see those objects from view which are behind from the objects closer to eye. To get the realistic screen image, removal of these hidden surfaces is must. The identification and removal of these surfaces is 5 min read Back-Face Detection MethodWhen we project 3-D objects on a 2-D screen, we need to detect the faces that are hidden on 2D. Back-Face detection, also known as Plane Equation method, is an object space method in which objects and parts of objects are compared to find out the visible surfaces. Let us consider a triangular surfac 3 min read 3-Dimension Object RepresentationSnowflakes Fractal using PythonTo create Snowflake fractals using Python programmingWhat are fractals A fractal is a never-ending pattern. Fractals are infinitely complex patterns that are self-similar across different scales. They are created by repeating a simple process over and over in an ongoing feedback loop. Driven by recu 3 min read Koch Curve or Koch SnowflakeWhat is Koch Curve? The Koch snowflake (also known as the Koch curve, Koch star, or Koch island) is a mathematical curve and one of the earliest fractal curves to have been described. It is based on the Koch curve, which appeared in a 1904 paper titled "On a continuous curve without tangents, constr 4 min read Klee's Algorithm (Length Of Union Of Segments of a line)Given starting and ending positions of segments on a line, the task is to take the union of all given segments and find length covered by these segments.Examples: Input : segments[] = {{2, 5}, {4, 8}, {9, 12}} Output : 9 Explanation: segment 1 = {2, 5} segment 2 = {4, 8} segment 3 = {9, 12} If we ta 9 min read Cubic Bezier Curve Implementation in CWhat is a bezier curve? So a Bezier curve is a mathematically defined curve used in two-dimensional graphic applications like adobe Illustrator, Inkscape etc. The curve is defined by four points: the initial position and the terminating position i.e P0 and P3 respectively (which are called "anchors" 11 min read Fractals in C/C++A Fractal is a never-ending pattern. Fractals are infinitely complex patterns that are self-similar across different scales. They are created by repeating a simple process over and over in an ongoing feedback loop. Mathematically fractals can be explained as follows. The location of a point on a scr 6 min read Open GLScan-line Polygon filling using OPENGL in CFigures on a computer screen can be drawn using polygons. To fill those figures with color, we need to develop some algorithm.There are two famous algorithms for this purpose: Boundary fill and Scanline fill algorithms.Boundary filling requires a lot of processing and thus encounters few problems in 8 min read Rendering a Triangle using OpenGL(using Shaders)In this article we'll see how to render a triangle using OpenGL. A triangle is probably the simplest shapes you can draw in OpenGL after points and lines and any complicated geometry that you make will me made up of number of triangles joined together.We'll be using the programmable pipeline, so we' 9 min read Getting started with OpenGLOpen Graphics Library (OpenGL) is a cross-language (language independent), cross-platform (platform-independent) API for rendering 2D and 3D Vector Graphics(use of polygons to represent image). OpenGL API is designed mostly in hardware. Design : This API is defined as a set of functions which may be 4 min read OpenGL program for Simple Ball GamePrerequisite - OpenGLOpenGL is a cross-language, cross-platform API for rendering 2D and 3D Vector Graphics. Using this, we can make a lot of design as well as animations. Below is a simple Game made using OpenGL.Description : In this, a ball is moving starting from middle and goes to up-left in sta 5 min read OpenGL program for simple Animation (Revolution) in COpenGL is a cross-language, cross-platform API for rendering 2D and 3D Vector Graphics. Using this, we can make a lot of design as well as animations. Below is the simple animation made using OpenGL.Approach : To make a picture moving, we need to understand the working procedure of a function used t 6 min read Translation of objects in computer graphicsIn computer graphics, we have seen how to draw some basic figures like line and circles. In this post we will discuss on basics of an important operation in computer graphics as well as 2-D geometry, which is transformation. In computer graphics, transformation of the coordinates consists of three m 7 min read Graphics function in Cpieslice() function in Cpieslice() draws and fills a pie slice with center at (x, y) and given radius r. The slice travels from s_angle to e_angle which are starting and ending angles for the pie slice. The angles for pie-slice are given in degrees and are measured counterclockwise. Syntax : void pieslice(int x, int y, int 2 min read outtextxy() function in CThe header file graphics.h contains outtextxy() function which displays the text or string at a specified point (x, y) on the screen. Syntax : void outtextxy(int x, int y, char *string); where, x, y are coordinates of the point and, third argument contains the address of string to be displayed. Exam 1 min read settextstyle function in CThe header file graphics.h contains settextstyle() function which is used to change the way in which text appears. Using it we can modify the size of text, change direction of text and change the font of text. Syntax : void settextstyle(int font, int direction, int font_size); where, font argument s 2 min read outtext() function in CThe header file graphics.h contains outtext() function which displays text at current position. Syntax : void outtext(char *string); Examples : Input : string = "Hello Geek, Have a good day !" Output : Input : string = "GeeksforGeeks is the best !" Output : Note : Do not use text mode functions like 1 min read setlinestyle() function in CThe header file graphics.h contains setlinestyle() function which sets the style for all lines drawn by line, lineto, rectangle, drawpoly, and so on. Syntax : void setlinestyle(int linestyle, unsigned upattern, int thickness); Examples : Input : x = 200, y = 100 Output : x and y are initialized as ( 2 min read getx() function in CThe header file graphics.h contains getx() function which returns the X coordinate of the current position. Syntax : int getx(); Example : Explanation : Initially, the X coordinate of the current position is 0. On moving the coordinates using moveto() function, the X coordinate changes to 80. Below 2 min read sector() function in CThe header file graphics.h contains sector() function which draws and fills an elliptical pie slice with (x, y) as center, (s_angle, e_angle) as starting and ending angle and (x_radius, y_radius) as x and y radius of sector. Syntax : void sector(int x, int y, int s_angle, int e_angle, int x_radius, 2 min read moveto() function in CThe header file graphics.h contains moveto() function which changes the current position to (x, y) Syntax : void moveto(int x, int y); Examples : Input : x = 70, y = 40 Output : Input : x = 50, y = 80 Output : Below is the implementation of moveto() function: C // C Implementation for moveto() #incl 2 min read gety() function in CThe header file graphics.h contains gety() function which returns the Y coordinate of the current position. Syntax : int gety(); Example : Explanation : Initially, the Y coordinate of the current position is 0. On moving the coordinates using moveto() function, the Y coordinate changes to 50. Below 2 min read getmaxx() function in CThe header file graphics.h contains getmaxx() function which returns the maximum X coordinate for current graphics mode and driver. Syntax : int getmaxx(); Below is the implementation of getmaxx() function: C // C Implementation for getmaxx() #include <graphics.h> #include <stdio.h> // d 1 min read lineto() function in CThe header file graphics.h contains lineto() function which draws a line from current position to the point(x,y). Note : Use getx() and gety() to get the current position. Syntax : lineto(int x, int y); where, (x, y) are the coordinates upto which the line will be drawn from previous point. CASE 1 : 2 min read arc function in CThe header file graphics.h contains arc() function which draws an arc with center at (x, y) and given radius. start_angle is the starting point of angle and end_angle is the ending point of the angle. The value of the angle can vary from 0 to 360 degree. Syntax : void arc(int x, int y, int start_ang 2 min read bar3d() function in C graphicsThe header file graphics.h contains bar3d() function which is used to draw a 2-dimensional, rectangular filled in bar . Coordinates of left top and right bottom corner of bar are required to draw the bar. Syntax : void bar3d(int left, int top, int right, int bottom, int depth, int topflag); where, l 2 min read moverel() function in CThe header file graphics.h contains moverel() function which moves a point from the current position(x_pos1, y_pos1) to a point that is at a relative distance (x, y) from the Current Position and then advances the Current Position by (x, y). Note : getx and gety can be used to find the current posit 3 min read cleardevice() function in CThe header file graphics.h contains cleardevice() function which clears the screen in graphics mode and sets the current position to (0,0). Clearing the screen consists of filling the screen with current background color. Syntax : void cleardevice(); Below is the implementation of cleardevice() in C 1 min read closegraph() function in CThe header file graphics.h contains closegraph() function which closes the graphics mode, deallocates all memory allocated by graphics system and restores the screen to the mode it was in before you called initgraph. Syntax : void closegraph(); Below is the implementation of closegraph() in C. C // 1 min read drawpoly() function in CThe header file graphics.h contains drawpoly() function which is used to draw polygons i.e. triangle, rectangle, pentagon, hexagon etc. Syntax : void drawpoly( int number, int *polypoints ); where, number indicates (n + 1) number of points where n is the number of vertices in a polygon. polypoints p 2 min read putpixel() function in CThe header file graphics.h contains putpixel() function which plots a pixel at location (x, y) of specified color. Syntax : void putpixel(int x, int y, int color); where, (x, y) is the location at which pixel is to be put , and color specifies the color of the pixel. Explanation : A RED color pixel 2 min read getarcoords() function in CThe header file graphics.h contains getarccoords() function which is used to get coordinates of arc which is drawn most recently. arccoordstype is a predefined structure which is defined as follows: Syntax : struct arccoordstype { // center point of arc int x, y; // start position int xstart, ystart 2 min read getbkcolor() function in CThe header file graphics.h contains getbkcolor() function which returns the current background color. Syntax : int getbkcolor(); As getbkcolor() returns an integer value corresponding to the background color, so below is the table for Color values. Colors Table : COLOR INT VALUES ------------------- 2 min read getmaxcolor() function in CThe header file graphics.h contains getmaxcolor() function, which returns maximum color value for current graphics mode and driver. As color numbering starts from zero, total number of colors available for current graphics mode and driver are ( getmaxcolor() + 1 ) . Syntax : int getmaxcolor(); Below 2 min read getpixel() function in CThe header file graphics.h contains getpixel() function which returns the color of pixel present at location (x, y). Syntax : int getpixel(int x, int y); Note : By default the screen is BLACK, therefore color of pixel at (0,0) is BLACK. Below is the implementation of getpixel() function. C // C Impl 2 min read setcolor function in CThe header file graphics.h contains setcolor() function which is used to set the current drawing color to the new color. Syntax : void setcolor(int color); Explanation : In Graphics, each color is assigned a number. Total number of colors available are 16. Number of available colors depends on curre 2 min read imagesize() function in CThe header file graphics.h contains imagesize() function which returns the number of bytes required to store a bit-image. Syntax : unsigned int imagesize(int left, int top, int right, int bottom); where, left, top, right, and bottom define the area of the screen in which image is stored. Below is th 2 min read textheight() function in CThe header file graphics.h contains textheight() function which returns the height of input string in pixels. Syntax : int textheight(char *string); Example : Input : string = "Hello Geek ! Have a good day." Output : Below is the implementation of textheight() function. C // C Implementation for tex 1 min read textwidth() function in CThe header file graphics.h contains textwidth () function which returns the width of input string in pixels. Syntax : int textwidth(char *string); Example : Input : string = "Hello Geek ! Have a good day." Output : Below is the implementation of textwidth() function. C // C Implementation for textwi 1 min read grapherrormsg() function in CThe header file graphics.h contains grapherrormsg() function which returns an error message string. Syntax : char *grapherrormsg( int errorcode ); where, errorcode: code for the respective error Illustration of the grapherrormsg() : In the below program, gd = DETECT is not written and thus program m 1 min read fillpoly() function in CThe header file graphics.h contains fillpoly() function which is used to draw and fill a polygon i.e. triangle, rectangle, pentagon, hexagon etc. It require same arguments as drawpoly(). Syntax : void fillpoly( int number, int *polypoints ); where, number indicates (n + 1) number of points where, n 3 min read fillellipse() function in CThe header file graphics.h contains fillellipse() function which draws and fills an ellipse with center at (x, y) and (x_radius, y_radius) as x and y radius of ellipse. Syntax : void fillellipse(int x, int y, int x_radius, int y_radius); where, (x, y) is center of the ellipse. (x_radius, y_radius) a 1 min read bar() function in C graphicsThe header file graphics.h contains bar() function which is used to draw a 2-dimensional, rectangular filled in bar. Syntax : void bar(int left, int top, int right, int bottom); where, left specifies the X-coordinate of top left corner, top specifies the Y-coordinate of top left corner, right specif 2 min read MiscHow to add "graphics.h" C/C++ library to gcc compiler in LinuxWhile trying c graphic programming on Ubuntu, I figured out that graphic.h is not a standard C library and it is not supported by gcc compiler. So I am writing this article to explain the process.If you want to use graphics.h on Ubuntu platform you need to compile and install libgraph. It is the imp 2 min read How to include graphics.h in CodeBlocks?Compiling graphics codes on CodeBlocks IDE shows an error: âCannot find graphics.hâ. This is because graphics.h runs is not available in the library folder of CodeBlocks. To successfully compile graphics code on CodeBlocks, setup winBGIm library. How to include graphics.h in CodeBlocks ? Please foll 2 min read Computer Graphics |Cathode Ray Oscilloscope| Cathode ray tube (video display technology)Computer Graphics has become a common element in today's modern world. Be it in user interfaces, data visualization, motion pictures, etc, computer graphics play an important role. The primary output device in a graphics system is a video monitor. Although many technologies exist, the operation of m 5 min read High Definition Multimedia Interface (HDMI)High Definition Multimedia Interface is one of the most used audio/video interfaces for transmitting uncompressed video data and compressed or uncompressed digital audio data from an HDMI-compliant source device. These devices can be a display controller, a compatible computer monitor, video project 4 min read Common Video FormatWhenever a video file is saved it contains two file in it. One is the container and other is codecs. Container defines the structure of the video file and which codecs will be used. Codecs is used to compress and decompress video file. Some of common container format are: Flash Video Format (.flv) T 2 min read Audio FormatAudio format defines the quality and loss of audio data. Based on application different type of audio format are used. Audio formats are broadly divided into three parts: Uncompressed Format Lossy Compressed format Lossless Compressed Format 1. Uncompressed Audio Format: PCM - It stands for Pulse-Co 3 min read Like