Find all possible coordinates of parallelogram in C++



Find the all of the possible coordinates from the given three coordinates to make e parallelogram of a non-zero area. Suppose A, B, C are three given points we can have only three possible situations.

  • AB, AC are sides, and BC is diagonal
  • AB, BC are sides, and AC is diagonal
  • BC, AC are sides, and AB is diagonal

So we can say that only three coordinates are possible, from which we can generate a parallelogram, if three coordinates are given. Since the opposite sides are equal, then AD = BC, and AB = CD, we will calculate the coordinate of the missing points D like below −

(Dx-Ax,Dy-Ay) = (Cx-Bx,Cy-By) Dx = Ax+Cx-Bx Dy = Ay+Cy-By

Example

#include<iostream> using namespace std; void printPoints(int ax, int ay, int bx, int by, int cx, int cy){    cout << ax + bx - cx << ", " << ay + by - cy <<endl;    cout << ax + cx - bx << ", " << ay + cy - by <<endl;    cout << cx + bx - ax << ", " << cy + by - ax <<endl; } int main() {    int ax = 5, ay = 0; //coordinates of A    int bx = 1, by = 1; //coordinates of B    int cx = 2, cy = 5; //coordinates of C    printPoints(ax, ay, bx, by, cx, cy); }

Output

4, -4 6, 4 -2, 1
Updated on: 2019-11-01T06:26:57+05:30

225 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements