我有两个任意形状。现在我想计算两个形状之间的最小距离。这里是附加的图像。
首先,绘图部分已完成。这些形状是弧线的组合。现在,当我要计算这些形状之间的最小距离时,我遇到了问题。使用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的点集。
有没有一种优化的方法可以计算两个形状之间的距离?这些形状可以是任何地方和任何类型的形状。
我们可以通过计算线到线、线到弧或弧到弧之间的距离来优化计算两组点之间的最小距离。这样,我们可以以优化的方式计算出最小距离。