2012-04-17 51 views
0

當用戶在屏幕上拖動手指時,我正在繪製path。但是,如果他這樣做的速度太快,我在path中得分太少。有沒有什麼辦法,我可以在之後用戶已經畫好了嗎?path之後我可以增加點數嗎? 我需要這個,因爲我將path1的每個點與path2上的所有點進行比較,以查看這兩個paths何時相交。增加路徑中的觸點數量

+1

你真正畫一條線(其只需要2個點),或路徑(多點)? – 2012-04-17 17:20:55

+0

@喬納森糾正了原來的帖子。謝謝。 – deeJ 2012-04-17 17:21:54

+0

我在這裏找到了我的答案: http://stackoverflow.com/questions/3180531/android-path-to-array-read-the-points-on-a-path – deeJ 2012-04-18 12:10:36

回答

1

如果用戶已經完成繪製路徑,那麼您可以做的最好的工作就是使用您擁有的點並猜測它們之間的相互關係。兩種常用的猜測方法是在點之間插入線段,這會給出非常參差不齊的外觀,或者可以使用樣條插值,這樣可以獲得非常流暢的外觀,但涉及更復雜的計算。在樣條插補

更多信息:http://en.wikipedia.org/wiki/Spline_interpolation

無論您使用的線段或樣條線,你需要用的公式爲路徑1段/花鍵和路徑2段/花數學找到交集。你將有兩個方程,兩個變量,所以你應該能夠解決系統找到滿足兩個方程的x和y的值,使得這個點成爲交點。

http://en.wikipedia.org/wiki/Line-line_intersection