Given two points coordinates (x1, y1) and (x2, y2)on 2D plane. The task is to find the reflection of (x1, y1) at 180 degree rotation of (x2, y2).
Input : x1 = 0, y1 = 0, x2 = 1, y2 = 1 Output : (2, 2)
Input : x1 = 1, y1 = 1, x2 = 2, y2 = 2 Output : (3, 3)
Let the reflection point of point (x1, y1) about (x2, y2) be (x’, y’).
For (x’, y’) be the 180 degree rotation of point (x1, y1) around point (x2, y2), they all must be collinear i.e all the three point must lie on a same straight line. Also, observe (x2, y2) will became mid point between (x1, y1) and (x’, y’).
x’ – x2 = x2 – x1
y’ – y2 = y2 – y1
x’ = 2 * x2 – x1
y’ = 2 * y2 – y1
Below is the implementation of this approach:
Time Complexity : O(1)
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Rotate a Matrix by 180 degree
- Rotation of a point about another point in C++
- Reflection of a point about a line in C++
- Program to Convert Radian to Degree
- Program to convert temperature from degree Celsius to Kelvin
- Check if a line at 45 degree can divide the plane into two equal weight parts
- Make a tree with n vertices , d diameter and at most vertex degree k
- Program to convert Degree to Radian
- Find if a degree sequence can form a simple graph | Havel-Hakimi Algorithm
- Find determinant of matrix generated by array rotation
- Minimum number of flips with rotation to make binary string alternating
- Longest subsequence of a number having same left and right rotation
- Check if a number is a power of another number
- Check if a number is divisible by all prime divisors of another number
- Number of visible boxes after putting one inside another
- Find ΔX which is added to numerator and denominator both of fraction (a/b) to convert it to another fraction (c/d)
- GCD of a number raised to some power and another number
- Sum of elements in an array whose difference with the mean of another array is less than k
- Check if matrix can be converted to another matrix by transposing square sub-matrices
- Find the minimum number of rectangles left after inserting one into another
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.