inline void ConvexPoly:: CalculateExtremum() { bound = AABox::FromVectors(&vertices[0], vertices.size()); halfPlanes.clear(); for (size_t i = 0; i < vertices.size(); i++) halfPlanes.push_back(HalfPlane(vertices[i], vertices[(i+1) % vertices.size()])); }
ConvexPoly:: ConvexPoly(const std::vector<Vector> &ps, const Color *color): Shape(color), vs(ps) { bound = AABox::from_vectors(&vs[0], vs.size()); for (size_t i = 0; i < vs.size(); i++) { half_planes.push_back(HalfPlane(vs[i], vs[(i+1) % vs.size()])); } }