2014-09-20 34 views
-1

我有一個JAVA點的數組列表。 我想添加更多的點,所以路徑更密集。 我應該如何嘗試做到這一點?java-使路徑更密集?

我做了這個形象更好地說明

enter image description here

+0

也許你在想插補插值? – 2014-09-20 08:12:59

回答

1

讓我們考慮從二維多段線兩分(X1,Y1)和B(x2,y2)上。

我們可以用這兩點建立直線方程AB

等式的常見形式爲:y = k*x + b,其中kb是常數。

使用AB COORDS我們建立的方程組:

k*x1 + b = y1 
k*x2 + b = y2 

解這個方程,我們得到kb常數,因此,我們有直線方程建立。

之後,用此座標代替X座標,得到Y座標。

因此,我們需要找到A和B之間

我們代替x1 + 1X這個方程,得到相關Y協調。

之後,我們代替x1 + 2X這個方程來獲得相關Y協調,依此類推,直到你得到的點BX2協調。


考慮下面的例子。

我們有A (2, 2)B (5, 3)

構建方程組:

2 * k + b = 2 
5 * k + b = 3 


b = 2 - 2 * k 
5 * k + 2 - 2 * k = 3 
3 * k + 2 = 3 
3 * k = 1 
k = 1/3 

b = 2 - 2/3 
b = 4/3 

,我們的A-B線方程爲:

y = x/3 + 4/3 

讓我們找到點AB之間。

我們將點A的x座標增加到1,並且要找到那個點的Y座標。

x = 3 
y = 1 + 4/3 = 7/3 

現在,拿到之後,下一個點,用x = 4

x = 4 
y = 4/3 + 4/3 = 8/3 

B已經x座標等於5,只是檢查:

x = 5 
y = 5/3 + 4/3 = 3 

correct! 

就是這樣。