-1

我知道如何在纸上进行数学运算,但我正在努力弄清楚如何将潜在的负值考虑在内。

给定 2 个位置:endpoint(x1, y1) 和 midpoint(x2, y2) 找到另一个端点位置

4

3 回答 3

2

我会评论,但我的代表太低了。没有代码就很难说。您需要做的是区分两者之间的绝对距离,根据两者之间的距离是负的还是正的来确定方向,然后进行数学运算。

Example: x1 = 2, x2 = 0, y1 = 0, y2 = 0
   distance = -2x, 0y
   x2 - 2 = -2 = x3
   y3 = 0

如果你给我们看一些代码会更容易,但换句话说,只要找到 x1 和 x2 之间的距离,就可以得到 x2 和 x3 之间的距离。对 y 做同样的事情。

于 2013-05-21T22:05:28.913 回答
2
Point2D endpoint; //defined elsewhere
Point2D midpoint; //defined elsewhere

Point2D otherend = new Point2D(endpoint.getX() + 2 * (midpoint.getX() - endpoint.getX()),
                               endpoint.getY() + 2 * (midpoint.getY() - endpoint.getY()));

(对不起——我第一次犯了一个愚蠢的错误。)

于 2013-05-21T22:07:38.063 回答
0

您可以使用这两个点来找到线的方程(y = mx + b)并通过找到您知道的线部分的长度(Sqrt(x ^ 2 + y ^ 2))然后在正面画线您找到的长度的 x 方向。

于 2013-05-21T22:04:56.223 回答