Saturday, 2 March 2013


Shearing of 2D object


#include"2dframe.CPP"
#include<iostream.h>

void shear_rectangle(int ,int,int ,int ,float );
void main()
{
    int gd=DETECT,gm;
    initgraph(&gd,&gm,"c:\\tc\\bgi");
    cout<<"\nEnter Your 2D-Frame Length:\n";
    cout<<"\nANY VALUE  BETWEEN 1000 - 30000:";
    cin>>frame_length;
    int x_start=0,y_start=0,length_x,breadth_y;
    cout<<"\nEnter the Start point of the rectangle\n";
    cin>>x_start>>y_start;
    cout<<"\nEnter length,breadth of Rectagle:\n";
    cin>>length_x ;
    cin>>breadth_y;
    DRAW2DFRAME();
    //CREATE THE RECTANGLE
    rectangle2d(x_start,y_start,length_x,breadth_y);
    getch();
    cleardevice();
    float sh;
    cout<<"\nFor this Rectangle : ";
    cout<<"\nMAX Range Of Shear factor along Y-axis=0.0 TO\t ";
    cout<<(frame_length/breadth_y);
    cout<<"\nEnter the shear factors:sh\n";
    cin>>sh;
    DRAW2DFRAME();
    outtextxy(25,40,"Before Shear");
    rectangle2d(x_start,y_start,length_x,breadth_y);
    getch();
    DRAW2DFRAME();
    outtextxy(25,40,"After Shear");
    shear_rectangle(x_start,y_start,length_x,breadth_y,sh);
    getch();
    closegraph();

}

void shear_rectangle
(int x,int y,int length_x,int breadth_y,float sh)
{
     int arr1[2],arr2[2],arr3[2],arr4[2];
     int X1,Y1,X2,Y2;
     int x1,y1,x2,y2;
     ///////////////////////////////////////////////////////////////////
     x1=x,y1=y;
     x2=x1,y2=y1+breadth_y;
     shear_point_Y(x1,y1,sh);
     X1=P1[0][0];
     Y1=P1[0][1];
     shear_point_Y(x2,y2,sh);
     X2=P1[0][0];
     Y2=P1[0][1];
     line2d(X1,Y1,X2,Y2,arr1,arr2,YELLOW);
     //*******************************************************************
     //*******************************************************************
     x1=x+length_x;y1=y;
     x2=x+length_x,y2=y+breadth_y;
     shear_point_Y(x1,y1,sh);
     X1=P1[0][0];
     Y1=P1[0][1];
     shear_point_Y(x2,y2,sh);
     X2=P1[0][0];
     Y2=P1[0][1];
     line2d(X1,Y1,X2,Y2,arr1,arr2,GREEN);
     //****************************************************************
     //****************************************************************
     x1=x,y1=y;
     x2=x+length_x,y2=y1;
     shear_point_Y(x1,y1,sh);
     X1=P1[0][0];
     Y1=P1[0][1];
     shear_point_Y(x2,y2,sh);
     X2=P1[0][0];
     Y2=P1[0][1];
     line2d(X1,Y1,X2,Y2,arr1,arr2,LIGHTBLUE);
     //*******************************************************************
     //*******************************************************************
     x1=x,y1=y+breadth_y;
     x2=x+length_x,y2=y+breadth_y;
     shear_point_Y(x1,y1,sh);
     X1=P1[0][0];
     Y1=P1[0][1];
     shear_point_Y(x2,y2,sh);
     X2=P1[0][0];
     Y2=P1[0][1];
     line2d(X1,Y1,X2,Y2,arr1,arr2,MAGENTA);
     ///////////////////////////////////////////////////////////////////
     //******************************************************************
     //******************************************************************
}

No comments:

Post a Comment

Activate Office 365 - 2019 Version

                        Link to install office 365 https://windowsedition.com/download-office-365-offline-installer-iso/ Follow the bel...