如何在Canvas中在另一个上面画一条线?

时间:2016-08-24 09:17:37

标签: android canvas android-canvas

我有必要的坐标来绘制一条简单的线(x1 / y1,x2 / y2):

canvas.drawLine(x1, y1, x2, y2, paint);

结果如下:

simple line

下一步我想在现有的第二行上绘制第二行:

second lune

我不知道它的坐标,但这两个数量是已知的:

  1. 从黑线开始到红线开头的距离;
  2. 从黑线末端到红线末端的距离。
  3. 如何找到红线的坐标来绘制它? Canvas是否有内置工具在另一个上面绘制线条?我会很感激任何线索。

    谢谢。

2 个答案:

答案 0 :(得分:2)

首先,您需要计算此斜率。黑色和红色线的斜率将相同。 坡度公式是    斜率=(y2 - y1)/(x2-x1)然后从斜率你可以检查该线上是否有两个点。但在你的情况下,通过使用斜率,你将有一个y2-y1方程,但你还需要另一个方程来找到这些未知数。这个链接会给你一些关于你问题的提示。 http://www.coolmath.com/algebra/08-lines/06-finding-slope-line-given-two-points-01

答案 1 :(得分:0)

第二行的联名将是 x1 of red = x1 of black + distance你知道(1)。 x2 of red = x2 of black - 你知道的距离(2)。

1和2是您拥有的两个数量。

可以尝试使用具有相同y值的另一个油漆......以及x值以上