Javaの2点間の直線と距離
この記事の目的は、2 次元平面に座標 x と y を持つ点を作成し、2 番目の点を作成して 2 つの間の距離を計算する方法を学ぶことです。 クラス Point>><<プログラムを適切に構成するために、 x と y (x1,x2,.. の複数のインスタンスの作成は避けなければなりませんxn-y1,y2,..yn) です。Java は、抽象化能力の高いオブジェクト指向言語です。
public class Point {
int x,y;
public Point(int x, int y){
this.x=x;
this.y=y;
}
public int getX() {
return x;
}
public void setX(int x) {
this.x = x;
}
public int getY() {
return y;
}
public void setY(int y) {
this.y = y;
}
}
2) クラスを作成します Line
少なくとも2つの点P1とP2で線が形成され、距離はピタゴラスの定理によって計算されます。
ピタゴラスの定理は、三角形が長方形の場合に適用され、式は次のように記述されます:c² = a² + b²。長さは c² の根であり、次の方法を使用して計算されます。Math.sqrt().
public class Right {
dot p1, p2;
public Right (ドット p1, ドット p2){
this.p1=p1;
this.p2=p2;
}
double length(){
return p1.distance(p2);
}
}
次に、現在のポイントと過去のポイントの間の距離をパラメーターとして返すことができる distance メソッドを Point クラスで宣言します:
double distance(Point p){
return Math.sqrt((((p.getX()-this.getX()) + (p.getY()-this.getY()));
}
Example
public class Main {
public static void main(String[] args) {
Point p1 = new Point(2, 3);
ポイント p2 = new Point(5, 8);
line Straight = new Straight (p1, p2);
System.out.println(Right.length());
ポイント p3 = new Point(7, 3);
System.out.println("point("+p1.getX()+", "+p1.getY()+
") と点("+p2.getX()+", "+p2.getY()+": "+p1.distance(p3));
}
}
Output:
参照:2.8284271247461903
point(2, 3) と point(5, 8) の間の距離: 2.23606797749979
Wikipedia: Right(mathematics)
Wikipedia: ピタゴラスの定理
Oracle ドキュメント: Math.sqrt