我正在研究Android中的應用程序,其中我必須獲取android.graphics。 path值並進行比較。瞭解android.graphics.path並比較android.graphics.path值
考慮以下的圖像:
和
第一個圖像顯示的直線和將所生成的路徑值。同樣,第二幅圖像也顯示了一條類似的直線,並具有不同的路徑值。
我無法理解所生成的值。任何人都可以解釋生成的值究竟是什麼意思?我可以大概從屏幕座標中大膽猜測路徑值嗎?
另外,在我的應用程序中,我想比較路徑值。上圖中顯示的行類似。在我的應用程序中,我想比較它們並將它們渲染爲相同的行。我不只是比較線條,還會有曲線和所有這些可繪製的形狀。爲了進行比較,我首先必須正常化我的路徑值(可能爲我當前的畫布調用getMatrix?),以便對不同的屏幕尺寸具有相同的效果?
還有另一種比較方式,將會更簡單,找到數字路徑的質心。很顯然,與曲線等相比,線條的中心位置不同。但這種比較不會那麼準確。我想存儲一些值,然後將生成的路徑值與存儲的值進行比較,並比較質心,以便獲得更好的準確性。但爲此,我需要了解生成的路徑值!
請幫忙指導!謝謝! :-)
編輯:
,我使用了我的轉換路徑值的字符串中的代碼。我的路徑值存儲在ArrayList
(稱爲pointsToDraw
)。下面的代碼:
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
synchronized(pointsToDraw){
for(Path path : pointsToDraw)
{
stringPoints.add(String.valueOf(path));
}
}
TextView b1Text = (TextView) findViewById(R.id.GText);
for(String s : stringPoints)
{
b1Text.setText(s);
}
}
我很努力去理解這個問題的第一部分;具體來說,你是什麼意思的「生成的價值」。什麼是在字符串上顯示的字符串 - 它是path.toString()的結果? – Trevor 2012-03-01 13:29:28
@TrevorPage號我正在使用'String.valueof(path)'。我只是編輯問題並添加我用來生成字符串的代碼。 – 2012-03-01 13:38:11
這不就是你看到路徑的方式,因爲它沒有實際的字符串值或'toString()'函數?它只是說「好吧,這是android.graphics.Path的一個對象,它目前在內存地址blahblahbalh」? – Nanne 2012-03-01 13:44:24