找到距离A相同距离的2个点

时间:2013-04-30 08:38:50

标签: geometry distance

我有数学问题。我有点A,B的位置(x,y)和数字(x)。我想计算点C,D的位置.CD与AB垂直,AC = AD = x。

这是图片描述我的问题:

my problem

有人可以帮我吗?

由于

2 个答案:

答案 0 :(得分:2)

您没有指定编程语言,但是从您之前的问题来看似乎是这样 你在iOS上有一些(Objective-)C和Core Graphics的经验,所以这就是 使用C和Core Graphics数据结构的解决方案:

// Your input data:
CGPoint A = ...
CGPoint B = ...
CGFloat x = ...

// Vector from A to B:
CGPoint vecAB = CGPointMake(B.x - A.x, B.y - A.y);
// Length of that vector:
CGFloat lenAB = hypotf(vecAB.x, vecAB.y);
// Perpendicular vector, normalized to length 1:
CGPoint perp = CGPointMake(-vecAB.y/lenAB, vecAB.x/lenAB);

CGPoint C = CGPointMake(A.x + x * perp.x, A.y + x * perp.y);
CGPoint D = CGPointMake(A.x - x * perp.x, A.y - x * perp.y);

答案 1 :(得分:1)