在C ++中查找平行四边形的所有可能坐标
从给定的三个坐标中找到所有可能的坐标,以使非零区域成为平行四边形。假设A,B,C是三个给定的点,我们只能有三种可能的情况。
AB,AC为边,BC为对角线
AB,BC为边,AC为对角线
BC,AC为边,AB为对角线
因此我们可以说,如果给出三个坐标,则只有三个坐标是可能的,我们可以从中生成一个平行四边形。由于两边相等,则AD=BC,AB=CD,我们将像下面这样计算缺失点D的坐标:
(Dx-Ax,Dy-Ay) = (Cx-Bx,Cy-By) Dx = Ax+Cx-Bx Dy = Ay+Cy-By
示例
#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);
}输出结果
4, -4 6, 4 -2, 1
热门推荐
10 诗词送行祝福语大全简短
11 新房开工吉日祝福语简短
12 50多岁生日简短祝福语
13 安徽疫情祝福语简短英语
14 农民朋友发财祝福语简短
15 对生活祝福语简短精辟
16 搬家词简短祝福语朋友
17 女神结婚快乐祝福语简短
18 文学短句祝福语大全简短