In this article, we’ll be implementing shearing transformation program with output. In Transformation, shearing is the process of slanting the shape of an object.
C Program to perform shearing of a triangle along the x axis with output
Program:
#include<stdio.h> #include<graphics.h> #include<conio.h> void main() { int gd=DETECT,gm; int x,y,x1,y1,x2,y2,shear_f; initgraph(&gd,&gm,"C:\\TURBOC3\\BGI"); printf("\n please enter first coordinate = "); scanf("%d %d",&x,&y); printf("\n please enter second coordinate = "); scanf("%d %d",&x1,&y1); printf("\n please enter third coordinate = "); scanf("%d %d",&x2,&y2); printf("\n please enter shearing factor x = "); scanf("%d",&shear_f); cleardevice(); line(x,y,x1,y1); line(x1,y1,x2,y2); line(x2,y2,x,y); setcolor(RED); x=x+ y*shear_f; x1=x1+ y1*shear_f; x2=x2+ y2*shear_f; line(x,y,x1,y1); line(x1,y1,x2,y2); line(x2,y2,x,y); getch(); closegraph(); }
Output:
C Program to perform shearing of a triangle along the y axis with output
Program:
#include<stdio.h> #include<graphics.h> #include<conio.h> void main() { int gd=DETECT,gm; int x,y,x1,y1,x2,y2,shear_f; initgraph(&gd,&gm,"C:\\TURBOC3\\BGI"); printf("\n please enter first coordinate = "); scanf("%d %d",&x,&y); printf("\n please enter second coordinate = "); scanf("%d %d",&x1,&y1); printf("\n please enter third coordinate = "); scanf("%d %d",&x2,&y2); printf("\n please enter shearing factor y = "); scanf("%d",&shear_f); cleardevice(); line(x,y,x1,y1); line(x1,y1,x2,y2); line(x2,y2,x,y); setcolor(RED); y=y+ x*shear_f; y1=y1+ x1*shear_f; y2=y2+ x2*shear_f; line(x,y,x1,y1); line(x1,y1,x2,y2); line(x2,y2,x,y); getch(); closegraph(); }
Output: