0
我在學校做一個項目,其中一個方法找到兩條線的交點。它用一行的mx + b值代替其他方程的y值,然後求解x。我試圖設置一個「扔」,如果兩條線平行,它會拋出一個非法的ArgumentException。下面是我試圖安裝方法(從Line類):如何檢查並測試兩條線(線性方程)是否通過拋出非法行爲非法argumentException
public Point(double x, double y) {
setLocation (x, y);
}
沒有人有任何建議,如何正確地做到這一點:
public Point findIntersect(Line otherLine) {
double slope2 = otherLine.getSlope();
double yIntercept2 = otherLine.getIntercept();
double newX = (intercept - yIntercept2)/(slope2 - slope);
double newY = slope * newX + intercept;
Point aPoint = new Point(newX, newY);
return aPoint;
}
和方法就是BEING從屬實?
不要拋出異常。這應該保留用於特殊情況。我認爲平行線不符合該標準。 – duffymo
這個_same_行應該是什麼回報?這裏的問題是有三種類型的交叉點;沒有相交(平行但是不同的線),單個點(非平行線)和整個線(線與它自己相交)。返回'Point'並不總是足夠。 – user2478398
我得拋出illegalArgumentException。賦值如下所示:•如果兩行平行,findIntersect()將拋出IllegalArgumentException。 – Gerald