The 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 position.
Syntax :
moverel(int x, int y);
The end position is calculated as :
x_pos2 = x_pos1 + x;
y_pos2 = y_pos1 + y;
Examples :
Input : x_pos1 = 0, y_pos1 =0, x = 200, y = 100
Output :
Input : x_pos1 = 100, y_pos1 = 150, x = 150, y = 60
Output :
CASE 1 : When the current position is at origin i.e, (0, 0)
Below is the implementation of moverel() function in C:
C
// C Implementation for moverel()
#include <graphics.h>
#include<stdio.h>
// driver code
int main()
{
// gm is Graphics mode which is
// a computer display mode that
// generates image using pixels.
// DETECT is a macro defined in
// "graphics.h" header file
int gd = DETECT, gm;
char arr[100];
// initgraph initializes the
// graphics system by loading a
// graphics driver from disk
initgraph(&gd, &gm, "");
// moverel function
moverel(200, 100);
// sprintf stands for “String print”.
// Instead of printing on console,
// it store output on char buffer
// which are specified in sprintf
sprintf(arr, "Current x position = %d and "
"y position = %d",getx(), gety());
// outtext function displays
// text at current position.
outtextxy(100, 150, arr);
getch();
// closegraph function closes the
// graphics mode and deallocates
// all memory allocated by
// graphics system .
closegraph();
return 0;
}
Output :
CASE 2 : When the current position is other than origin(100, 150).
Below is the implementation of moverel() function in C:
C
// C Implementation for moverel()
#include <graphics.h>
#include<stdio.h>
// driver code
int main()
{
// gm is Graphics mode which is
// a computer display mode that
// generates image using pixels.
// DETECT is a macro defined in
// "graphics.h" header file
int gd = DETECT, gm;
char arr[100];
// initgraph initializes the
// graphics system by loading a
// graphics driver from disk
initgraph(&gd, &gm, "");
// moveto function to change
// initial position
moveto(100, 150);
// moverel function
moverel(150, 60);
// sprintf stands for “String print”.
// Instead of printing on console,
// it store output on char buffer
// which are specified in sprintf
sprintf(arr, "Current x position = %d and "
"y position = %d",getx(), gety());
// outtext function displays
// text at current position.
outtextxy(100, 150, arr);
getch();
// closegraph function closes the
// graphics mode and deallocates
// all memory allocated by
// graphics system .
closegraph();
return 0;
}
Output :
Explore
C Basics
Arrays & Strings
Pointers and Structures
Memory Management
File & Error Handling
Advanced Concepts