如何找到距离AB线段远离x单位且远离BC线段的y单位的点的位置?

时间:2016-02-10 14:06:28

标签: math language-agnostic geometry

Representation image

我正在尝试计算点P的坐标,其是距离AB线段的x个单位和远离BC线段的y个单位。

编辑: 我正在尝试编写一般解决方案的代码。 作为参数,我有三个点(坐标)A,B和C以及距离x和y的两个值。

1 个答案:

答案 0 :(得分:3)

让我们按A,B,C翻译所有点(-BX, -BY),将坐标原点设置为B,新点为a, 0, c,我会将距离重命名为{ {1}}和dc

新坐标

da

然后行cy = CY - BY cx = CX - BX ay = AY - BY ax = AX - BX 将有等式

0c

(-cy * x + cx * y) / Sqrt(cx*cx +cy*cy) = 0 将有等式

0a

让我们(-ay * x + ax * y) / Sqrt(ax*ax +ay*ay) = 0 lc = Sqrt(cx*cx +cy*cy)la = Sqrt(ax*ax +ay*ay)BC段的长度)

如果点BA位于距离p=(px, py)dc的距离,距离行0c da距离,则

0a

如果您的点始终形成Abs(-cy * px + cx * py) = dc * lc Abs(-ay * px + ax * py) = da * la 光线的逆时针顺序,您可以仅使用此符号组合并找到单个解决方案:

BC, BP, BA

解决-cy * px + cx * py = dc * lc -ay * px + ax * py = - da * la px的线性系统,在末尾移位坐标后面pyBX

BY

P.S。在额外的情况下,PX = px + BX PY = py + BY 系统无angle ABC=180da<>dc的无限解决方案