Att hitta avstånden mellan punkter i antingen 2D eller 3D är egentligen en enkel operation med " Point2d " och " Point3d " klasser som ingår i Java API " javax. vecmath " bibliotek . Du behöver inte ens att dra ut din gamla form eller läroböcker algebra , eftersom API gör allt matematik arbetet för dig
Du behöver : .
Java 1
. 3.
2 eller senare .
1 .
Skapa en " DistanceFinder " klass och placera det i en fil som heter " DistanceFinder. java . " Lägg till följande grundläggande klasstrukturen :
import javax . vecmath. Point2d ;
import javax. vecmath. Point3d ;
/**
* Ger metoder för att hitta avståndet mellan två punkter
* @ author Kevin Walker .
* /
public class DistanceFinder {
}
Om du använder en Java IDE som Netbeans för ert arbete , kan denna uppgift göras automatiskt åt dig genom att välja antingen " Ny fil "eller " Ny Klass " alternativet från " Arkiv " -menyn
2
Lägg till en metod för att hitta avståndet mellan två punkter i 2D utrymme: .
/**
* Hittar avståndet mellan två punkter i två -dimensionell rymd.
* @ param P1 den första punkten.
* @ param p2 den andra punkten.
* @ return Avståndet
* /
public static dubbla avståndet ( Point2d p1 , Point2d p2 ) {
återvända p1. distance ( P2 ) ,
}
Metoden börjar med en " Javadoc " kommentar som beskriver vad metoden ska göra , vilka parametrar den kommer att ta och vad den returnerar . Metoden i sig är då deklareras. Det är " offentlig ", vilket betyder att det är godtagbart för användning i program utanför denna klass . Det är " statisk ", vilket innebär att den kan användas utan att först skapa en " DistanceFinder " objekt . . Och det återgår avståndet med hjälp av "dubbla " primitiv typ
3
Lägg till en metod att beräkna avståndet mellan två punkter i 3D- rymden :
/**
* Hittar avståndet mellan två punkter i det tredimensionella rummet .
* @ param P1 den första punkten.
* @ param p2 den andra punkten.
* @ return Avståndet
* /
public static dubbla avståndet ( Point3d p1 , p2 Point3d ) {
återvända p1. distance ( P2 ) ,
}
4
. Lägg till en huvudsaklig metod för att skapa ett par punkter och testa programmet :
/**
* Ett enkelt test ansökan .
* /
public static void main ( String [ ] args ) {
Point2d P1, P2 ,
p1=new Point2d 5,0 ( , 3,5 ) ,
p2=new Point2d ( 12,7 , 8,9 ) ;
System. out. println ( avstånd P1 ( , p2 )) ;
Point3d P3, P4 ;
p3=new Point3d ( 1. 0,5. 6,3. 2 ) ,
P4=new Point3d ( 1. 8,8. 9,6. 2 ) ,
System. out. println ( avstånd ( P3 , P4 )) ;
}
detta enkla test Programmet skapar fyra punkter , två i vardera 2D-och 3D-rymden, och använder sedan de funktioner som att hitta avståndet mellan dem .
tips och varningar
Förväxla inte Point2d klass från javax. vecmath biblioteket med Point2D klass från java. awt. geom biblioteket .