21 Triangle::Triangle(float3 p1, float3 p2, float3 p3)
22 :p1(p1), p2(p2), p3(p3)
24 box = calculateBoundingBox();
27 Triangle::~Triangle(
void) {
36 float maxX = fmax(fmax(p1.x, p2.x), p3.x);
37 float maxY = fmax(fmax(p1.y, p2.y), p3.y);
38 float maxZ = fmax(fmax(p1.z, p2.z), p3.z);
40 float minX = fmin(fmin(p1.x, p2.x), p3.x);
41 float minY = fmin(fmin(p1.y, p2.y), p3.y);
42 float minZ = fmin(fmin(p1.z, p2.z), p3.z);
46 b.points[0] = make_vector(maxX, maxY, maxZ);
47 b.points[1] = make_vector(maxX, minY, maxZ);
48 b.points[2] = make_vector(minX, maxY, maxZ);
49 b.points[3] = make_vector(minX, minY, maxZ);
51 b.points[4] = make_vector(maxX, maxY, minZ);
52 b.points[5] = make_vector(maxX, minY, minZ);
53 b.points[6] = make_vector(minX, maxY, minZ);
54 b.points[7] = make_vector(minX, minY, minZ);