2011-09-14 46 views
0

所以我有一个程序可以解决线性方程组的问题,但这并不相关。所以会发生的是,我的程序以下列形式传递两个线性方程:y = mx + b。我不知道如何使用Graphics2D来绘制这个图形,我在解决它时遇到了一些麻烦。现在我不知道,所以我没有代码,我可以告诉你,但我可以告诉你的是:如何在java中使用y = mx + b绘制一条线?

  • 我的程序正确地转换AX + = C到Y = MX + B
  • 那这将是有帮助的一些代码,显示可能使用的drawLine()方法

回答

3

当你绘制一行代码,你需要从点A画点B的例子。 (线

选取一点A开始从线,然后绘制从A(A.X + dx, A.Y + m * dx)到,其中dx是线的所需的宽度。

例如,您可能需要A为您所在区域的一个角,而dx为该区域的宽度。

+0

+1为了避免混淆,宽度是沿着边界矩形的x轴的长度,而不是线条的粗细。 – Paulpro

0

drawLine在两点之间划出一条线。所以你所需要做的就是从你的等式中得到两个点,并将它们传递给drawLine

实施例:

x1 = 0 
x2 = 10 
y1 = m*x1 + b 
y2 = m*x2 + b; 
g2d.drawLine(x1, y1, x2, y2); 

当然,这将绘制的两个点之间的线段。所以你需要找出你真正感兴趣的线段中的哪一段,然后相应地选择你的x值。

1

您还需要考虑如何从物理(x,y)坐标映射到屏幕(u,v)坐标。

从AX + = C转化是单纯的高中代数:从两侧

  1. 减去AX:通过= C - 斧
  2. 鸿沟两侧通过B:Y =(C/B) - (A/B)×
  3. 通过检查,m = - (A/B)和b =(C/B)。显然,B!= 0.
相关问题