我有兩個任意形狀。現在我想計算兩個形狀之間的最小距離。在這裏,我附着圖像計算兩個任意形狀之間的最小距離
所有的先畫部分已完成。這些形狀是弧和線的組合。現在,當我要計算這些形狀之間的最小距離時,我正面臨着問題。使用GWT(java)html5畫布繪製這些形狀。
對於計算兩個形狀之間的最小距離我用下面的Java代碼,但我沒有得到任何優化的方式來做到這一點 -
private double calculateMinimumDistance(Coordinate[] coordinates_1, Coordinate[] coordinates_2) {
double minDistance = 100000;
double currentDistance = 0;
for(int i = 0; i < coordinates_1.length; ++i) {
for(int j = 0; j < coordinates_2.length; ++j) {
currentDistance = coordinates_1[i].distanceTo(coordinates_2[j]);
if(currentDistance < minDistance) {
minDistance = currentDistance;
}
}
}
return minDistance;
}
coordinates_1包含形狀-1的點的集合。
coordinates_2包含形狀2的點的集合。
是否有任何優化的方式來計算兩個形狀之間的距離?這種形狀可以是任何地方和任何類型的形狀。
代替計算兩個設定點 之間的最小距離,我們可以通過計算線之間的距離 線或線電弧或電弧電弧做它在最優化的方式。通過這種方式,我們可以通過優化的方式計算出最小距離 。
準備你的數學,然後用Java編寫 –
你必須首先做出一些假設,比如你的程序將在什麼基礎上計算距離,例如。他們的位置,最重要的是你如何在程序中表現這些形狀。 – itwasntme
關於如何開始的第一個想法:定義你的形狀。 Java代碼中的形狀如何表示?如果你不能告訴Java代碼你的形狀,你會如何期待它做任何事情? – Andreas