- Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPoint.java
More file actions
Latest commit
67 lines (53 loc) · 1.37 KB
/
Copy pathPoint.java
File metadata and controls
67 lines (53 loc) · 1.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
publicclassPointimplementsPointInterface,Comparable<Point> {
float[] p=newfloat[3];
ArrayListForEdgese=newArrayListForEdges();
ArrayListForTrianglest=newArrayListForTriangles();
booleanvisited=false;
publicvoidaddEdge(Edgeedge){
e.add(edge);
}
publicvoidaddTriangle(Triangletriangle){
t.add(triangle);
}
publicArrayListForEdgesgetEdges(){
returne;
}
publicArrayListForTrianglesgetTriangles(){
returnt;
}
publicPoint(floatx, floaty, floatz){
p[0]=x;
p[1]=y;
p[2]=z;
}
publicbooleansame(float[] p1){
returnp[0]==p1[0]&&p[1]==p1[1]&&p[2]==p1[2];
}
publicbooleansame(floatp0,floatp1,floatp2){
returnp[0]==p0&&p[1]==p1&&p[2]==p2;
}
publicfloatgetX(){ returnp[0]; }
publicfloatgetY(){ returnp[1]; }
publicfloatgetZ(){ returnp[2]; }
publicfloat [] getXYZcoordinate(){ returnp; }
publicvoidadd(Pointaddp){
this.p[0]+=addp.p[0];
this.p[1]+=addp.p[1];
this.p[2]+=addp.p[2];
}
publicvoidavg (intn){
this.p[0]/=n;
this.p[1]/=n;
this.p[2]/=n;
}
@Override
publicintcompareTo (Pointxyz){
if (this.p[0]<xyz.p[0]) return -1;
if (this.p[0]>xyz.p[0]) return1;
if (this.p[1]<xyz.p[1]) return -1;
if (this.p[1]>xyz.p[1]) return1;
if (this.p[2]<xyz.p[2]) return -1;
if (this.p[2]==xyz.p[2]) return0;
return1;
}
}