blob: bcfce9dde44f298fdc3bfc481598367443a11b0f (
plain)
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
|
package de.gamezock.metacraft.data;
import javax.vecmath.Point3f;
import javax.vecmath.Vector3f;
public class Triangle {
private Point3f[] vertices;
private Vector3f[] normals;
public Triangle(Point3f v1, Point3f v2, Point3f v3) {
vertices = new Point3f[3];
vertices[0] = v1;
vertices[1] = v2;
vertices[2] = v3;
normals = new Vector3f[3];
Vector3f edge1 = new Vector3f(), edge2 = new Vector3f();
edge1.sub(v1, v2);
edge2.sub(v3, v2);
Vector3f normal = new Vector3f();
normal.cross(edge1, edge2);
normal.normalize();
normals[0] = new Vector3f(normal);
normals[1] = new Vector3f(normal);
normals[2] = new Vector3f(normal);
}
public Point3f getVertex(int i) {
return vertices[i];
}
public Vector3f getNormal(int i) {
return normals[i];
}
}
|